{"componentChunkName":"component---src-templates-blog-post-js","path":"/the-just-say-no-engineer-was-a-zirp-phenomenon/","result":{"data":{"site":{"siteMetadata":{"title":"sean goedecke"}},"markdownRemark":{"id":"0511a3d1-e00b-5a2e-a714-0c71f7bc39d8","excerpt":"The engineer who says no all the time is a real archetype among senior and staff engineers. Their role is to slow things down, to block the development of…","html":"<p>The engineer who <a href=\"https://www.nair.sh/guides-and-opinions/communicating-your-expertise/why-senior-developers-fail-to-communicate-their-expertise#a-senior-developer-is-a-problem-avoider\">says no all the time</a> is a real archetype among senior and staff engineers. Their role is to slow things down, to block the development of features that add complexity, and to ensure that as little code gets written as possible (since code is a liability).</p>\n<p>We can think of this as the just-say-no engineer<sup id=\"fnref-1\"><a href=\"#fn-1\" class=\"footnote-ref\">1</a></sup>, as opposed to the just-say-yes engineer. The just-say-yes engineer is obsessed with moving fast, approves code changes by default, values <a href=\"https://en.wikipedia.org/wiki/Mean_time_to_repair\">MTTR</a> over <a href=\"https://en.wikipedia.org/wiki/Mean_time_between_failures\">MTBF</a>, and tends to ship a lot of code. The just-say-no engineer is obsessed with quality, is happy to move slowly, and blocks code changes by default. Most engineers are somewhere in the middle of the spectrum. By “just-say-no engineer”, I’m talking about the group of engineers who most strongly identify with that archetype.</p>\n<p>The just-say-no engineer is having a hard time in the era of AI. It used to be that they only had to say no to more junior engineers’ handwritten PRs, but now they have to say no to a barrage of AI-generated code, some of it generated by managers and VPs who are politically difficult to say no to. For the first time in their careers, they’re under a lot of pressure to lower their standards and start saying yes. However, <strong>this isn’t because of AI.</strong> It’s because of the end of ZIRP.</p>\n<h3>ZIRP and the just-say-no engineer</h3>\n<p>ZIRP, or the “zero interest rate policy”, is a shorthand for the era of software development between 2008 and 2022 when banks were allowing companies to borrow money at near-zero interest rates. During this period, investors were throwing borrowed money at <em>anything</em>, which meant that tech companies were incentivized to constantly hire engineers for low-risk high-reward projects<sup id=\"fnref-2\"><a href=\"#fn-2\" class=\"footnote-ref\">2</a></sup>. Successful companies would routinely grow from tens of engineers to thousands, who would go and work on all kinds of things: tangential open-source projects, endless technology migrations, rewrites into other languages, and so on.</p>\n<p>It was a great time to be a software engineer. We had a lot of bargaining power, and could get paid top dollar to do almost anything. The bosses largely didn’t care, because (a) teams were growing so fast they couldn’t pay attention, and (b) just having more engineers around was beneficial to the stock price, which was the main thing they cared about. But tech companies did have one problem: with so many engineers running wild, how would they keep their systems from becoming completely unmanageable? <strong>Enter the just-say-no engineer.</strong></p>\n<p>In this environment, having a very senior engineer whose only job is to say no to things was actually quite valuable to the company. There are a few reasons for this:</p>\n<ul>\n<li>Having half of the company’s engineers enmeshed in an endless loop of proposing changes and being told no was totally fine - they didn’t need to be productive anyway, and this way they weren’t impacting business-critical systems.</li>\n<li>It also solved the problem of the 5% of engineers who would get drunk on their technical freedom and make wild proposals like migrating to a hand-rolled database. </li>\n<li>Having a reputation for a very high technical bar is a positive for hiring (and remember, during ZIRP every tech company was always hiring)</li>\n</ul>\n<h3>The end of ZIRP</h3>\n<p>When banks hiked interest rates, almost every tech company immediately laid off 5-20% of their engineers. It was just no longer profitable to keep a bloated engineering staff around to boost the stock price. Instead, companies had to actually make money<sup id=\"fnref-3\"><a href=\"#fn-3\" class=\"footnote-ref\">3</a></sup>. However, that wasn’t a good public explanation for the layoffs, since it sounds weak to admit that you were paying hundreds of engineers to do unprofitable work. Fortunately, the end of ZIRP coincided roughly with the rise of ChatGPT, so tech companies were able to to blame their layoffs on the power of AI. Saying “with this transformative new technology, we’re able to deliver 10x the value with half the engineers” is a much stronger message, even though it doesn’t make much sense (if this is true, why not keep your engineers and deliver 20x the value?)</p>\n<p>Something like this dynamic has been happening to the just-say-no engineer. Tech companies are now more focused than at any time in the past two decades. They are not doing a bunch of random crap anymore; instead they’re desperately chasing new capabilities and features that can make money (mostly built on AI, for obvious reasons). This new environment is <em>actively inimical</em> to the just-say-no engineer. It’s as if a shark got pulled out of the deep ocean and dropped into a fast-flowing river: what was once a powerful apex predator is now disoriented and flailing.</p>\n<p>This kind of engineer used to enjoy implicit (albeit distant) support from their management. If someone complained, they’d often get told “that engineer knows what they’re doing, if they said no, then I trust them”. Now that support is gone. The just-say-no engineer is now being criticized and actively overruled by their management. They’re being told to be more of a team player, to find a way to say yes, or are simply no longer being consulted (with the company’s blessing) on key decisions. They’re getting bad reviews for the exact same behavior that’s been rewarded pre-2022<sup id=\"fnref-4\"><a href=\"#fn-4\" class=\"footnote-ref\">4</a></sup>.</p>\n<p><strong>None of this depends upon AI.</strong> If LLMs had not taken off this decade, we would still be seeing the same cultural shifts in the industry. Companies would still be laying off engineers, and the engineers whose job has been to say no to things would still be upset and confused about why they’re now being punished for saying no.</p>\n<h3>AI</h3>\n<p>Ironically, if ZIRP had not ended, this would be a glorious moment for the just-say-no engineers. LLMs would have thrown fuel on the “engineers running wild” problem that the just-say-no engineers were empowered to solve. Tech companies, unable to publicly or privately cast doubt on AI-assisted coding<sup id=\"fnref-5\"><a href=\"#fn-5\" class=\"footnote-ref\">5</a></sup>, would have relied <em>heavily</em> on these engineers to prevent the tsunami of AI code from swamping the entire company. They would have been paid even better and celebrated like kings.</p>\n<p>Instead, LLMs are adding insult to injury for the just-say-no engineer. They’re forced to watch while other engineers merge AI-generated PRs that would previously have been blocked, and are told to use the tools themselves: to become the kind of engineer they’ve spent their entire careers battling against.</p>\n<p>Worse still, the AI tooling mostly <em>works</em>. It’s not (yet) causing any kind of catastrophe<sup id=\"fnref-6\"><a href=\"#fn-6\" class=\"footnote-ref\">6</a></sup>. The code isn’t quite as clean, and it’s a bit less well-understood, but it’s good enough (particularly in a world where companies are trying lots of new things and abandoning the ones that fail). So the just-say-no engineer faces not just a threat to their livelihood, but to their entire self-identity: they have to either insist that the apocalypse is right around the corner, or accept that their technical role was contingent on a <em>really weird</em> economic environment in the tech industry.</p>\n<h3>Pure and impure engineering</h3>\n<p>Will the just-say-no engineer go extinct? No. They don’t fit well into every single tech company anymore, but there are domains where they’re needed. In <a href=\"/pure-and-impure-engineering/\"><em>Pure and impure software engineering</em></a> I drew a distinction between “pure” engineering, which has a well-scoped, largely technical goal (like building a compiler or a language runtime) and “impure engineering”, which has a poorly-scoped, largely customer-driven goal (like trying out a new feature you’re not sure will work). During the ZIRP era, tech companies did a lot more pure work (for instance, building <a href=\"https://en.wikipedia.org/wiki/React_(software)\">React</a>), and tended to treat even impure work like pure work. The just-say-no engineer is <em>great</em> for pure work, because pure codebases have to have a much higher bar for quality and can tolerate slower development cycles.</p>\n<p>Most tech companies are still doing some kind of pure work, typically in their core infrastructure pieces. This is essential work, but it doesn’t require a huge engineering team, and it’s rarely in <a href=\"https://www.seangoedecke.com/the-spotlight/\">the spotlight</a>. If you’re a just-say-no engineer and you want to stay that way, I would recommend trying to move into one of these roles (and accepting that you’ll have a more limited scope than you did in the 2010s).</p>\n<h3>Summary</h3>\n<ul>\n<li>Some senior and staff engineers operate as gatekeepers, slowing down development and saying no to most things</li>\n<li>\n<p>This was a critical role during ZIRP, because:</p>\n<ul>\n<li>Tech companies had thousands of engineers who were empowered to do basically whatever they wanted, so without gatekeeping the systems would have fallen apart</li>\n<li>Tech companies didn’t care that much if they got anything done</li>\n</ul>\n</li>\n<li>When ZIRP ended, the environment for this kind of engineer became much worse, since tech companies were now actually focused on accomplishing things and the “do whatever you want” era was over</li>\n<li>Like with layoffs, this shift is often blamed on AI, but it would have happened even if powerful LLMs had not emerged at all. It’s an end-of-ZIRP phenomenon</li>\n</ul>\n<div class=\"footnotes\">\n<hr>\n<ol>\n<li id=\"fn-1\">\n<p>Part of the appeal here is the lure of the guru. In kung fu films, those who know martial arts perform furious acrobatics, but the true expert barely needs to move at all. For the same reasons, it sounds profound to say something like “junior engineers produce tons of code, seniors very little, and staff engineers <em>remove</em> code”. Of course this is false. Staff engineers are expected to be able to produce a lot of working code very quickly, when they need to.</p>\n<a href=\"#fnref-1\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-2\">\n<p>I wrote about this a lot more in <a href=\"/good-times-are-over/\"><em>The good times in tech are over</em></a>.</p>\n<a href=\"#fnref-2\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-3\">\n<p>Not necessarily make a <em>profit</em>, but at least bring in revenue.</p>\n<a href=\"#fnref-3\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-4\">\n<p>Or pre-2023, or even pre-2024 or 2025. Cultural change lags behind economic incentives, sometimes by several years.</p>\n<a href=\"#fnref-4\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-5\">\n<p>For fear of killing the vibe (and thus the stock price).</p>\n<a href=\"#fnref-5\" class=\"footnote-backref\">↩</a>\n</li>\n<li id=\"fn-6\">\n<p>If you think there have been more incidents recently, consider that (a) you might be <a href=\"https://news.ycombinator.com/item?id=48086786\">wrong</a>, or (b) that other end-of-ZIRP factors (like increased velocity or layoffs) might be primarily responsible.</p>\n<a href=\"#fnref-6\" class=\"footnote-backref\">↩</a>\n</li>\n</ol>\n</div>","frontmatter":{"title":"The just-say-no engineer was a ZIRP phenomenon","description":null,"date":"May 18, 2026","tags":["tech companies","zirp"]}}},"pageContext":{"slug":"/the-just-say-no-engineer-was-a-zirp-phenomenon/","previous":{"slug":"/how-i-use-llms-in-2026/","title":"How I use LLMs as a staff engineer in 2026"},"next":null,"preview":{"slug":"/will-my-job-still-exist/","title":"I don't know if my job will still exist in ten years","snippetHtml":"<p>In 2021, being a good software engineer felt <em>great</em>. The world was full of software, with more companies arriving every year who needed to employ engineers to write their code and run their systems. I knew I was good at it, and I knew I could keep doing it for as long as I wanted to. The work I loved would not run out.<br /><a href=\"/will-my-job-still-exist/\">Continue reading...</a></p>"}}},"staticQueryHashes":["1146911855","3764592887"]}