engineering-strategy-development
Installation
SKILL.md
Engineering Strategy Development
A good engineering strategy is often "boring." Its primary purpose is to constrain the team's options to ensure limited engineering capacity is spent on problems that actually matter to the business and customers. By standardizing the "Standard Kit" (your core tools), you free the team to innovate on features rather than infrastructure.
The Strategy Framework
Apply Richard Rumelt’s three-part structure to any technical challenge:
- Diagnosis: An honest, data-driven assessment of the current status quo.
- Guiding Policies: A set of rules or constraints to address the diagnosis (e.g., "We only use our existing standard kit").
- Coherent Actions: Specific, non-negotiable steps to implement the policies (e.g., "Deprecate all non-standard databases by Q3").
Step-by-Step Process
1. Conduct a "Stocks and Flows" Diagnosis
Before writing, model the reality of your current system using systems thinking:
- Identify Stocks: What is accumulating? (e.g., technical debt, number of languages, open incidents, hiring pipeline candidates).
- Identify Flows: What is the rate of change? (e.g., how fast are we shipping features vs. creating bugs?).
- Locate the Friction: Find where reality and your mental model conflict. If engineers feel "slow" but the DORA metrics (lead time, deployment frequency) look good, the friction may be in the quality or relevance of the work, not the velocity.