Product development team building commercial coffee maker

Building Modern Devices is More Difficult than Ever

By Peter Winston

Over Thanksgiving, I was talking with my nephew, who works in an ICU. I asked whether those long 12-hour shifts lead to more mistakes. He said something I didn’t expect: “Exhaustion matters, but the real danger is the handoff.”

That stuck with me, because modern product development feels the same. The hardest problems show up between people, where context shifts and assumptions drift. I’ve seen this across many industries. Once complexity rises, the issues all start to rhyme.

The Hard Truth About Building Products Today

Take something as ordinary as a coffee machine. A “simple” cup of coffee now requires a mini factory: heaters, pumps, sensors, UI, mobile app, cloud connections — sometimes video — all on top of a hardened OS. 

That’s modern IoT. Each part requires a different skill, and therefore a different person, coming in and out at different times.

If you want to understand why building products feels harder, this is it: more skills → more people → more handoffs → more risk.

And this is just a coffee machine.

In safety-critical markets like medical devices, aerospace software and software-defined vehicles, complexity multiplies.

Modern devices often depend on doing something that hasn’t been done before, so the team is faced with those classic “unknown unknowns.” I find most schedules aren’t blown because the work got out of control, but because early assumptions were too optimistic or too simplistic.

And then comes cybersecurity. With frameworks like the EU Cyber Resilience Act mandating secure-by-design practices and sustained security updates over a product’s supported life, companies must maintain much of the same expertise long after the device ships.

It’s Not Your Imagination 

Building products really has vastly increased in difficulty — more parts, more skills, more updates, more continuity. Adding to the challenge: these skills don’t come in even amounts. Some are front-loaded, some back-loaded, some only needed occasionally. That means people rotate in and out, creating even more handoffs.

So how do you solve this?

There’s no magic. Just, rinse and repeat. Do the same types of systems, with the same teams, the same way.

Teams recognize patterns. 

Patterns become process. 

Process turns into clear responsibility. 

That becomes reusable architecture, and over time, reusable code and tools. 

Every cycle gets easier, which creates room for the new. 

Build for Continuity, Not One-Off Wins

I can do it because I tackle 30+ projects a year. But even if you don’t handle as many projects, you can still ease development by widening your scope. If you plan one project, think about the next three. If you only focus on launch, think about the first two years of updates.

Next, think about your core competence. Own the parts where you create value. Find partners for the rest. (And don’t let the CM get away with “I got this.” They understand hardware, but likely not complex software.) Because in a world where everything is connected, complexity isn’t going away — but you can turn it into an advantage with the right approach.

If you're starting a new device or rethinking an existing one and want a sanity check on architecture, staffing or long-term updates, my team and I are always happy to talk. I encourage you to get in touch.