
Technology loyalty is a liability when it outlives the problem it solved. A framework for picking tools per-project instead of per-preference.
Loyalty is a bias with good PR
Every engineer has a stack they reach for first. That's not a character flaw — familiarity is genuinely faster to start with, and there's real value in a team that knows its tools cold. The problem isn't having a default. The problem is when the default stops being questioned, and "what we know" quietly becomes "what's right for this," without anyone checking whether those are still the same thing.
We've watched teams commit to a framework because it was what the founding engineer used at their last job, discover eighteen months later that it can't do something the product now genuinely needs, and spend a quarter working around that gap instead of the week it would have taken to evaluate alternatives up front. The cost of stack loyalty rarely shows up on day one. It shows up as compounding friction, well after the decision is too expensive to easily reverse.
The questions that actually matter
Before we recommend a technology for a client project, we're answering a short list of questions, roughly in this order: what does the team maintaining this after us actually know; what does the product need to do in eighteen months, not just at launch; what's the cost of being wrong, and how reversible is this choice if we are; and does this tool have a real community and real longevity, or is it a bet on a project that might not exist in three years.
Notice that "what's the most modern option" and "what's the most powerful option" aren't on that list. They matter, but they're inputs to the decision, not the decision itself. The most technically impressive choice and the right choice for a given team, timeline, and budget are frequently different tools, and conflating them is how projects end up with infrastructure nobody on the team can actually operate.
Reversibility changes the calculus
Not every technology decision deserves the same amount of scrutiny, because not every decision costs the same to reverse. Choosing a CSS approach is cheap to revisit later. Choosing a database, a hosting model, or an authentication provider is not — those decisions tend to calcify into the foundation of everything built on top of them.
We spend real time on the decisions that are expensive to reverse and move fast on the ones that aren't, rather than applying the same evaluation ritual to every choice regardless of its actual weight. A team that debates its linter config with the same intensity as its data layer is optimizing for the feeling of rigor, not the outcome of it.
What staying technology-agnostic actually requires
It's easy to say "we choose the right tool for the job." It's harder to actually be able to, because that requires staying fluent in more than one ecosystem well enough to have an informed opinion about tradeoffs, not just familiarity with the syntax. That's a real cost — it means less time going deep on one stack, deliberately, in exchange for the ability to recommend the right one instead of the comfortable one.
We think that trade is worth making, because the alternative is quietly optimizing every project for the engineer's resume instead of the client's problem. It shows up in small ways: recommending a boring, proven database over an exciting new one because the workload doesn't need what the new one offers; recommending a framework migration only when the current one is actually the bottleneck, not because a newer version shipped. Confidence in a technology choice should come from evaluating the problem, not from muscle memory.
Engineering
Have a related problem you're working through?
Tell us what you're building — we're glad to talk through it even before there's a full engagement in scope.