Martin Stühmer

Who I Am

I’m Martin, CTO at Integrated Worlds GmbH in the Stuttgart region. I’ve been building .NET systems for nearly 20 years—since Framework 2.0 when SOAP was cutting-edge and ORMs were controversial.

Today I lead technology strategy for cloud-native solutions on Azure. Before this, I was Director Consulting Services at CGI, working with enterprise teams on architecture and transformation. I’m a Microsoft Certified Trainer and IHK-certified instructor, and I maintain several open-source NuGet packages.

What I Do

As CTO, I don’t just make decisions from a distance. I write code, review PRs, debug production issues, and mentor teams. Technology leadership means staying hands-on and feeling the consequences of your choices.

As a trainer and mentor, I focus on fundamentals that outlast framework hype. Static analyzers, testing strategies, performance patterns, maintainable architecture—the stuff that actually prevents production fires.

As an open-source maintainer, I publish packages that solve problems I’ve hit repeatedly in real systems. When strangers depend on your code, you write better tests and clearer docs.

What I’ve Learned

Almost two decades means I’ve made every mistake: over-engineered systems, bet on Silverlight and WCF (oops), built “flexible” architectures that were just complicated, shipped code I’m not proud of.

Here’s what stuck:

  • Quality isn’t optional – Analyzers catch bugs in milliseconds, tests prevent regressions, and both are faster than firefighting
  • Fundamentals outlast frameworks – Patterns and principles survive; specific tools don’t always
  • Context beats dogma – “Best practices” depend on your team, domain, and constraints
  • Evidence beats opinion – Measure, benchmark, validate before deciding
  • Pragmatism wins – Good-enough architecture that ships beats perfect architecture that doesn’t

What I Write About

I share perspectives from production systems and real teams. I’m skeptical of buzzword-driven development and allergic to cargo-cult practices. If a trend lacks substance or a pattern doesn’t hold up under pressure, I’ll say so.

This blog is for developers, solution architects and operators who maintain production systems and care about quality, not just shipping fast.

Published blogs

.NET Job Scheduling — Quartz.NET for Enterprise Scale

.NET Job Scheduling — Quartz.NET for Enterprise Scale

Quartz.NET provides advanced scheduling semantics, database-backed clustering, and flexible storage for systems demanding complex workflows. Understand when enterprise features justify operational complexity and how Quartz.NET scales across distributed deployments.
.NET Job Scheduling — Hangfire and Persistent Reliability

.NET Job Scheduling — Hangfire and Persistent Reliability

Hangfire combines persistent job storage, automatic retries, and real-time monitoring to simplify background processing. Learn when database-backed reliability matters and how Hangfire scales from single instances to distributed workers.
.NET Job Scheduling — The Landscape

.NET Job Scheduling — The Landscape

Explore the spectrum of .NET job scheduling from lightweight in-memory solutions to enterprise-grade distributed systems. Understand which approach fits your operational model and why background processing architecture matters.
NetEvolve.HealthChecks 5.0: 27+ Targeted Probes, Zero Boilerplate

NetEvolve.HealthChecks 5.0: 27+ Targeted Probes, Zero Boilerplate

NetEvolve.HealthChecks 5.0 is a decisive expansion—broader coverage scope, less boilerplate.

New domain‑specific packages extend monitoring across cloud services, messaging platforms, graph, time‑series, vector and AI backends. In parallel, the former inheritance‑driven shared base library (abstract classes + repetitive DI wiring) was replaced by purpose-built source generators—removing manual registration churn and consolidating intent. Release 5.0 also formalizes full support for .NET 10—aligning with current trimming and analyzer improvements.

.NET 10 Testing: Microsoft Finally Fixed the Test Runner (Mostly)

.NET 10 Testing: Microsoft Finally Fixed the Test Runner (Mostly)

.NET 10 replaces VSTest with Microsoft.Testing.Platform, bringing SDK-integrated testing with faster discovery, consistent behavior across environments, and explicit configuration contracts. But it requires .NET 10, breaks old test adapters, and demands CI pipeline discipline. Here’s what actually changes, who should migrate now, and who should wait.