Tech Stack Decisions
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
Related
- Blockchain Decisions
- Decision Meetings
- Decision Laws
- Decision Journal
- SaaS Products
- Procurement Checklist
KPIs
- Speed of delivery
- Speed of iteration
- Utility, do more with less
- Flexibility, avoid lock-in
- Maintainability over time
Decision Log
Create a decision journal to ensure:
- people that join a project later can understand context to a decision
- you can review the decision against the same criteria if circumstances change
- you can improve your decision making process
- 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.
- JTBD Analysis
- Expected Outcomes
- Developer Experience
- Developer Activity
- Algorithms
- Architecture
- Ecosystem Culture
- Maintainability
- Understandability
- Consistency
- Composability
- Affordability
- Pricing Clarity
- Leadership/Influence
- Onboarding
- Hosting
- Deployment
- Quality Assurance
- Collaboration
- Fragmentation
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?
Cost Wages/Recruitment
- 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: