The Managers' Guide № 146

Weekly, hand-picked engineering leadership nuggets of wisdom

Share
The Managers' Guide № 146
"This isn't a distributed system, it's a collection of single points of failure"

No, AI didn't break PRs

  • 📉 Productivity paradox: The rise of AI-assisted coding has not led to a measurable increase in the frequency of pull requests, suggesting that code generation is not the primary bottleneck in engineering.
  • 🏗️ Complexity burden: Senior engineers spend most of their time navigating system architecture and technical debt rather than writing syntax, areas where AI currently offers limited assistance.
  • 🧠 Cognitive overhead: Writing code is a small fraction of the job compared to the mental effort required for problem scoping, cross-team alignment, and debugging complex distributed systems.
  • ⚖️ Quality vs. Velocity: Pushing more code faster is often counterproductive; the real value lies in refining system designs to minimize the need for extensive coding in the first place.
  • 🛠️ Strategic leverage: To improve developer output, teams should focus on removing process friction and improving documentation rather than just deploying more code-generation tools.

Incubate, Compound, Refinance, Liquidate

  • 🎯 Portfolio Framework — Software assets should be evaluated on a 2×2 grid measuring "value created" versus "carrying costs," suggesting four postures: Incubate, Compound, Refinance, or Liquidate
  • 📈 Asset Motion Matters — The key question isn't where an asset sits, but "which direction is it moving, how quickly, and is that movement intentional?"
  • 💳 Technical Debt as Finance — Debt is a financing choice with different implications depending on context — productive leverage in Compound, but dangerous in Incubate if value isn't proven
  • 🏗️ Platform Trap Patterns — Effective platforms improve economics for dependent assets; ineffective ones create "False Economies of Scale," are adopted too early or late, or burden consumers with "Adoption Tax"
  • ⚠️ Recurring Organizational Traps — Build Trap (Incubate fails to Compound but keeps accumulating cost), Limits to Growth (Compound can't sustain), Success Trap (winners dominate while next-generation bets disappear)
  • 🤖 AI's Directional Question — AI doesn't eliminate complexity or decay — it changes the cost and speed of responding to them, but can accelerate the wrong movement if applied to already-problematic patterns like zombie assets or build traps
  • 🎲 Portfolio Health is Dynamic — Health depends not just on the current mix of assets, but on what's flowing between categories and whether someone is intentionally managing that movement

6 Ways to Make Adversity Useful

  • 🎯 Leaders transform adversity into opportunity — trouble itself doesn't create advantage, but how leaders respond does
  • 🔍 Expand perspective by remembering past victories — don't let difficulty become the whole story, as distress naturally magnifies in our minds
  • 💪 Defy the verdict by facing reality without surrendering — distinguish between a diagnosis (what is) and a verdict (the end), then chart a path forward
  • ❤️ Reconnect with purpose by eliminating shallow commitments — ask "Who is counting on us?" and "What are we unwilling to abandon?" to turn pain into resolve
  • 🎮 Take charge by focusing on "What?" instead of "Why?" — identify what's within your control and build momentum through small wins
  • 🤝 Engage others and reject isolation — share authority, ask for help, and pursue "our best" instead of "my best"
  • 👁️ Show care and stay visible — people need encouragement, listening, shared sacrifice, and recognition of effort during hardship
  • 🚀 The key insight: adversity presents the moment, but leaders give it meaning — create opportunity rather than simply searching for it

What Culture First Has Looked Like For Me

  • 🏢 Long-term loyalty through Culture First values — Author has stayed at Culture Amp for 8+ years (4x longer than previous jobs) because the company genuinely practices its "Culture First" mission of creating "a better world of work"
  • 💰 Fair compensation and regular reviews build trust — Culture Amp offered above the asked salary range from the start, provided unprompted raises after performance reviews, and maintained consistent 6-month evaluation cycles that reduced pay negotiation anxiety
  • 🌍 Supporting employee growth beyond the job — Company encouraged public speaking opportunities and conference submissions, which benefited both the employee's visibility and the company's recruiting without paying recruiter commissions
  • 🏠 Trust in non-traditional work arrangements — Allowed remote work in 2017 before COVID, encouraged the author to become an early remote team lead, which positioned the company well for pandemic transition
  • 👨‍💼 Robust management training and support — Invested in manager training through Lifelabs, provided access to organizational psychologists on Slack, and created a culture of peer learning among team leads
  • 👶 Progressive parental leave policies — Started with 6 weeks paid parental leave for dads, evolved to 16 weeks for all caregivers, and went above policy to support author during family health crisis with additional 12 weeks of flexible leave
  • 🧠 Vulnerability and neurodiversity created unexpected community value — A colleague's openness about being autistic helped author understand neurodiversity better, which ultimately supported his own son's autism diagnosis and created a Slack community for parents of neurodiverse children
  • 📊 Value beyond business metrics — Culture First approach creates measurable business returns AND unmeasurable human value that enriches employee lives and communities, which the author sees as the truest measure of success

There's No Limit to How Bad Code Can Get

  • 🏗️ Common metaphors like "sinking ship" or "collapsing building" mislead engineers about software degradation — they imply an eventual breaking point, but software has no such physical constraint and can always get worse.
  • ♾️ Unlike physical structures, code faces "no natural constraint" that will force action on technical debt — it can degrade infinitely with new layers of indirection, performance problems, and complexity while still technically functioning.
  • 💼 A business will fail long before code reaches any hypothetical quality floor — the real threat isn't the code breaking, but development velocity approaching zero or costs eclipsing benefits, forcing the company to act before the software itself "dies."
  • 🔄 Re-architecture attempts at large organizations typically fail because "incomplete information" combined with promotion incentives lead to half-finished fixes that permanently graft onto the existing system, making the cycle worse.
  • 🏦 "Technical debt" is a better metaphor than "sinking ship" because debt compounds forever, but even this breaks down — bankruptcy (the reset equivalent) rarely happens in software since full rewrites are rarely viable and old systems must still be maintained.
  • 🪣 The only realistic escape hatch for mega-corps is creating "side-channels" — entirely new, disconnected systems for specific use cases — but this leaves old systems to rot indefinitely, not a true reset.
  • ⚠️ Believing in a hypothetical "hard reset" escape hatch leads to worse decisions today, as decision-makers underestimate that "there is no escape hatch" and punt technical debt instead of actively maintaining code quality.


That’s all for this week’s edition

I hope you liked it, and you’ve learned something — if you did, don’t forget to give a thumbs-up, add your thoughts as comments, and share this issue with your friends and network.

See you all next week 👋

Oh, and if someone forwarded this email to you, sign up if you found it useful 👇