## Introduction Why do some technical teams ship great work while others stall in indecision, drama, and rewrites? The difference is rarely talent. It's leadership. Technical leadership is the practice of using deep technical judgment plus people skills to set direction, make hard calls, and help a team do its best work. A technical leader is not always a manager. The role can be a tech lead, staff engineer, principal, architect, CTO, or a founder who happens to write code. What unites them is influence rooted in credibility, not authority handed down from an org chart. I have spent most of my career on teams where the technical leader either lifted everyone up or smothered them. The same problems repeat: unclear vision, weak communication, poor decisions, mistrust between the team and the rest of the business. Every one of those problems traces back to a leadership skill that was missing or misapplied. **What this is (and isn't):** This article explains the principles and trade-offs of technical leadership, focused on *why* the role works and how the core skills connect. It is not a management how-to, a career-promotion guide, or a checklist of traits. I aim for the mental model, not a script. **Why technical leadership fundamentals matter:** * **Credibility compounds.** When I lead with strong technical judgment, the team trusts my calls and stops second-guessing every decision. * **Decisions get cheaper.** Clear vision and good decision-making cut the cost of changing direction, because the team understands the why, not just the what. * **People grow faster.** Teams led well learn faster, take on harder problems, and lose fewer good engineers to burnout or boredom. * **Business value lands.** Strong technical leaders translate engineering effort into outcomes the rest of the business can see and fund. Technical leadership is a craft. It rewards practice, feedback, and honest self-assessment more than charisma. This article outlines a workflow for growing as a technical leader: 1. **Build credibility** through deep technical judgment and visible work. 2. **Set direction** with a clear vision and strategy tied to business outcomes. 3. **Communicate constantly** with engineers, peers, and executives in their language. 4. **Empower the team** by delegating real ownership and removing obstacles. > Type: **Explanation** (understanding-oriented). > Primary audience: **beginner to intermediate** engineers stepping into tech lead, staff, or first-line management roles. ### Prerequisites & Audience **Prerequisites:** I should have a few years of hands-on engineering experience and have worked on at least one project where coordination across people mattered more than any single line of code. No prior leadership title is required. **Primary audience:** Engineers moving into tech lead or staff-level roles, new engineering managers, and senior engineers who already lead informally and want a stronger frame for it. **Jump to:** [Technical Expertise](#section-1-technical-expertise--the-foundation-of-credibility) • [Vision and Strategy](#section-2-vision-and-strategy--setting-direction-people-can-follow) • [Communication](#section-3-communication--translating-across-audiences) • [Empowering Teams](#section-4-empowering-teams--leading-without-micromanaging) • [Decision-Making](#section-5-decision-making--judgment-under-uncertainty) • [Common Mistakes](#section-6-common-technical-leadership-mistakes--what-to-avoid) • [Common Misconceptions](#section-7-common-misconceptions) • [When NOT to Lead](#section-8-when-not-to-step-into-technical-leadership) • [Laws, Bias, and Fallacies](#laws-bias-and-fallacies) • [Future Trends](#future-trends--evolving-practices) • [Limitations & Specialists](#limitations--when-to-involve-specialists) • [Glossary](#glossary) If I'm new, I start with technical expertise and communication. If I already lead a team, I focus on decision-making and the laws and biases section. **Escape routes:** If I only have time for one section, I read the decision-making section. If I'm preparing for a tech lead interview, I read the vision and communication sections. ### TL;DR – Technical Leadership in One Pass If I only remember one workflow, I make it this: * **Earn credibility** by staying close enough to the code to make sound technical calls. * **Set a clear vision** so the team knows what good looks like and why it matters. * **Communicate in the language of each audience** so engineers, product, and executives all hear the same story. * **Empower people** by handing off real ownership and protecting their focus. * **Decide deliberately** with data, risk, and reversibility in mind, and own the outcome. **The Technical Leadership Workflow:** The workflow shows how credibility supports vision, vision drives communication, communication enables empowerment, and empowerment frees the leader to focus on harder decisions. ```mermaid graph TB A[Build Credibility] --> B[Set Vision and Strategy] B --> C[Communicate Across Audiences] C --> D[Empower the Team] D --> E[Make Better Decisions] E --> A style A fill:#e1f5fe style B fill:#f3e5f5 style C fill:#e8f5e8 style D fill:#fff3e0 style E fill:#fce4ec ``` ### Learning Outcomes By the end of this article, I will be able to: * Explain **why** technical credibility is the basis for leadership influence and how to maintain it without becoming a bottleneck. * Describe **why** a clear technical vision matters and how it differs from a roadmap or a project plan. * Explain **why** different audiences need different framings of the same technical decision. * Describe how delegation builds capability and where it commonly fails. * Explain how to make and communicate decisions under uncertainty without paralysis. * Recognize the laws, biases, and fallacies that distort technical leadership thinking, and what to do about them. ## Section 1: Technical Expertise – The Foundation of Credibility Technical leadership starts with technical judgment. Not the deepest expertise on every topic, but enough current, hands-on knowledge that I can ask the right questions, smell weak designs, and make defensible calls when the team is split. Think of credibility as a bank account. Every sharp question, every working prototype, every accurate prediction adds to the balance. Every hand-wavy opinion, every meeting where I am visibly out of my depth, every decision that ages badly takes from it. When the balance is high, the team gives me the benefit of the doubt. When it is low, every suggestion I make turns into a debate. ### Staying Close to the Work I don't need to write production code on every team I lead, but I do need to read it. Reading code, sitting in design reviews, pairing on tricky problems, and shipping at least small things keeps my mental model accurate. Without that, I drift into giving advice based on what was true two years ago. **Three habits that protect credibility:** * **Read review-only PRs.** I follow at least a handful of changes a week from the team to see how the system is evolving. * **Ship something monthly.** Even a small fix, a test harness, or a doc keeps me practiced and reminds the team I'm in the trenches with them. * **Sit in incident reviews.** Outages reveal the real architecture, the real assumptions, and the real culture. There is no faster way to stay current. ### Why Credibility Matters More Than Authority In engineering, authority without credibility creates compliance, not commitment. A team that disagrees with my technical calls but says nothing will execute them slowly, build the bare minimum, and stop bringing me their best ideas. Over time the team becomes worse than the sum of its parts. Credibility, on the other hand, lets me lead through influence. I can ask hard questions without anyone wondering if I am qualified to ask them. I can change direction and get a real conversation about whether it's the right move, instead of weary nods. ### When Expertise Becomes a Trap Strong technical expertise is a double-edged tool. The same skill that earns trust can pull me into solo problem-solving while the team stalls. Many tech leads regress into the role of best engineer on the team, fixing every hard bug themselves, while their team slowly loses the ability to handle hard bugs at all. The fix is to use expertise to *raise the team's ceiling*, not to *raise my own output*. I write the design doc the team will copy. I pair with someone on the hardest part of the problem instead of taking it. I write the runbook so the next outage doesn't need me. ### Quick Check: Technical Credibility Before moving on, I test my understanding: * Why does technical credibility matter more than positional authority for a tech lead? * What habits keep a leader's technical judgment current without making them a bottleneck? * What does it look like when a leader's expertise becomes a trap for the team? **Answer guidance:** **Ideal result:** I can describe credibility as the basis for influence, name habits like reading PRs and sitting in incident reviews, and explain that solo heroics by the leader weaken the team over time. If any answer is fuzzy, I revisit "Staying Close to the Work" and "When Expertise Becomes a Trap". ## Section 2: Vision and Strategy – Setting Direction People Can Follow A clear technical vision tells the team what good looks like, what we are *not* building, and why this matters now. Without it, every decision becomes a debate from first principles, and the team spends more energy aligning than building. A vision is not a roadmap. A roadmap lists *what* we will build and *when*. A vision describes the *target architecture*, the *qualities* we care about (reliability, latency, simplicity), and the *trade-offs* we are willing to make. The roadmap changes every quarter. The vision should hold up for a year or more. ### Anchoring Vision in Business Outcomes The business pays for engineering. Any technical vision I can't trace to a business outcome is a hobby project waiting to be cancelled. I write the vision so that any engineer can read it and explain how their next ticket helps the company, even if the connection runs through three levels of indirection. **A vision worth having usually answers:** * What problem are we solving for our users or operators, and how will we know it's solved? * What does the system look like in eighteen months if we are successful? * What capabilities or constraints must we build into the foundation now to get there? * What are we explicitly choosing not to do, and why? ### Communicating the Vision A vision that lives only in my head is not a vision; it is a secret. I write it down, I repeat it in standups, design reviews, and onboarding. I make it a slide in the all-hands. New engineers should hear the same story I tell executives, in simpler form. Repetition feels excessive long before it is. By the time I am tired of saying the vision, the team is starting to internalize it. ### Why Vision Matters When the team holds the vision, three things change. Decisions get faster, because most of them no longer need my input. Quality gets more consistent, because everyone is optimizing for the same qualities. Hiring gets easier, because candidates can self-select. Without a vision, technical leadership turns into a stream of ad-hoc judgments. The team learns to wait for me instead of thinking. That scales badly and ages worse. ### Trade-offs and Limitations A strong vision can also become a cage. I have seen teams cling to a target architecture long after the business pivoted. The fix is to hold the vision firmly but treat it as falsifiable. Every quarter I ask: is this still the right destination given what we now know? ### Quick Check: Vision and Strategy Before moving on, I test my understanding: * What is the difference between a roadmap and a technical vision? * Why does a vision need to connect to a business outcome? * What is the failure mode of a vision that is never updated? **Answer guidance:** **Ideal result:** I can distinguish a roadmap (what and when) from a vision (target architecture and qualities), explain that engineering must serve business outcomes, and recognize that an un-revisited vision becomes a cage. If any answer is fuzzy, I revisit "Anchoring Vision in Business Outcomes". ## Section 3: Communication – Translating Across Audiences Technical leadership lives or dies on communication. Most of the work is translation: turning fuzzy business problems into engineering decisions, turning engineering trade-offs into business risks, turning vague concerns into specific changes. The same decision often needs three versions. For engineers I describe the technical change and the rationale. For product I describe the user impact and the timeline. For executives I describe the business risk and the cost. The facts are the same. The framing is different because the questions are different. ### Listening as a Technical Skill I treat listening as a first-class engineering practice. Most disagreements I have seen on technical teams turn out to be people defending different definitions of the same word. *Reliability* means uptime to one person and correctness to another. *Refactor* means rewrite to one and rename to another. Until I name the shared definition, the conversation is theater. A useful habit: I repeat back what I heard before responding, especially in heated discussions. "What I'm hearing is that you are worried we will paint ourselves into a corner with this contract. Is that right?" If I'm wrong, the speaker corrects me and we move forward. If I'm right, they relax and the temperature drops. ### Writing Beats Talking at Scale Past a certain team size, talking stops scaling. Every conversation excludes everyone outside the room. Writing scales without me present. I invest in a small set of writing artifacts that pay back for years: * **Design docs** for any non-trivial change. They force clarity and create a searchable trail. * **Decision records** so future engineers know not just what we chose but why and what we considered. * **Postmortems** that focus on systems, not blame, and feed back into the design culture. * **Status updates** in writing, with links and concrete numbers, instead of feel-good narratives. ### Tailoring the Message Without Lying Tailoring a message to an audience is not the same as spinning it. I never soften the truth for executives or simplify it past the point of accuracy. I do remove jargon, lead with the implication, and stop talking before the audience gets bored. A good rule: I imagine the listener has thirty seconds to act on what I say. What is the single sentence they need to hear first? ### Quick Check: Communication Before moving on, I test my understanding: * Why does the same technical decision often need to be described three different ways? * What is the difference between simplifying a message and spinning it? * Why does writing scale better than talking once a team grows? **Answer guidance:** **Ideal result:** I can explain that different audiences ask different questions, distinguish accurate simplification from deception, and recognize that written artifacts outlast any single conversation. If any answer is fuzzy, I revisit "Tailoring the Message Without Lying" and "Writing Beats Talking at Scale". ## Section 4: Empowering Teams – Leading Without Micromanaging A team that needs me for every decision is not a team I am leading; it is a team I am bottlenecking. Empowerment means handing off real ownership of problems, then resisting the urge to take them back the moment things get uncomfortable. This is the hardest part of the role for most engineers stepping into leadership. We are trained to solve problems ourselves. The job now is to build a team that solves them better than I would have. ### Delegating the Whole Problem The most common delegation mistake I have made is delegating the *task* but keeping the *decision*. "Go implement this design I drew" is not delegation, it is dictation with extra steps. The engineer learns to execute, not to think, and any change to the plan still has to come back to me. Real delegation hands off the whole problem: the goal, the constraints, and the authority to make trade-offs inside those constraints. I am explicit about which decisions need to come back to me (usually irreversible ones, or ones that affect other teams) and which the engineer owns outright. ### Building Capability Through Stretch I assign people to problems slightly beyond their current skill. Too easy and they coast. Too hard and they fail in ways that erode their confidence. The sweet spot is the problem they can solve with one moment of help from me or a peer. When they hit that moment, I resist the temptation to give the answer. Instead I ask the question that points at the answer. "What happens if this service goes down mid-write?" is more useful than "you need to make this idempotent." ### Protecting Focus Most teams I have led had no shortage of work; they had a shortage of *uninterrupted time to do it well*. A big part of the job is saying no to meetings, no to unplanned scope, no to the hundredth context switch. I treat the team's focus as a budget I spend on their behalf. Every interruption I let through is one I have decided is more valuable than the work it replaces. Often it isn't. ### Why Empowerment Matters Empowered teams ship faster, retain better engineers, and produce more durable solutions. Disempowered teams produce work that needs to be redone the moment the leader is on vacation. Empowerment also protects me. The job grows over time. If every decision still routes through me, I cap the team's output at my own personal bandwidth, which is a recipe for burnout and stagnation. ### Quick Check: Empowering Teams Before moving on, I test my understanding: * What is the difference between delegating a task and delegating a problem? * Why is it bad to give the answer when an engineer is stuck on a stretch problem? * Why is the team's focused time a leader's responsibility to protect? **Answer guidance:** **Ideal result:** I can describe delegating the whole problem (goal plus authority), explain that questions build capability where answers do not, and recognize that protecting focus is part of the leader's job. If any answer is fuzzy, I revisit "Delegating the Whole Problem" and "Protecting Focus". ## Section 5: Decision-Making – Judgment Under Uncertainty A technical leader makes most decisions with incomplete information. The team will not have time to fully evaluate every option. The choice is between deciding well under uncertainty or deferring until events force my hand. I aim for *fast, reversible* decisions early and *slow, careful* ones late. The fastest way to wreck a team is to apply slow, careful process to a one-way door that should have been a two-way door, and to apply quick instinct to an irreversible call. ### Reversibility as a Decision Filter Jeff Bezos calls these *one-way doors* and *two-way doors*. The framing is useful even outside Amazon. If I can change my mind cheaply later, I should decide quickly and learn from the result. If the decision is hard or impossible to reverse, I slow down, gather more input, and write the rationale down. Most technical decisions are more reversible than they look. I have watched teams agonize for weeks over choices that could have been undone in a sprint. I have also watched teams casually pick a database vendor in an afternoon and live with the consequences for years. ### Decisions Have Owners Every meaningful decision has an owner. Group decisions, by default, come out badly: too slow, too compromised, and with no one accountable when they age. I name the owner explicitly. Often that owner is me; sometimes it is the engineer closest to the problem. The owner consults widely, listens, then decides. Other people's job is to disagree clearly and then commit, not to keep relitigating after the call is made. ### Writing the Rationale Down For any non-trivial decision, I write down what I chose, what I considered, why I rejected the alternatives, and what would change my mind. Future-me, future-team, and any new hire can then load the decision back into context without summoning the original room. This is also a check on my own thinking. Many decisions look obvious in conversation and turn out to be unsupportable when I try to write them down. That is information I want before shipping, not after. ### When Data Runs Out Past a point, more data stops helping. Another week benchmarking three databases will not change the answer; it will only delay it. I make the call, document the assumption I am making, and revisit it on a calendar reminder. The best leaders I have worked with were rarely the ones who were always right. They were the ones who decided quickly enough to get feedback while there was still time to course-correct. ### Quick Check: Decision-Making Before moving on, I test my understanding: * What is the difference between a one-way door and a two-way door, and why does it matter? * Why should every meaningful decision have a single named owner? * When should a leader stop gathering data and decide? **Answer guidance:** **Ideal result:** I can apply reversibility as a filter (fast for two-way, careful for one-way), explain that named owners outperform group consensus, and recognize that timeliness often beats marginal accuracy. If any answer is fuzzy, I revisit "Reversibility as a Decision Filter" and "When Data Runs Out". ## Section 6: Common Technical Leadership Mistakes – What to Avoid These are the mistakes I have either made or watched up close. None of them are exotic. Most come from old engineering habits reapplied in the wrong context. ### Mistake 1: Becoming the Best Engineer on the Team I take every hard problem myself, ship a lot personally, and feel productive. The team learns to wait for me. When I leave, the system grinds to a halt because nobody else has reps on the hard parts. **The fix:** I assign the hard problems to someone else and pair on them. My output drops; the team's output and resilience climb. ### Mistake 2: Avoiding Conflict I see a design heading in a bad direction and say nothing because I don't want to be "that person." Two months later we ship the bad design, then spend a quarter unwinding it. **The fix:** I disagree early and clearly, in writing where appropriate. Conflict deferred grows interest. ### Mistake 3: Confusing Activity with Progress The team is busy. Tickets are moving. Standups are crisp. But none of it is moving the metric I care about. I have mistaken motion for direction. **The fix:** I tie at least one prominent metric to the vision and check it weekly. If the metric does not move, I challenge the work, even if morale takes a short hit. ### Mistake 4: Letting the Team Hide From the Business It is easy to let the team focus only on engineering and treat product, sales, and support as someone else's problem. Over time the team loses context, makes worse trade-offs, and develops grievance toward the rest of the company. **The fix:** I bring product context into design reviews. I take engineers to customer calls. I make business outcomes visible in our planning, not a separate document only I read. ### Mistake 5: Promoting a Strong Engineer With No Coaching I see this constantly. A great senior engineer becomes a tech lead overnight, gets no support, and either burns out or returns to senior engineer with a useless title. **The fix:** I treat leadership as a skill that needs deliberate practice. I find the new lead a coach, give them feedback, and shield them from reviews that measure only personal coding output for the first six months. ### Quick Check: Common Mistakes I test my understanding: * Why is being the best engineer on the team a leadership failure mode? * What is the cost of avoiding conflict on technical decisions? * Why does promoting an engineer without coaching often fail? **Answer guidance:** **Ideal result:** I can explain that solo heroics weaken the team, that deferred conflict compounds into rework, and that leadership is a learnable skill that needs deliberate support. If issues come up, I revisit "Becoming the Best Engineer on the Team" and "Promoting a Strong Engineer With No Coaching". ## Section 7: Common Misconceptions Common misconceptions about technical leadership include: * **"Technical leaders need to be the strongest engineer on the team."** Useful at first, harmful long term. The job is to *raise the team's ceiling*, not to be the ceiling. * **"Leadership is mostly about people skills, not technical depth."** Both are required. People skills without technical credibility produce a project manager that engineers tolerate. Technical depth without people skills produces a brilliant individual contributor with a confusing title. * **"A good technical leader has all the answers."** A good leader has good *questions* and the judgment to know which decisions to make and which to delegate. * **"You become a leader by getting promoted."** Title follows behavior, not the other way around. People who already lead informally get the title; people who wait for the title to start leading rarely get it. * **"Technical leadership and management are the same thing."** They overlap. A manager has formal authority over careers, compensation, and hiring. A technical leader influences direction and decisions. The same person can do both, but they are different jobs. * **"More meetings mean more leadership."** Meetings are a tool. Most leaders I respect have fewer meetings than their peers, not more. They invest in writing, asynchronous decisions, and short, sharp conversations when synchronous time is needed. * **"Once you lead a team, you stop coding."** Some leaders do, some don't. The right answer depends on the team size, the stage of the project, and the leader's strengths. Stopping coding entirely tends to erode credibility within a year if there's no replacement signal. ## Section 8: When NOT to Step Into Technical Leadership Technical leadership is not a universal upgrade path. There are seasons and situations where it is the wrong move. **When the joy of the work is the work.** If I love deep, hands-on engineering and dread meetings, formal leadership will probably make me unhappy. Senior IC tracks exist for a reason. **When the company doesn't actually want leadership.** Some companies want a tech lead title to avoid paying a senior IC properly. If the role has no real authority, no budget for time spent on people, and no support from above, I should pass. **When my life can't absorb the load.** Leadership is not nine-to-five. There are seasons (a new baby, a sick parent, a graduate program) where the extra emotional weight will hurt me, my team, and my family. It is fine to wait. **When the team needs a manager, not a tech lead.** If the team mostly suffers from career-development gaps, performance issues, or interpersonal problems, they need a manager with HR authority, not a strong engineer with a title. **When stepping in would freeze a stronger candidate.** If a stronger candidate is one project away from being ready, I can do the team a favor by holding the role open and helping them grow into it. Even when I skip the formal role, I can still lead through technical influence: writing design docs, mentoring, championing standards. Influence is not gated by a title. ## Building Technical Leadership Capability Technical leadership grows one feedback loop at a time. The first six months feel awkward, because I am visibly bad at things I used to do well (coding output drops, meetings multiply, decisions feel slower). The compounding payoff comes later. ### Key Takeaways * **Credibility is the foundation.** Without current technical judgment, every other leadership move costs more. * **Vision beats roadmap.** A clear destination lets the team make a thousand small decisions correctly without me. * **Translation is most of the job.** Moving information across audiences is the high-leverage work. * **Empower by delegating problems, not tasks.** A team that owns the problem will solve it better than I would. * **Decide on reversibility, not consensus.** Slow on one-way doors, fast on two-way doors, written down either way. ### How These Concepts Connect Credibility earns me the right to set vision. Vision tells the team what good looks like. Communication carries the vision into daily decisions. Empowerment scales the team beyond my personal bandwidth. Decision-making converts uncertainty into momentum. Each loop strengthens the next: better decisions raise credibility, stronger credibility lets me set bigger vision, bigger vision attracts stronger people who deserve more empowerment. ### Getting Started With Technical Leadership If I'm new to the role, I start with a narrow, repeatable practice: 1. **Write the team's one-page technical vision** and circulate it for feedback. 2. **Pick three weekly habits** to keep my technical credibility current (PR review, design review, incident review). 3. **Identify one decision per week to delegate** to someone else and resist the urge to take it back. 4. **Write a decision record** for every non-trivial call I make, even if no one reads it yet. 5. **Schedule one weekly review** of my own behavior: what did I jump into that I should have left alone? Once these feel routine, I expand to coaching, hiring, and cross-team influence. ### Next Steps **Immediate actions:** * Write down the technical vision for my current team. * Pick one habit from the list above and start it this week. * Identify a decision currently sitting on me that should sit with someone else. **Learning path:** * Read *The Manager's Path* by Camille Fournier for the engineer-to-leader trajectory. * Read *Staff Engineer* by Will Larson to understand the senior IC version of technical leadership. * Read *An Elegant Puzzle* by Will Larson for systems-thinking applied to engineering organizations. **Practice exercises:** * Run a design review where my only contribution is asking questions. * Write a decision record and ask a peer to push back on it. * Take an engineer to a customer call and debrief together. **Questions for reflection:** * Where am I currently a bottleneck on my team, and what would have to be true for me not to be? * Which audiences do I communicate worst with right now, and what is one thing I can change this month? * What is the next decision I should slow down on because it is a one-way door? ### The Technical Leadership Workflow: A Quick Reminder Before I conclude, here's the core workflow one more time: ```mermaid graph TB A[Build Credibility] --> B[Set Vision and Strategy] B --> C[Communicate Across Audiences] C --> D[Empower the Team] D --> E[Make Better Decisions] E --> A style A fill:#e1f5fe style B fill:#f3e5f5 style C fill:#e8f5e8 style D fill:#fff3e0 style E fill:#fce4ec ``` Credibility supports vision. Vision drives communication. Communication enables empowerment. Empowerment unlocks better decisions. Better decisions feed back into credibility. ### Final Quick Check Before I move on, I see if I can answer these out loud: 1. Why is technical credibility the basis for influence on an engineering team? 2. How is a technical vision different from a roadmap? 3. Why does the same decision often need three different framings? 4. What does it mean to delegate the problem instead of the task? 5. How does reversibility shape how quickly I should decide? If any answer feels fuzzy, I revisit the matching section. ### Self-Assessment – Can I Explain These in My Own Words? Before moving on, I check whether I can explain these concepts in my own words: * Credibility and how to keep it. * Vision and how it differs from a roadmap. * The role of writing in technical leadership. If I can explain these clearly, I have internalized the fundamentals. ## Laws, Bias, and Fallacies Technical leadership runs on judgment, and judgment is constantly distorted by the way humans and organizations think. The following laws, biases, and fallacies show up in almost every team I have led. ### Laws and Named Principles * **Conway's Law.** *Gist:* Systems mirror the communication structures of the organizations that built them. *How it shows up:* If two services need to talk, the teams that own them need to talk too. When I want to change a system boundary, I usually need to change a team boundary first. * **Brooks's Law.** *Gist:* Adding people to a late project makes it later. *How it shows up:* Throwing engineers at a missed deadline rarely helps and often makes the next milestone worse. As a leader, my instinct should be to cut scope, not add bodies. * **Goodhart's Law.** *Gist:* When a measure becomes a target, it stops being a good measure. *How it shows up:* The moment I tell engineers their performance review depends on lines of code, story points, or PR count, those numbers will go up and quality will go down. * **Hyrum's Law.** *Gist:* With enough users, every observable behavior of an interface becomes a contract. *How it shows up:* I cannot rely on documentation to limit how people use a system. If I want flexibility later, I have to limit observable behavior now. * **Dunbar's Number.** *Gist:* Humans can maintain about 150 stable relationships. *How it shows up:* Once a team or org crosses about 150 people, informal coordination breaks down and structure becomes mandatory, not optional. ### Cognitive Bias * **Confirmation bias.** I remember the times my favored architecture worked and forget the times it didn't. *What to do:* I deliberately seek the strongest version of the opposing view before I decide. * **Sunk cost fallacy.** I keep investing in a struggling project because of what I have already spent. *What to do:* I evaluate projects on what they will return from here, not on what they have cost so far. * **Availability bias.** The most recent or most vivid incident dominates my risk thinking. *What to do:* I use base rates and historical data, not the last outage I personally felt. * **Authority bias.** The team defers to me because of my title, even when someone closer to the problem has better information. *What to do:* I explicitly ask the most junior person in the room for their view before I share mine. * **Planning fallacy.** Estimates ignore the long tail of integration, review, and unknowns. *What to do:* I budget for unknowns explicitly and ask "what would have to be true for this to take twice as long?" ### Logical and Rhetorical Fallacies * **False dichotomy.** "Either we rewrite or we live with the bug forever." Most engineering choices have a middle path; I name it. * **Appeal to novelty.** "We should use this technology because it is newer." Novelty is not a virtue. I weigh maturity, support, and migration cost. * **Appeal to authority.** "Big-Tech-Company does it this way, so we should too." Their constraints are not my constraints. I look at the problem they were solving before copying the solution. * **Moving goalposts.** A project is "almost done" for months as the definition of done expands. As a leader, I either lock the definition or kill the project; I do not let it drift indefinitely. * **Bandwagon fallacy.** Everyone on the team is excited about a new framework, so resistance feels obstructive. Enthusiasm is not evidence. I ask for the failure cases out loud. The point of this section is not to win debates by naming fallacies. It is to spot them in my own thinking before I act, and to give the team a shared vocabulary for healthy disagreement. ## Future Trends & Evolving Practices Technical leadership is not static. Remote work, AI tooling, and platform engineering are reshaping the role right now. Awareness of where the role is heading helps me invest in the right skills. ### Distributed and Asynchronous Leadership Remote and hybrid teams are now the default for many engineering orgs. Hallway conversations, whiteboard sketches, and ambient awareness are largely gone. **What this means:** Written communication, async decision-making, and explicit documentation are becoming required skills, not nice-to-haves. **How to prepare:** I invest in writing as a first-class deliverable, default to written decisions over hallway ones, and treat my doc trail as part of the architecture. ### AI-Augmented Engineering Teams Generative AI is changing how code is written, reviewed, and tested. The leverage on a single engineer is rising, and so is the risk of plausible-but-wrong output. **What this means:** Reviewing for correctness, judging trust boundaries, and teaching the team how to *use* AI tooling well are becoming core leadership work. The cost of writing bad code at scale has dropped; the cost of making bad decisions about what to build has not. **How to prepare:** I stay hands-on with AI tooling so I can lead its adoption, set guardrails on where its output is and isn't trusted, and reinforce that judgment, not typing speed, is the bottleneck. ### Platform Engineering and Internal Products Internal platforms are eating the role ops and DevOps teams once filled. Treating internal tooling as a real product, with users and a roadmap, is now a leadership skill. **What this means:** Tech leads increasingly need to understand product management for internal audiences, not only for end users. **How to prepare:** I learn product fundamentals (discovery, prioritization, metrics) and apply them to internal platforms with the same seriousness I would apply to a customer-facing product. ### Sustainability and FinOps Awareness Cloud costs and energy use are now part of the technical conversation in ways they weren't ten years ago. Decisions about scale, redundancy, and architecture have visible financial and environmental consequences. **What this means:** Technical leaders increasingly own cost and efficiency, not only throughput and reliability. **How to prepare:** I read my own cloud bill, understand the largest cost drivers in the system, and treat cost as a quality attribute alongside latency and reliability. ## Limitations & When to Involve Specialists Technical leadership fundamentals provide a strong foundation, but some situations exceed what one person should handle alone. ### When Fundamentals Aren't Enough Some leadership challenges go beyond the basics covered here. **Severe interpersonal conflict.** When the conflict moves from technical disagreement into personal hostility or harassment, I bring in HR or a manager with formal authority. **Org-level transformation.** Splitting a fifty-person org into product teams, or merging two engineering groups after an acquisition, needs more than tech-lead skills. I work with leaders who have done it before. **Compliance, security, and legal trade-offs.** When the wrong call could expose the company to a fine, a breach, or a lawsuit, I get specialists in the room before I decide. ### When Not to DIY There are situations where fundamentals alone aren't enough: * **Layoffs or reorgs** affecting compensation, role, or employment. * **Discrimination or harassment claims** of any kind. * **Major architectural pivots** for a product I do not deeply understand. ### When to Involve Leadership Specialists I consider involving specialists when: * The team has chronic delivery issues I have already tried to fix and failed. * I am promoted into a scope (multiple teams, a function, an org) where my prior experience doesn't apply. * The next decision is irreversible and outside my domain. **How to find specialists:** Engineering leadership coaches, peer-leader communities, and senior leaders inside or outside the company are usually accessible if I ask. Many of the best I've worked with were one warm intro away. ### Working With Specialists When I do bring in specialists: * I share full context, including the parts that are uncomfortable. * I name the decision I need help with, not "advice." * I commit to acting on what I learn, not collecting opinions. ## Glossary ## References * [The Manager's Path][managers-path] by Camille Fournier: The standard reference for the engineer-to-engineering-manager career path, written by an engineer who lived it. * [Staff Engineer][staff-engineer] by Will Larson: How senior individual-contributor leadership actually works, with patterns and interviews. * [An Elegant Puzzle][elegant-puzzle] by Will Larson: Systems-thinking applied to engineering organizations, useful for tech leads operating above a single team. * [Conway's Law][conways-law] (Wikipedia): Background on the original 1968 paper and how the idea has evolved. * [Brooks's Law][brooks-law] from *The Mythical Man-Month*: The classic argument that adding people to a late project makes it later. * [Goodhart's Law][goodharts-law] (Wikipedia): How metrics stop being useful once they become targets, with examples beyond software. * [Hyrum's Law][hyrums-law]: A short, memorable statement of how observable behavior becomes contract at scale. * [Two-Pizza Teams and One-Way Doors][bezos-letter] from Jeff Bezos's 2015 letter to shareholders: The original framing of reversible vs. irreversible decisions. * [Diátaxis][diataxis]: The documentation framework that classifies this article as an Explanation. ### Note on Verification Leadership writing ages at different rates. The named laws (Conway, Brooks, Goodhart) are stable. The trends section reflects the industry as I see it now; revisit it regularly. Treat every personal opinion as one input among several. [managers-path]: https://www.oreilly.com/library/view/the-managers-path/9781491973882/ [staff-engineer]: https://staffeng.com/book [elegant-puzzle]: https://lethain.com/elegant-puzzle/ [conways-law]: https://en.wikipedia.org/wiki/Conway%27s_law [brooks-law]: https://en.wikipedia.org/wiki/Brooks%27s_law [goodharts-law]: https://en.wikipedia.org/wiki/Goodhart%27s_law [hyrums-law]: https://www.hyrumslaw.com/ [bezos-letter]: https://www.sec.gov/Archives/edgar/data/1018724/000119312516530910/d168744dex991.htm [diataxis]: https://diataxis.fr/