<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/">
    <channel>
        <title>Shape And Ship - EN</title>
        <link>https://shape-and-ship.writizzy.com</link>
        <description>  Practical frameworks for CTOs, CPOs, tech&amp;product leaders scaling teams, delivery, and AI adoption. From a  CTPO who ships with the teams she works with. Strategy, metrics, and field lessons from scale-ups of 20 to 120 people.</description>
        <lastBuildDate>Wed, 24 Jun 2026 10:23:16 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>Writizzy</generator>
        <language>en</language>
        <copyright>All rights reserved 2026, Shape And Ship - EN</copyright>
        <item>
            <title><![CDATA[Craft is dead, long live the craft]]></title>
            <link>https://shape-and-ship.writizzy.com/p/craft-is-dead-long-live-the-craft</link>
            <guid>https://shape-and-ship.writizzy.com/p/craft-is-dead-long-live-the-craft</guid>
            <pubDate>Mon, 22 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA["Craft is outdated."

A candidate told me this during an interview after we flagged gaps in his engineering craft culture. His answer was blunt: with AI, what matters is speed.
Easy to dismiss. Except I hear the same thing in the teams I work with, just phrased differently.]]></description>
            <content:encoded><![CDATA[<p>&quot;Craft is outdated.&quot;</p>
<p>A candidate told me this during an interview after we flagged gaps in his engineering craft culture. His answer was blunt: with AI, what matters is speed.</p>
<p>Easy to dismiss. Except I hear the same thing in the teams I work with, just phrased differently.</p>
<h2>What the data already shows</h2>
<p>Faros measured the impact of AI adoption across 22,000 developers and 4,000 teams over two years.</p>
<p>Individual throughput is up 34%. Epics completed per developer, up 66%. AI accelerates code production. Nobody disputes that.</p>
<p>On the other side: bugs per developer are up 54%. The incident-to-PR ratio has tripled. Code churn is up 9x. Lead time, 5x. And 31% more PRs are being merged without any review at all.</p>
<p>Some of this can be explained by increased volume and more ambitious projects. You could also argue that higher churn reflects refactorings teams would never have tackled without AI. But that doesn&#39;t explain why teams are discovering their own implementations for the first time during production incidents.</p>
<p>The hardest finding in the report: organizations with strong pre-AI engineering practices are not protected. Teams with solid foundations, mature review processes and high DORA scores see the same degradation. Code generation has become so cheap that it overwhelms existing quality mechanisms.</p>
<p>Some CTOs I talk to are convinced their mature teams will absorb AI naturally. The data suggests otherwise.</p>
<p>That doesn&#39;t mean old practices should survive as-is.</p>
<h2>Craft was never about the code</h2>
<p>For years, we believed craft meant writing elegant code, applying patterns, maintaining clean architecture. AI is very good at producing all of that. Idiomatic code, well-named, stylistically consistent. If craft were just that, the candidate would be right: it&#39;s outdated.</p>
<p>Code was the observable surface of something else. A team&#39;s ability to build a shared mental model of its system and domain. Knowing which trade-offs were made and why. Knowing what deserves to be simplified and what needs to stay complex.</p>
<p>In a team I was in the process of structuring, I tried to introduce pairing. The response was immediate: &quot;we have Claude Code.&quot; Same thing with cross-reviewing technical specs: &quot;one review is enough.&quot;</p>
<p>No resistance. A rational shortcut. And not an absurd one. Pairing was expensive. Mob programming was slow. Nobody misses the days when a two-hour refactoring took a full day in a pair. You could even argue that Claude Code is a form of pairing, with a machine instead of a colleague.</p>
<p>Except a machine&#39;s challenge doesn&#39;t replace a human&#39;s. It improves an individual decision. It doesn&#39;t automatically build collective understanding. Pairing is about one developer understanding and challenging another&#39;s choices, not about writing code together. Spec review is about the team aligning on the problem before coding. TDD is about specifying expected behavior before writing a single line (Kent Beck goes as far as enforcing TDD in his agents&#39; system prompts, because without it, the agent deletes the test rather than fixing the code). Mob programming is about anchoring conventions through collective imitation.</p>
<p>Each of these practices produces a deliverable. And each builds, in parallel, a shared understanding of the system. AI produces the deliverable. Not the rest.</p>
<p>The gain is real. We deliver faster, we have more tests. But I observe that teams don&#39;t use the time saved to think. They use it to pick up the next ticket. Sometimes to improve overall quality, strengthening tests or documentation for instance. Often, practices like pair programming, mob programming, spec reviewing don&#39;t even get the chance to take hold. AI provides the shortcut before the practice has proved its value.</p>
<blockquote>
<p>This isn&#39;t a critique of AI. It&#39;s a critique of what AI amplifies. Dave Farley puts it bluntly: teams with good practices benefit massively from AI. The rest produce worse software, faster.</p>
</blockquote>
<h2>Craft is shifting</h2>
<p>Some teams delegate to AI. The spec, the tests, the code. AI produces, the team validates and moves on. Others use it to think. They specify expected behavior in TDD, then let AI code. They write the first draft of the spec themselves, then use AI to tear it apart: what could break, what case was missed. They read the generated tests asking what they don&#39;t cover.</p>
<p>Martin Fowler talks about &quot;letting go of the obsession with perfect code line by line to strengthen understanding of the domain and the overall architecture.&quot; Craft isn&#39;t disappearing. It&#39;s shifting. Execution matters less. Judgment and domain modeling matter more. This already separated good teams from the rest, but now the gap is visible.</p>
<p>The question for every team: are we using AI as a sparring partner that forces us to think, or as a competent colleague we delegate to?</p>
<h2>Craft isn&#39;t dead. Not yet.</h2>
<p>For twenty years, engineering practices served two purposes: producing software and building collective understanding. AI now produces much of the software.</p>
<p>We measure throughput, closed tickets, merged PRs. We almost never measure distributed understanding. Who knows what in the team. How long it takes to modify a system six months after building it. What it costs to explain an architectural decision to someone who just joined.</p>
<p>For a long time, production speed was a reasonable signal of a team&#39;s health. When writing code becomes nearly free, that signal gradually stops being reliable. If AI now produces the software, there&#39;s a question nobody is asking enough: how do we measure the quality of collective understanding that allows us to evolve it?</p>
<p>That candidate thought craft was dead. Execution craft is receding, yes. But craft was never really about the code. Craft is now about producing the understanding that allows the code to evolve.</p>
<p>AI makes code abundant. Understanding remains scarce.</p>
<h2>Sources and related articles</h2>
<p><strong>Data</strong></p>
<ul>
<li><a href="https://www.faros.ai/research/ai-acceleration-whiplash">Faros AI Engineering Report 2026, "The Acceleration Whiplash"</a> — 22,000 developers, 4,000 teams, two years of telemetry</li>
</ul>
<p><strong>Craft voices on AI</strong></p>
<ul>
<li><a href="https://newsletter.pragmaticengineer.com/p/tdd-ai-agents-and-coding-with-kent">Kent Beck — TDD, AI agents and coding</a> (The Pragmatic Engineer)</li>
<li><a href="https://tidyfirst.substack.com/p/augmented-coding-beyond-the-vibes">Kent Beck — Augmented Coding: Beyond the Vibes</a></li>
<li><a href="https://www.aviator.co/podcast/engineering-discipline-dave-farley">Dave Farley — The AI Shift is Bigger Than Internet and Agile</a> (Aviator podcast)</li>
<li><a href="https://www.youtube.com/watch?v=ii_rLjQfjp0">Martin Fowler &amp; Kent Beck — Tech Truth: Agile Evolution &amp; the Future of SW Engineering</a> (GOTO 2025)</li>
</ul>
<p><strong>Related articles (AI and Quality series)</strong></p>
<ul>
<li><a href="https://www.shapeandship.ai/p/cheap-to-build-costly-to-keep">Cheap to build, costly to keep</a> (comprehension debt)</li>
<li><a href="https://www.shapeandship.ai/p/historique-documentation-missing">"It's historical"</a> (organizational knowledge)</li>
<li><a href="https://www.shapeandship.ai/p/devs-produce-twice-as-many-prs-delivery-hasn-t-moved">Tokenmaxxing</a> (AI metrics and ROI)</li>
<li><a href="https://www.shapeandship.ai/p/ai-doesnt-replace-juniors-training">AI doesn't replace juniors</a> (training and knowledge transfer)</li>
</ul>
]]></content:encoded>
            <category>ai</category>
        </item>
        <item>
            <title><![CDATA[We doubled the team and nothing got faster - A story of perfomance]]></title>
            <link>https://shape-and-ship.writizzy.com/p/we-doubled-the-team-and-nothing-got-faster-a-story-of-perfomance</link>
            <guid>https://shape-and-ship.writizzy.com/p/we-doubled-the-team-and-nothing-got-faster-a-story-of-perfomance</guid>
            <pubDate>Mon, 15 Jun 2026 00:00:00 GMT</pubDate>
            <description><![CDATA[Why doubling a team doesn't double its velocity. An organization's throughput depends on its barrels, the few people who can take a vague initiative and ship it end to end, not on   headcount. This article breaks down the "more people = more speed" reflex and explores what happens when you add AI to a team that lacks barrels.]]></description>
            <content:encoded><![CDATA[<p>A few years ago, at a scale-up where I was CTO, the engineering team was cut in half. Tough economic context, like many companies at the time. On paper, it was a disaster.</p>
<p>Except velocity didn&#39;t drop by half. It dropped by maybe 20%, possibly less. Standups got shorter. PRs moved faster. The people who stayed knew exactly what to do, and they finally had room to do it.</p>
<p>To be fair, what made the difference is partly that the right people had stayed. The ones actually driving projects forward hadn&#39;t left. Critical domains were still covered. Scope had shrunk. The headcount reduction didn&#39;t improve anything on its own. What mattered was who remained.</p>
<p>And that raises a broader question: why do some people weigh so much more than others in an organization&#39;s ability to ship?</p>
<h2>Barrels</h2>
<p>In any team, there are two or three people without whom nothing ships. The ones who take a vague topic, break it down, get others on board, and push it to production.</p>
<p>Keith Rabois put a name on this while observing PayPal: out of 254 people, 12 to 17 carried projects end to end. He calls them <em>barrels</em>. Everyone else is <em>ammunition</em>: the people who execute.</p>
<p>The ratio is striking. It&#39;s also a heuristic drawn from one specific company at one specific time. A 2000s fintech, a B2B SaaS platform, and an e-commerce scale-up don&#39;t have the same dynamics. But the intuition holds: in most organizations, a small number of people carry the bulk of the ability to ship.</p>
<p>And &quot;carrying&quot; doesn&#39;t look the same everywhere. The Staff Engineer who secures platform architecture carries. The EM who unblocks their team every week carries. The PM who makes priority calls and protects product focus carries, without writing a line of code. The SRE whose reliability lets everyone else build with confidence carries too. Very different profiles, same function: turning an initiative into a result.</p>
<p>An organization&#39;s real capacity is the number of these people. Not total headcount.</p>
<h2>More people, less speed</h2>
<p>When things slow down, the reflex is almost always the same: hire. Look at the roadmap, count the features, divide by estimated capacity per developer, conclude you need fifteen more people. Brooks showed the problem back in 1975: coordination cost grows at n(n-1)/2. Teams of 5-7 consistently outperform teams of 15-20 in per-capita productivity (QSM, across thousands of projects).</p>
<p>Sometimes headcount really is the bottleneck. An undersized platform team, 24/7 coverage to maintain, a multiplication of business domains requiring new expertise. In those cases, hiring is the right call.</p>
<p>But when the problem is &quot;we&#39;re not moving fast enough on existing work,&quot; it&#39;s rarely a staffing problem. Ten more developers with nobody to frame the project, break it down, unblock it when things get stuck: ten people waiting or heading in different directions. The bottleneck is the number of people able to carry a topic end to end.</p>
<h2>You can&#39;t hire into a broken system</h2>
<p>On another engagement, I faced strong pressure to hire into a struggling team. My stakeholder couldn&#39;t understand why I was pushing back. The team was struggling, so it needed more people. To him, it was obvious.</p>
<p>I saw the outcome of that logic in a different context: external hires added to a dysfunctional team. They didn&#39;t push back, didn&#39;t bring the fresh perspective everyone hoped for. Within weeks, they&#39;d adopted the same workarounds as the rest of the team, the same shortcuts in review, the same topics everyone avoids in standup. The resources were there, the goodwill too. But when the system has structural flaws, new hires don&#39;t fix them. They absorb them.</p>
<p>Will Larson calls this organizational debt. You don&#39;t hire into a broken system expecting the newcomers to fix it despite themselves.</p>
<h2>Find the bottleneck, not the headcount gap</h2>
<p>Goldratt laid it out in <em>The Goal</em>: a system&#39;s throughput is limited by a single bottleneck at a time. Optimizing anything else is waste. In <em>The Phoenix Project</em>, Brent is the one everything flows through, the one without whom nothing moves. Redistributing his load is the only lever. Hiring next to him does nothing.</p>
<p>In the team I watched shrink by half, that&#39;s what happened naturally. Fewer people, so fewer projects in parallel. Those who remained finally had the bandwidth to run their topics end to end, without being interrupted every hour to coordinate.</p>
<p>Skelton and Pais frame the same idea differently in <em>Team Topologies</em>: the real constraint is cognitive load, not headcount. When a team is overloaded, you need to reduce the surface area, the scope per person, the number of domains to keep in mind. Not add more heads.</p>
<p>And often, the bottleneck isn&#39;t even in engineering. It&#39;s in product decisions. Fuzzy priorities, calls that don&#39;t get made, business dependencies that nobody resolves. You can have all the technical barrels you want: if nobody on the product side holds the vision and protects focus, the team builds fast in directions that don&#39;t converge.</p>
<h2>Growing barrels</h2>
<p>Barrels don&#39;t stand out by their technical level. They stand out by how they react to ambiguity.</p>
<p>On a recent engagement, I needed barrels in a team that didn&#39;t have enough. Rather than hiring directly, I gave a leadership role to about ten people, in rotation. Same conditions, same scope, same expectations.</p>
<p>Within weeks, the difference was clear. Some grabbed the role: they broke down problems on their own, asked questions about the why not just the how. They felt accountable for outcomes beyond their own scope. Others still needed guidance, and that&#39;s fine. Not a judgment call, just a snapshot of readiness at a given point.</p>
<p>Where some waited for instructions or escalated, those few started moving.</p>
<p>It takes time. It&#39;s less dramatic than a senior hire showing up with an impressive resume. But people you grow internally know the context, the product, the debt. They don&#39;t need three months of onboarding. And above all, they have the team&#39;s trust. You can&#39;t mandate that.</p>
<h2>AI doesn&#39;t make barrels</h2>
<p>All of this was observed and theorized before every team had access to AI. AI doesn&#39;t change the equation. It makes it worse.</p>
<p>Todd Gagne offers an analogy that clarifies things. When electricity arrived in factories in the 19th century, the first industrialists simply replaced the steam engine with an electric motor while keeping the same production layout. The gains were marginal. It took a complete rethinking of factory organization for electricity to deliver on its promise.</p>
<p>AI is the same story. Deploying Copilot or Cursor on a team that lacks barrels is putting an electric motor in a steam-age factory. AI generates code, tests, documentation. But it doesn&#39;t know what to build, it doesn&#39;t know how to prioritize, and it doesn&#39;t push anything to production.</p>
<p>Using Rabois&#39;s heuristic: if 12 barrels drove 254 people at PayPal, AI lets those 254 produce ten times more code. But if the barrels are still 12, the bottleneck hasn&#39;t moved. It&#39;s gotten worse: there&#39;s now ten times more output to sort, validate, and carry to production.</p>
<p>A team without barrels armed with AI produces more code that nobody ships. The result is noise, not throughput.</p>
<hr>
<p>Barrels don&#39;t stand out by their technical level. They stand out by their ability to turn uncertainty into execution.</p>
<p>When an organization slows down, the first question isn&#39;t &quot;How many people are we missing?&quot; The first question is &quot;Who actually turns vague topics into concrete results?&quot;</p>
<p>As long as those people remain the bottleneck, hiring more doesn&#39;t change the trajectory.</p>
<hr>
<h2>Sources</h2>
<ol>
<li>Keith Rabois, <a href="https://startupclass.samaltman.com/courses/lec14/">How to Operate</a> — Stanford/YC, 2014. The barrels vs ammunition concept.</li>
<li>Fred Brooks, <em>The Mythical Man-Month</em>, 1975. Coordination cost at n(n-1)/2.</li>
<li>Will Larson, <a href="https://lethain.com/sizing-engineering-teams/">Sizing Engineering Teams</a> — and <em>An Elegant Puzzle</em>, 2019. Organizational debt and team sizing.</li>
<li>Eliyahu Goldratt, <em>The Goal</em>, 1984. Theory of Constraints.</li>
<li>Gene Kim et al., <em><a href="https://itrevolution.com/product/the-phoenix-project/">The Phoenix Project</a></em>, 2013. Brent as the human bottleneck.</li>
<li>Matthew Skelton &amp; Manuel Pais, <em><a href="https://teamtopologies.com/book">Team Topologies</a></em>, 2019. Cognitive load as the real constraint.</li>
<li>Todd Gagne, <a href="https://wildfirelabs.substack.com/p/the-barrels-paradox-why-ai-makes">The Barrels Paradox</a>, 2025. The electricity/AI analogy and why human judgment becomes the real bottleneck.</li>
</ol>
<h2>Further reading</h2>
<ul>
<li><a href="https://www.ravi-parikh.com/posts/barrels-and-ammunition">Barrels and Ammunition</a> — Ravi Parikh. How to identify barrels in an org.</li>
<li><a href="https://www.qsm.com/blog/2017/brooks-law-revisited">Brooks' Law Revisited</a> — QSM Associates, 2017. Empirical data on productivity by team size.</li>
<li><a href="https://lethain.com/identify-and-remove-bottlenecks/">Identifying and Removing Bottlenecks</a> — Will Larson. Applying the Theory of Constraints to engineering teams.</li>
<li>Charity Majors, <a href="https://charity.wtf/">charity.wtf</a> — On when hiring makes sense (and when it doesn&#39;t).</li>
<li>Kent Beck, <a href="https://tidyfirst.substack.com/">Tidy First?</a> — Efficiency vs throughput, and why fixing architecture comes before headcount.</li>
</ul>
]]></content:encoded>
            <category>ai</category>
            <category>organisation</category>
        </item>
    </channel>
</rss>