Insights

Technology leadership, software development, and industry perspectives

.NET Aspire as a compile-time alternative to Docker Compose

.NET Aspire earns its keep on multi-service .NET projects with mixed dependencies and junior-heavy teams. It is a compile-time, type-safe alternative to Docker Compose, where the IDE owns service discovery and connection strings instead of copy-pasted YAML and appsettings.

The consumer spending risk that AI is quietly building

Most commentary on AI and financial markets focuses on the productivity upside. Corporate earnings, margin expansion, efficiency gains. That story is probably right in the short term. But it is only half the picture, and the second half does not look as clean.

How to plan for the senior architect leaving from day one

If you are the senior on a fixed engagement with a junior-heavy team, your real deliverable is a team that can reason about the architecture without you. Here is how I plan for that from day one, and what I would do differently next time.

Why AI will hit senior developers harder than junior ones

The consensus view is that AI will eliminate junior developer roles first, while senior developers remain indispensable. I think that analysis is backwards. Here is why the pressure lands hardest on the expensive end of the salary curve.

How agencies can offer CTO-as-a-service to their clients

Agencies leave CTO-level revenue on the table because partnering feels risky. A practical framework for offering CTO-as-a-service without threatening the client relationship, including the commercial terms and the "will you go direct" question answered honestly.

Why "no throwaway prototype" works with Claude Code

Most proofs of concept get thrown away because they never define a stable contract. Define the contract first, back it with a deliberately stupid mock, and the PoC becomes the MVP. AI-augmented discovery is what makes the contract-first step affordable.

Want to discuss a topic?

Get in touch with our team.