Why ‘just enough to succeed’ should be your only approach to tooling

A blue digital cloud containing lots of symbols on a dark blue background
(Image credit: Getty Images)

Most platform complexity is, at least to some extent, self-inflicted. Amidst the rush to standardize or innovate, many organizations can find themselves overtooling early and turning their platforms into insurance policies for problems that may never appear.

It’s a problem I see all the time, platforms trying to account for every possible future scenario before the dev team has clearly defined what success actually looks like.

Benjamin Brial

Founder of Cycloid.

There’s a common trope in our industry that devs are resistant to change, but this is a gross misrepresentation, as they are resistant to change when it is without purpose or in the face of over-promise.

Article continues below

They do not resist platforms because they dislike structure or automation, but they do resist them because each additional feature adds maintenance overhead and new failure modes.

Developers are the people you want to take with you to the car dealership. “No, I don’t need the Ferrari for the school run, thanks, just show me the boot space and the mileage.”

But Internal developer platforms are especially exposed to this overtooling problem because there is no universally agreed definition of what an IDP should be. Faced with that ambiguity, they can tend to include anything that might be useful, rather than focusing on what is essential.

The platform slowly turns into a collection of specialized workflows driven by theoretical edge cases, while the core experience that most developers rely on becomes more complicated and less predictable.

Just enough infrastructure to succeed

The platforms that succeed take a more disciplined approach, rooted in first agreeing on what success for developers and the organization looks like in practical terms. Once those goals are clear, the platform can focus on getting the orchestration, centralization, and a reliable core experience right from the very off.

Developer experience is often discussed in terms of interfaces and features, but in practice it is mostly about flow. Developers want to spend their time building and shipping software, not navigating a platform that feels like a product catalogue.

This is why platform phobia is usually a signal of a wider issue rather than outright resistance. It reflects a history of tools that were introduced with good intentions but ended up being harder to use, overly complicated versions of what came before.

A well-designed platform should feel less like a new tool and more like a reduction in tools, even if there is significant complexity under the hood.

Looking beyond the edge

Edge cases are where many platforms lose their way. They are real, and they do need to be handled, but they should not define the core experience. Designing the entire platform around the more unusual requirements means that the majority of developers pay the price every day for problems they may never encounter.

In practice, most teams spend most of their time working on fairly standard workflows. Optimizing for those workflows delivers far more value than building an all-encompassing system that tries to anticipate everything.

There is also a temptation to measure platform maturity by the number of features it offers. But a platform that does a core ten things reliably and predictably is usually far more valuable than one that claims to do fifty things inconsistently.

Success is not about having the most complete checklist, but about reducing friction where it actually exists.

The idea of “just enough to succeed” is not about lowering ambition or ignoring future needs, it’s actually the opposite. Developers should expect to have what they need to do their jobs, they don’t want to pay for more and they don’t want to be stuck with less.

Earn the right to innovate

Platforms should build a strong core that developers trust, and then earn the right to evolve. Then, when they add new capabilities they can be confident that there is clear, proven demand and a problem to solve, not just because they might be useful one day.

This approach keeps the platform adaptable without overwhelming the people it is meant to serve.

In the end, the goal of building something is not to build the most sophisticated thing possible.

Often across the tech industry we forget this, and we chase the shiniest features over improving what our customers actually need. Let’s stop connecting our toasters to our Wi-Fi, putting AI in our toothbrushes and burdening our software with edge case features.

As an industry, our goal is to make software delivery easier, faster, and more predictable for the teams using it. When success is clearly defined, simpler platforms consistently deliver more value than feature-heavy ones that promise everything but excel at nothing.

And in a world where developers already have plenty to think about, that kind of restraint is the key to growth.

We've featured the best laptop for programming.

This article was produced as part of TechRadarPro's Expert Insights channel where we feature the best and brightest minds in the technology industry today. The views expressed here are those of the author and are not necessarily those of TechRadarPro or Future plc. If you are interested in contributing find out more here: https://www.techradar.com/news/submit-your-story-to-techradar-pro

TOPICS

Founder of Cycloid.

You must confirm your public display name before commenting

Please logout and then login again, you will then be prompted to enter your display name.