Ask HN: By what percentage has AI changed your output as a software engineer?
I think about this a lot; am keen to hear what others' perceptions are. For me; the short answer: about 2x (i.e. 100% faster than pre LLMs). Long answer:
When I thoroughly understand the domain (i.e. business logic and real world problem I'm solving), and am familiar with the tech stack, I'm about ~10x faster for the same or better code quality.
When I don't understand the domain, prompts will be ambiguous or inadequate, the LLM will guess, it will do a month's work in a day, but I'll spend the next 3 weeks refactoring and realising how trash the code was, due to how trash the prompt was. All in all, it's probably still faster than pre AI, but can give a demoralising psychological phenomena where you think something's nearly completed only to spend weeks debugging it, refactoring, and often tossing it away and starting over.
In an unfamiliar tech stack, I can't always spot obvious mistakes (mistakes caused by the AI or the prompt), so it's less productive and more risky.
10-15% of the productivity improvement is due to improvements in the dev environment. I open ~/dotfiles with cursor and tell it a problem I have or ask for a specific improvement. It usually modifies .zshrc, .vimrc or similar (and iterates as necessary if the first attempt didn't work). Due to how fast this is (e.g. 5 minutes), I've made about 20 little tweaks that previously didn't justify the time. They definitely make me happier as well as a bit more productive.
But overall, taking everything into account, I'd say I'm about 2x as productive as before LLMs.
61 comments
[ 3.2 ms ] story [ 58.4 ms ] threadIn the last year I’ve shipped a couple of small OSS tools that I almost certainly would not have finished without AI‑assisted “vibe coding”. Everything I build now flows through AI, but in a slightly different way than just chatting with an LLM. I rarely use standalone ChatGPT/Gemini/Claude; almost all of it happens inside GitHub with Copilot and agents wired into my repos.
The big shift was treating GitHub as the interface for almost all of my work, not just code. I have repos for things like hiring, application review, financial reviews, and other operational workflows. There are “master” repos with folders and sub‑folders, and each folder has specific context plus instructions that the AI agent should follow when operating in that scope, essentially global rules and sub‑rules for each area of work.
Because of that structure, AI speeds up more than just the typing of code. Idea → spec → implementation → iteration all compress into much tighter loops. Tasks that would have taken me weeks end‑to‑end are now usually a couple of days, sometimes hours. Subjectively that’s where the 10–20x feeling comes from, even though it’s hard to measure precisely.
On the team side we’ve largely replaced traditional stand‑ups with AI‑mediated updates. KPIs and goals live in these repos, and progress/achievements are logged and summarized via AI, which makes updates more quantitative and easier to search back through. It’s starting to feel less like “AI helps me with code” and more like “AI is the main operating system for how our team works.”
Happy to share more about the repo/folder structure or what has/hasn’t worked if anyone’s curious.
Some people find it useful, some people don’t, and unless what you’re using it for matches what they’re using it for (which you’re not asking) none of the results you get give you any insight into what you should expect for your use case.
Oh well, whatever. Here’s my $0.02; on a large code base that takes up to 30 minutes to do a local type check in typescript, the net benefit of AI is neutral or negative, because the agent can’t loop effectively and check it’s own results.
AI scaffolded results are largely irrelevant and don’t use internal design system components or tokens for UI and are generally useless.
Objectively measured ticket completion rates are not meaningfully impacted by the use of AI.
Out of date documentation leads agents to build incorrect solutions using outdated and depreciated techniques and services.
This is true across multiple tools and multiple models used, including sota.
1x
It is not more productive.
This reflects on my personal experience in the last 8 months of intense (and company mandated) AI usage at work.
At home, for small personal projects, I would say it’s closer to the 2x you describe, maybe as much as 3x for building and iterating on rich web UI using react.
For example, I do not know rust but I've been using AI to make https://git.sr.ht/~kerrick/ratatui_ruby at a really rapid pace.
Rephrasing the question: By what percentage has AI changed your input quality?
Answer would be around -50%. This is attributed mostly to the vast amount of search results that are AI generated and provide very low density information and miss conveying actual key learning points. This means you have to scan through 100% more text to finally get the information you need to solve the issue. I think this is a low estimate actually.
Introductory questions about a widely used language with great documentation and tons of tutorials are made for LLMs.
Basically, it amounts to being able to give detailed instructions to a junior dev (who can type incredibly fast) and having them carry out your instructions.
If you don't know the code base, and thus can't provide detailed instructions, this junior dev can (using their incredible typing speed) quickly run off the rails. In this case, as you don't know the code base, you wouldn't know it's off the rails. So you're S.O.L.
Need to integrate Stripe with the Clerk API in my Astro project? Claude's all over that. 300% faster. I think of it like, if there was a package that did exactly what I wanted, I'd use that package. There just happens not to be; but Claude excels at package-like code.
But as soon as I need to write any unique code – the code that makes my app my app – I find it's perhaps a touch faster in the moment, but the long-term result isn't faster.
Because now I don't understand my code, right? How could I. I didn't write it. So as soon as something goes wrong, or I want to add a feature, either I exacerbate this problem by getting Claude to do it, or I have to finally put in the work that I should have put in the first time.
Or I have to spend about the same amount of time creating a CLAUDE.md that I would have if I'd just figured out the code myself. Except now the thing I learned is how to tell a machine how to do something that I actually enjoy doing myself. So I never learn; on the contrary, I feel dumber. Which seems a bit weird.
And if I choose the lazy option here and keep deferring my knowledge to Claude, now I'm charging customers for a thing that I 'vibe coded'. And frankly if you're doing that I don't know how you sleep at night.
When it comes to programming in languages and frameworks I'm familiar with, there is virtually no increase in terms of speed (I may use it for double checks), however, it may still help me discover concepts I didn't know.
When it comes to areas I'm not familiar with:
- most of the time, the increase is substantial, for example when I need a targeted knowledge (e.g. finding few APIs in giant libraries), or when I need to understand an existing solution - in some cases, I waste a lot of time, when the LLM hallucinates a solution that doesn't make sense - in some other cases, I do jobs that otherwise I wouldn't have done at all
I stress two aspects:
1. it's crucial IMO to treat LLMs as a learning tool before a productivity one, that is, to still learn from its output, rather than just call it a day once "it works"
2. days of later fixing can save hours of upfront checking. or the reverse, whatever one prefers :)
I would say +110% to remind you of the effort your childhood coaches almost assuredly requested of you, but didn't want to trigger the quibblers who would point out that's impossible (not that there's anything wrong with that)
But I still haven’t dialed exactly what is too complicated for the LLM to handle (and that goalpost seems to still be moving, but slower now). Because it is almost always very close, I often end up trying to fix the prompt a few times before giving up and just doing it from scratch myself. I think in total the productivity gain for me is probably a lot less than 100%, but more than 0%.
At work, many of my colleagues are too busy to collaborate and brainstorm with me, who enjoys it a lot and have a lot of energy for it.
They are classic 9to5 and that's fine, but I like software development and talking about it.
So instead of only doing it by myself, or tiring out my colleagues, I collaborate with AI.