Tech Lead Handbook
  • 👋Introduction
  • People
    • Space for Growth
    • One on Ones
    • Manage Conflicts
    • Deal with Passive Aggressive
    • Give Feedback
    • Performance Management
    • Manage Up
    • Talent Matrix
  • Engineering
    • Pair Programming
    • DCI Framework
    • Code Ownership
    • ADR
  • Leadership
    • Leadership Competencies
    • The Communication Pyramid
    • Anti Patterns
  • Prioritisation
    • Types of Decisions
    • Pros and Cons
    • Decision Matrix
  • Hiring
    • Hiring Process
    • Prepare a Hiring
    • Position Description
    • Shortlisting
    • Case Study
  • Product
    • Working with Product Managers
    • Assumptions Mapping
    • Decision Making
    • Practice vs Process
    • Nemawashi
    • OKRs
    • Consensus vs Consent
  • Project
    • The Triple Constraint
  • Strategy
    • Tech Strategy
  • Communication
    • Use Positive Language
  • Shortlist
  • ...
Powered by GitBook
On this page
  • Maturity Model
  • Technologies
  • Architecture
  • Data Service
  • Readings
  1. Strategy

Tech Strategy

How do you understand and execute a Tech Strategy

PreviousStrategyNextCommunication

Last updated 1 year ago

An overview of Architecture, Technologies and Technical practices. It should align with the company strategy and business cases. Like product strategy, it offers alignment, direction, guidance. It enables small and autonomous teams. It pushes decision making to the possible lowest level.

Strategies are also the bricks that narrow your many possible futures down enough that it’s possible to write a realistic vision. - Staff Engineer by Will Larson

Maturity Model

If you realize that you’ve rehashed the same discussion three or four times, it’s time to write a strategy. When the future’s too hazy to identify investments worth making, it’s time to write another vision. If neither of those sound like familiar problems – move on to other work for now and return later

Technologies

What technologies shall we use? AWS or GCP, Buildkite or TravisCI, NodeJs or .Net Core, GitHub or GitLab, React or Angular, Athena or BigQuery, Postgres or MySQL, OpenSearch or ElasticSearch, and more...and more...

You should probably follow the technologies that are commonly used in your organization.

Architecture

What common architecture patterns should we use? N-Tire, CQRS, Event sourcing, or a combination of all of them. How do these services communicate with each other? REST or RPC. Is there a centralised authentication platform? Is there a Platform as a Service? Are there any shared utils that will improve developer productivity?

Data Service

Data Platform as a Service: well-documented data ingestion, clear data ownership and governance, query schema, event catalogue, reporting and dashboarding.

Readings

https://refactoring.fm/p/how-to-design-a-good-tech-strategy
https://refactoring.fm/p/good-strategy-bad-strategy
https://boringtechnology.club
https://lethain.com/eng-strategies/
https://lethain.com/solving-the-engineering-strategy-crisis/
https://www.intercom.com/blog/run-less-software/
AWS Well-Architected Framework - AWS Well-Architected FrameworkAWS Well-Architected Framework
Logo
https://www.cnpatterns.org/how-to-use-cards