About me

Adam Ralph

I'm a software developer and consultant. I've been delivering commercial software since the mid-'90s, mostly in .NET and Python, and I help teams design systems that stay understandable as they grow.

Pascal apologised for writing a long letter because he didn't have time to write a short one. Software has the same problem: teams write more code because constraints leave no room to write less. I'm a software simplifier. That usually means fewer moving parts, clearer boundaries, and delivery that stays straightforward.

Since January 2025, I've worked as a Principal Product Software Engineer at Duende Software, the makers of IdentityServer. Before that, I spent nearly a decade at Particular Software, the makers of NServiceBus. Before Particular, I spent almost two decades building software in financial services at UBS and Credit Suisse. I'm a recognised speaker at developer conferences around the world.

I've also consulted and trained through adam ralph GmbH since 2015. Recent work includes an LLM-based investment research tool for RTP Global, using Python, OpenAI, PostgreSQL, RabbitMQ, and AWS.

Based in
Flims, Switzerland
Remote
Since 2015, and for most of my career
Focus
System design, .NET, Python, and authentication
Languages
English (native), German (working)
Recognition
Microsoft MVP
Community
First community pull request into .NET Core, in 2014

What I do

System design and architecture
Finding service boundaries and keeping systems easy to change.
Development
C#/.NET and Python, including libraries, analyzers, and tooling for other developers.
User authentication
Sign-in and user management, on .NET and other platforms.
Build and delivery
CI/CD, build pipelines, and versioning, with an emphasis on keeping things simple.
Training and speaking
Conference talks and workshops, including a two-day Modern SOA workshop.

I've worked with DDD, CQRS, event sourcing, messaging, and microservices, and I've seen what helps and what adds complexity.

For consulting, training, or workshop enquiries, get in touch on LinkedIn.

Open source

My current open source projects are Bullseye, SimpleExec, and MinVer.

Speaking

I speak at conferences, usually about distributed systems, service boundaries, and keeping build pipelines simple. Recent talks and workshops include:

Finding your service boundaries
A practical guide to drawing boundaries in complex business domains.
Less is more
A build pipeline for the modern age.
Modern SOA
A two-day workshop on service-oriented architecture.

Talks and workshops are listed on my Sessionize profile.

Writing

I write here about .NET, distributed systems, and open source. Browse the archive, or subscribe to the feed.

Away from the keyboard

My family ancestry is mostly Polish, with roots across Europe. As a born-and-raised Englishman, I naturally drink a lot of tea. (Milk, no sugar, thanks.)

I studied mathematics at the University of Bristol. I also represented Great Britain and England at volleyball.

Since moving to Switzerland in the early '00s, I snowboard a lot, usually on my home mountain. More recently, I've spent at least as much time on a bicycle as on a board, taking part in official races and tours around the world. Occasionally I try surfing, and I've failed spectacularly in all corners of the globe, from the rivers of Switzerland to the beaches of England, France, Spain, Portugal, and Morocco, to the distant swells of Brazil, Australia, South Africa, Indonesia, and Costa Rica.

Recommendations

Adam is one of the greatest system architects I have worked with. His understanding of the systems and future proofing skills are simply matchless!

Technically he is among the best I have encountered - the functionality and code he delivered were consistently bug-free. Adam's business acumen is second to none. He has an innate ability to understand the true business nature of a problem and his technological solutions are all the better for it.

A first class software engineer, with vivid judgement skills and an outstanding ability to deliver.

- Gary Woods, Project Consultant, UBS Investment Bank

His span of skills stretches from strategic and tactical architecture right through to code-cutting as well as reliable delivery. I would recommend him unreservedly.

Adam combines an intricate knowledge of programming with an incredible eye for problem solving, often seeing past the obvious and providing robust and long term solutions. He has a pro-active approach to work and is often seen helping others to develop their skills. He builds excellent relationships and remains professional at all times. I am hoping to get the chance to work closer to Adam in the future.

Adam supported the US product controller's area as a programmer while located in Zurich. Despite the time zone difference, he managed to deliver quality code with minimal bugs and within the project timelines. His great communication skills and positive attitude were greatly appreciated by the team.

- Didem Ulserim, Business Unit Control US Region Lead, UBS Investment Bank

Adam is a first class business focused programmer. He clearly understands the business side of the industry and is able to translate its needs into quality solutions. He builds strong working relationships with the business to maintain brilliance. I would highly recommend him.

Aside from Adam's development skills, his interpersonal & communication skills ensured the various projects we worked on were delivered on-time, especially important, as I was working in the London office while Adam was working the majority of the time in Switzerland.