Cto Pulse Videos
  • All Technology
  • AI
  • Autonomy
  • B2B Growth
  • Big Data
  • BioTech
  • ClimateTech
  • Consumer Tech
  • Crypto
  • Cybersecurity
  • DevOps
  • Digital Marketing
  • Ecommerce
  • EdTech
  • Enterprise
  • FinTech
  • GovTech
  • Hardware
  • HealthTech
  • HRTech
  • LegalTech
  • Nanotech
  • PropTech
  • Quantum
  • Robotics
  • SaaS
  • SpaceTech
AllNewsDealsSocialBlogsVideosPodcastsDigests
NewsDealsSocialBlogsVideosPodcasts
HomeCto PulseVideosVariability, The Second Hardest Problem ... - Andrew Harmel Law - DDD Europe 2025
CTO PulseEnterprise

Variability, The Second Hardest Problem ... - Andrew Harmel Law - DDD Europe 2025

•February 9, 2026
0
Domain-Driven Design Europe
Domain-Driven Design Europe•Feb 9, 2026

Why It Matters

Mastering variability reduces risk and unlocks flexibility, directly improving delivery speed and business value. It forces organizations to align technology, process, and people for sustainable growth.

Key Takeaways

  • •Variability drives both risk and flexibility in systems
  • •Embrace variability rather than suppress it
  • •Counterintuitive practices can stabilize delivery pipelines
  • •People remain the biggest architectural constraint
  • •Holistic view links tooling, process, and culture

Pulse Analysis

Variability is a double‑edged sword in modern software systems. On one hand, it introduces uncertainty that can derail timelines, inflate costs, and erode stakeholder confidence. On the other, it grants the very adaptability that lets businesses pivot, personalize experiences, and scale globally. In the context of Domain‑Driven Design, recognizing where variability originates—be it in domain models, deployment environments, or user requirements—allows architects to map bounded contexts more accurately and to design interfaces that tolerate change without cascading failures. This perspective shifts variability from a threat to a strategic asset.

Andrew Harmel‑Law’s approach is deliberately counter‑intuitive: rather than imposing rigid standards to eliminate variability, he advocates for selective exposure and controlled experimentation. Techniques such as feature toggles, contract‑first APIs, and automated decision‑recording become tools for harnessing change rather than suppressing it. Crucially, he ties these technical levers to cultural practices—continuous learning, psychological safety, and cross‑functional collaboration—highlighting that the hardest architectural problem remains people. When teams internalize variability as a shared responsibility, they can iterate faster, reduce technical debt, and maintain higher system reliability.

For enterprises, the takeaway is actionable. Start by inventorying sources of variability across the value stream and classify them by business impact. Introduce lightweight governance—like decision‑making frameworks and observability dashboards—to keep variability visible and manageable. Invest in tooling that automates variance handling, such as CI/CD pipelines with dynamic configuration. Finally, nurture a culture where engineers, product owners, and operations view variability as an opportunity for innovation rather than a defect. By doing so, organizations can turn the second hardest problem into a competitive advantage, delivering software that adapts as quickly as the market demands.

Original Description

Domain-Driven Design Europe 2025 - Organised by Aardling (https://aardling.eu/)
https://dddeurope.com
https://newsletter.dddeurope.com/
https://be.linkedin.com/company/domain-driven-design-europe
https://bsky.app/profile/dddeu.bsky.social
https://mastodon.social/@dddeu@m.aardling.social
Variability is everywhere in both software and systems architecture. It causes unpredictability; the bane of our lives. But variability is also the source of softwares’s power, because we can make software do anything.
So what can we do? We need to understand, and work with variability.
This talk will start by examining how variability manifests in the delivery of our software systems, and the pain it causes us. It will also consider how it also offers access to the greatest possibilities software offers.
I’ll then consider how to live and work with rather than against variability. Lots of these measures will sound counterintuitive at first, but they will provide you with a holistic view of software and a means to enjoy working with it. Who doesn’t want that?
(Oh, and what’s the hardest problem in Systems Architecture? People. The hardest thing is always the people.)
About Andrew Harmel-Law:
Technical Principal, ThoughtWorks
A highly enthusiastic, self-starting and responsible Tech Principal; Andrew specialises in Java / JVM technologies, agile delivery, build tools and automation, and domain driven design.
Andrew is also an author and trainer for O’Reilly. They've written one book about facilitating software architecture and one chapter about implementing the Accelerate/DORA four key metrics. They also run regular online training sessions in Domain-Drive Design (First Steps) and Architecture Decision Making by Example.
Andrew is experienced across the software development lifecycle and in many sectors including government, banking, and eCommerce. What motivates them is the production of large-scale software solutions, fulfilling complex client requirements. They understand that people, tooling, architecture and process all have key roles to play in achieving this.
Andrew has a passion for open source software and its communities. They have been interested in and involved with OSS to a greater or lesser extent since their career began; as a user, contributor, expert group member, or paid advocate.
Finally, Andrew enjoys sharing their experience as much as possible. This sharing is not only seen in their formal consulting engagements, but also informally through mentoring, blog posts, conferences (speaking and organising), and open sourcing their code.
0

Comments

Want to join the conversation?

Loading comments...