In a nutshell

As enthusiastic solution architect, engineer, open source developer, regular speaker and avid blog writer I bring a lot of experience with conviction and commitment to your project.

Quote

Evolvable and maintainable architecture is not created in an ivory tower. It is a result of continuous improvements of targeted pragmatism and cooperation in a team with a common vision.

 

About Me

With more than ten years of experience in designing and implementing distributed systems, libraries and frameworks in .NET I blend business acumen with technical depth in a way that is unique. My passion and enthusiasm for Software Engineering, Architecture, Customers as well as individuals I collaborate with makes me thrive and drive in challenging problems, from on-premises to the cloud. I’ve gained the trust of everyone I worked with, technical and non-technical alike, with my friendly, respectful and utterly professional demeanor, always seeking to understand, to improve, to learn and share knowledge with others.

Profiles

  • LinkedIn

  • Github

  • Twitter

 

Community

Founder and co-organizer of the .NET Usergroup Zentralschweiz for more than ten years.

Speeches and Activities

Below an excerpt of speeches I hold at national or international events.

Year 2020

  • Microsoft Most Valuable Professional for Azure
  • Mentor on the async expert course online at Asyncexpert.com
  • Async expert webinar about the evoluation of the RabbitMQ client
  • DYI Async Message Pump: Lessons from the trenches at .NET Summit

Year 2019

  • Microsoft Most Valuable Professional for Azure
  • Break the chain asynchronously at Techorama Belgium
  • Knock. Knock. Who’s there? A message from the future at Techorama Belgium
  • Async in .NET Core at Noser AG Engineering Day in Bern
    Video
  • Knock. Knock. Who’s there? A message from the future at Dotnetday Switzerland
  • DYI Async Message Pump: Lessons from the trenches at NDC Oslo
    Video
  • Knock. Knock. Who’s there? A message from the future at Develper Week Germany
  • Deep Dive with Azure Service Bus Messaging at Developer Week German
  • Distributed Systems Architecture Afternoon in Durban SA
  • Cliff diving into async in .NET Core and C# 8 at .NET Usergroup Zentralschweiz
  • Cliff diving into async in .NET Core and C# 8 at Dotnetos Warsaw
    Video
  • Cliff diving into async in .NET Core and C# 8 at at Build Stuff Appetizer Lithuania
  • DYI Async Message Pump: Lessons from the trenches at Build Stuff Lithuania
    Video
  • CfP Review as Trackchair for Developer Week Germany Messaging / Middleware Track
  • Featured in Top 20 Azure Serverless Blogs of 2019
    Site

Year 2018

  • Microsoft Most Valuable Professional for Azure
  • Microservices with ServiceFabric. Easy… or is it? at Global Azure Bootcamp in Zurich
  • Two Day Workshop SOA Done Right at MicroCPH in Copenhagen
  • Microservices with ServiceFabric. Easy… or is it? at Techorama Belgium
  • Async/Await and the Task Parallel Library: await headexplosion at Techorama Belgium
  • DYI Async Messagepump: Lessons from the trenches Developer at Week Germany
  • One Day Workshop SOA Done Right Assistance for Udi Dahan at Developer Week Germany
  • Two Day Workshop Mastering Microservices at Sela Developer Practice in Tel Aviv
  • One Day Workshop Async/Await and the Task Parallel Library at at .NET Developer Days in Warsaw
  • Do It Yourself. An Async Message Pump That Kicks Ass at .NET Developer Days in Warsaw
  • Break the chain asynchronously at .NET Developer Days in Warsaw
  • Two Day Workshop SOA Done Right at .NET Usergroup Bern

Year 2017

  • Microsoft Most Valuable Professional for Azure (Integration)
  • Featured on the MVP site under “What it takes to be an MVP”
    Site
  • Rearchitect your code towards async / await at .NET Usergroup Geneva
  • Rearchitect your code towards async / await at .NET Cologne
  • Talk about Remote Working at .NET Day Franken
  • Workshop about Rearchitect your code towards async / await at .NET Day Franken
  • Talk about Remote Working at .NET Day Franken

Year 2016

  • Microsoft Most Valuable Professional for Azure (Integration)
  • Two day workshop about Async / Await and Chain of Responsibility at Spartakiade Berlin
  • Rearchitect your Code towards Async / Await at NDC Oslo
    Vimeo
  • Break the Chain asynchronously at NDC Oslo
    Vimeo
  • Dish washing and the chain of responsibility
    Blogpost
  • Three part webinar series abou Async / Await Best practices
    Webinar
  • Functional and asynchronous pipelines with C# at .NET Cologne Germany
  • Async / Await The die is cast! at .NET Cologne Germany
  • Representation of Particular Software Ltd and NServiceBus at NDC Oslo booth
  • Legacy Code and now what at Developer Week Germany
  • DevSession about Functional and asynchronous pipelines with C# at Developer Week Germany
  • Async / Await the die is cast at Developer Week Germany
  • Rearchitect towards async / await at KGD .NET in Krakow Poland
  • A promise is only as good as the code that makes it
    Blogpost
  • One day workshop about Async / Await and Message pump at .NET Usergroup Bern on the Gurten Mountain
  • Rearchitect your code towards async / await at Flashcon in Zurich
  • Async / Await it is time
    Blogpost

Year 2015

  • Microsoft Most Valuable Professional for Integration
    Microsoft Most Valuable Professionals, or MVPs are exceptional community leaders who actively share their high-quality, real-world deep technical expertise with the community and with Microsoft. They are committed to helping others get the most out of their experience with Microsoft products and technologies.
  • Catch the Service Bus without being knocked over! Zurich Developers
    Talk at the Zurich Developers Group about the fundamental principles of Messaging, Service Buses, Brokers and Autonomous Components
  • Whole day workshops about Legacy Code at Spartakiade Berlin
    The attendees of this workshop learned how to detect, find their way through, build features into and improve their legacy code.
  • Legacy Code. Now What? Frankfurt Architecture Group Meetup
    Are you stuck in legacy swamp? I’ll show you a step by step process to get rid of the Legacy Code in your system while keeping the system operating. Imagine looking forward to working in more legacy code projects. You’ll learn methods, techniques and tools that enable you to detect Legacy Code, decipher it, add new features and finally improve your code in the long term. Small steps. No Big Bang. Join me on a journey out of legacy swamp.
  • Catch the Service Bus without being knocked over! Geneva .NET Usergroup
    Talk at the Geneva .NET Usergroup about the fundamental principles of Messaging, Service Buses, Brokers and Autonomous Components
  • The Secret of transactions and async/await. Anzcoders virtual conference
    Did you ever ask yourself, when using async/await together with Entity Framework and transactions to load data from your database, what kind of black magic Entity Framework is pulling off behind the scenes? Or do you need to write custom code which participates asynchronously within a transaction? Together we explore the inner workings of transactions. We learn how to leverage transactions with asynchronous code and get to know why there is no way around async void when working with transactions. After this session there will be no more black magic.
  • Scaling with Asynchronous Messaging with Elton Stoneman
    Cohosted a webinar about asynchronous messaging together with Elton Stoneman and Mauro Servienti.
  • Asynchronous Messaging with NServiceBus
    A webinar about asynchronous messaging with NServiceBus as a follow-up to Scaling with Asynchronous Messaging together with Mauro Servienti.
  • Legacy Code. Now what? .NET Usergroup Bern.
  • Legacy Code. Now what? .NET Day Franken.
  • Legacy Code. Now what? Softwerkskammer Magdeburg
  • Particular Software Booth at NDC Oslo
    Presenting and discussing challenges in distributed systems with current and prospective customers at the Particular Software Booth at NDC Oslo.
  • Functional and asynchronous pipelines with C# Hamburg Germany
    Usergroup session about async/await and the best practices. From there on we dived into async in combination with the Task Parallel Library. After that deep learning experience we started exploring the russian doll pattern and combined it with async/await.
  • Founded brown-bag.net a virtual brown-bag conference
  • Workshop about asynchronous pipelines with C# at Devopenspace in Leipzig
  • Workshop about saga integration patterns with NServiceBus at NSBCon in Dallas
  • NServiceBus V6 API Upgrade talk and the reasoning behind the async changes at NSBCon in Dallas
  • Functional and asynchronous pipelines with C# Lucerne Switzerland

Year 2014

  • Microsoft Most Valuable Professional for Integration
    Microsoft Most Valuable Professionals, or MVPs are exceptional community leaders who actively share their high-quality, real-world deep technical expertise with the community and with Microsoft. They are committed to helping others get the most out of their experience with Microsoft products and technologies.
  • NServiceBus Community Champ
    NServiceBus Champs is our way of saying thank you to exceptional, independent community leaders who share their passion, technical expertise, and real-world knowledge of NServiceBus with others.
  • Basta Conference in Darmstadt – Transport, Transport… ActiveMQ, MSMQ and RabbitMQ with NServiceBus
    Building distributed systems with NServiceBus which only use MSMQ was yesterday. Today we have more possibilities to choose the right transport technology. But how do I decide which transport layer fulfills my functional and non-functional requirements?
  • Whole day workshop about Composite UI for Service Oriented Architecture at Spartakiade Berlin
    After this workshop you’ll be able to argument why it is important to decompose large systems and how the decomposition can be achieved. Furthermore, this workshop will provide you with the necessary practices to reassemble the system together into a whole user experience by applying service composition techniques.
  • Dresden, Leipzig, Berlin, Braunschweig .NET Community – Composite UI for Service Oriented Systems
    After this presentation you’ll be able to argument why it is important to decompose large systems and how the decomposition can be achieved. Furthermore, this workshop will provide you with the necessary practices to reassemble the system together into a whole user experience by applying service composition techniques.
  • bbv Software Engineering Event – Step by step to a successful team
    What it takes to become a successful team based on real world experience
  • Introduction into Project Orleans
    A quick introduction into the Microsoft MSR Project Orleans and actor frameworks in general.
  • Chop Onions Instead of Layers in Software Architecture
    Article for the Method & Tools Magazine about Onion Architecture

Year 2013

  • .NET Usergroup Karlsruhe Germany – Introduction to NServiceBus
    Introduction to NServiceBus and especially how to apply proper Service Oriented Architecture together with NServiceBus.
  • NServiceBus Community Champ
    NServiceBus Champs is our way of saying thank you to exceptional, independent community leaders who share their passion, technical expertise, and real-world knowledge of NServiceBus with others.
  • bbv System Event in Berne and Lucerne – Legacy Code and now what?
    Legacy Code and now what? How can we still put new features into a legacy code base without breaking existing ones.
  • .NET Usergroup Berne – REST Fundamentals (short)
    Quick introduction into the principles for REST.
  • .NET Usergroup Frankfurt Germany – Distributed Version Control with Team Foundation Server 2012
    Introduction to distributed version control systems and how to bridge them together with TFS 2012.

Year 2012

  •  .NET Stammtisch Konstanz-Kreuzlingen – Appccelerate your Application Development
    Introduction into Appccelerate and how it speeds up your application development.
  • Microsoft Techday in Basel – Distributed Version Control with Team Foundation Server 2012
    Introduction to distributed version control systems and how to bridge them together with TFS 2012.
  • Dresden, Leipzig and Berlin Germany .NET Usergroups – Introduction to NServiceBus
    Introduction to NServiceBus and especially how to apply proper Service Oriented Architecture together with NServiceBus.
  • .NET Usergroup Central Switzerland and Bern – Introduction to NServiceBus
    Introduction to NServiceBus and especially how to apply proper Service Oriented Architecture together with NServiceBus.
  • bbv Software Services TechDay 2012 – Presentation about REST Fundamentals
    Creating and maintaining RESTful APIs can be a real challenge without a basic understanding of the principles behind REST. Together we dive into the basic definition of REST, cover the Richardson maturity model and apply the REST theory to a simple real live example.
  • bbv Software Services TechDay 2012 – Workshop about Fundamental building blocks for Distributed Systems with SOA together with Remo Gloor
    Dive into the distributed systems theory and learn the common pitfalls in distributed systems and how to avoid them. Learn more about asynchronous messaging patterns, what an architectural style is and how it can be applied to distributed systems. The fundamental building blocks shown in this workshop will help you develop systems which are more closely aligned with business.
  • .NET Usergroup Central Switzerland – How to select open source frameworks
    Quick presentation about how to select a good open source software for your project.

Year 2011

  • bbv Software Services TechDay 2011 – Application Bootstrapping on steroids: bbv.Common.Bootstrapper
    Workshop about the Appccelerate Bootstrapper formerly known under bbv.Common.Bootstrapper.

Year 2010

  • Advanced TDD
    We all have seen a lot of Test Driven Development examples which never reflect the reality we see in our projects. If we try to apply TDD in our projects we often face some really hard problems. The frustration grows and the acceptance for TDD diminishes. But TDD can give you a lot of benefit even in complex projects with some practice and a change in mind!

Contributions

Here you can find a list of open source projects I contributed to or where I am/was a core committer:

Certifications and Courses

Below a list of certifications I own and courses I attended. The top most entries are the most recent ones. Some of the certificates my out date after some time.

Certifications

  • Certified Professional for Software Architecture – Foundation Level (CPSA-F) 10/2013
  • Microsoft Certified Professional Developer
  • Various Microsoft Certificates about different technologies such as Windows Communication Foundation and more
  • Certified Scrum Professional
  • Certified Scrum Master

Courses

  • Ultimate Courses: Basic typescript
  • Think101x: Science of everyday thinking
  • Architecture in agile projects 4/2014
  • Visual Facilitating (bbv Academy) 1/2014
  • Present like a professional (bbv Academy) 1/2014
  • Greg Young’s Advanced CQRS & DDD Workshop 12/2013
  • Architecture Reviews based on ATAM (bbv Academy) 12/2012
  • Test Driven Development Advanced (bbv Academy) 10/2013
  • RavenDB Workshop with Ayende Rahien (bbv Academy) 10/2012
  • Agile Requirements Engineering with Scrum (bbv Academy)  7/2012
  • Udi Dahan’s Advanced Distributed Systems Design with SOA (Skillsmatter) 4/2012
  • Certified Scrum Professional (Scrum Alliance) 2/2012
  • Certified Scrum Master (Scrum Alliance)