Skip to main content

Tech Stack Decisions

Good decisions follow good questions. The quality of your tech choices depends on the quality of questions you ask first.

Framing Questions

Before evaluating any technology, run through these prompts drawn from the question types:

Question TypeTech Stack Prompt
SystemsHow does this tool connect to our existing stack? What dependencies does it create?
AgencyWhat do we control with this choice? What do we give up?
FutureWhat becomes possible in 2 years that isn't possible today?
RealityWhat's the real problem we're solving—speed, scale, or skill gap?
PossibilitiesWhat options haven't we considered? Who else has solved this?
The Decision Loop

Every tech decision runs through Perceive → Question → Act. The checklist below is organized around this loop.


Software's job is to help people solve problems that create real world value.

Understand the job to be done to determine required functions and desired outcomes.

Happy customers pay the bills

Context

KPIs

  1. Speed of delivery
  2. Speed of iteration
  3. Utility, do more with less
  4. Flexibility, avoid lock-in
  5. Maintainability over time

Decision Log

Create a decision journal to ensure:

  1. people that join a project later can understand context to a decision
  2. you can review the decision against the same criteria if circumstances change
  3. you can improve your decision making process
  4. save time answering questions why a decision was made

Checklist

What outcomes matter most? Create a standard checklist to routinely re-affirm convictions and make evolutionary bets. Grouped by the Decision Loop:

Perceive (Current State)

Question (Gap Analysis)

  • Algorithms — What decision patterns apply?
  • Maintainability — Can we sustain this long-term?
  • Understandability — Will new team members grasp it?
  • Consistency — Does it match our standards?
  • Composability — Does it play well with other tools?
  • Fragmentation — Are we adding unnecessary complexity?

Act (Commitment)

  • Affordability — Can we afford it at scale?
  • Pricing Clarity — No surprises as we grow?
  • Leadership/Influence — Is the project well-maintained?
  • Onboarding — How fast can people ramp up?
  • Hosting & Deployment — How do we ship it?
  • Quality Assurance — How do we verify it works?
  • Collaboration — Does it enable team flow?

Routinely evaluate your toolset to enhance developer experience and enables ability to ship value as fast as possible.

Cost

  • Wages for expertise
  • Licence costs
  • Training costs
  • Data migration costs
  • Recurring costs
  • Lock-in costs?
  • How does the price ramp up
    • After a trial period?
    • As need for scale?

Recruitment and Wages

  • Cost of wages for cloud engineers vs Vercel and services?
  • What are the costs for level of expertise you need? How do those costs compare to industry standards?
  • Employee Onboarding

Priorities and Culture

Everyone in an organization has a stake in the tech stack.

  • Does your tech stack allow for scalability and innovation?
  • Do you choose tools that integrate well with the other systems you have in place?
  • Do you include internal teams in the evaluation process?

Context Shifting

Maintain a flow state by reducing context shifts to a minimum.

Fit for Purpose

Does it fit with the operating purpose and vision for the organisation.

  • how suitable right now?
  • how long into the future?

Utility

How flexible at providing solutions to many types of problem?

Beside the core purpose for evaluation, what other potential uses are there?

Developer Experience

  • Does it make being a good developer easier to achieve?

See Software Development Metrics

Time until Valuable Commit

  • How much effort team to upskill?
  • How quickly can new developers make a valuable commit?
  • Suitable for growing teams?
  • Can new hires read docs without hand-holding?
  • External training costs?

Talent Pool

  • Do you need to recruit new people?
  • What is the state of developer adoption state and trend?

Developer Machine Setup

Time and complexity to setup:

  • Business Operations machine
  • Developer Machine
  • Continuous Integration

See laptop setup

Deployment Complexity

  • How easy?
  • What skill level?
  • How many hours of life will be lost solving deployment issues?

Support Community

  • Vendor Support? What Channels? What Cost?
  • Repo Community and Activity
  • Stack Overflow
  • Related Github Projects
  • Tech Leader Endorsements

Security

  • What are risks?
  • How robust?
  • What proof?

Radar

Resources for checking the pulse of the latest tech trends:

Attachments

Navigate the decision stack:

LayerDocPurpose
RootQuestionsMaster the meta-capability of asking the right question
PatternDecisionsThe Decision Loop: Perceive → Question → Act
PatternDecision JournalDocument process, not just outcomes
DomainBlockchain DecisionsChain selection, consensus trade-offs
DomainSaaS ProductsBuild vs buy, integration choices