I think on the frontend side we're going to see a lot more scope for teams.
On a backend infra side it seems as hard as ever. Still have to think really hard problems, think deeply about data structure and flow, and deal with second- and third-order effects. Or even harder because the models like to confidently lie.
The harder question is how we train people but that doesn't seem insurmountable either. Most of us cut our teeth as junior engineers somewhere, implementing tasks that Claude can now do without breaking a sweat but was that really the most efficient way to train and learn?
idk how anyone else is doing it and managing all of this. supposedly there's people with large teams of agents that they can just trust to do everything end-to-end.
I guess the goal is to stack context rather than spread it.
I find it incredibly exhausting otherwise. It’s a skill I don’t have in spades. I’ll have to develop it, though.
I don’t think the people trusting agents end to end are getting the quality they think they are. I’m bullish on AI as a permanent and genuinely useful tool in our kit, but I’m not seeing signs that you can actually let them loose at all. Looping on a very well defined problem, sure. But open-ended tasks across large infrastructures and complex domains, no, it’s going to be duct tape and sprawl as far as the IDE can see. It’s going to sprawl faster than context limits can grow, and the mess will only get worse.
From what I can tell, the solution is an ever-expanding roster of agents to make piece work of these immense tasks. The token expense for this approach is insane, though. I used deep-research in Claude Code today and it dispatched 103 agents and consumed something like 3.5MM tokens in ten minutes. That can’t be the future, can it?
I can do more now…so I do - it’s really that simple
And it’s way more exhausting because there’s no room to breathe - fresh code to work with every few minutes with prepping for the next set of tasks in between
On the one hand the dopamine’s got me hooked on this like a video game
On the other…I’m as overwhelmed as ever line you said, even if it’s my own doing
It’s not that I don’t disagree, but I wonder what’s going on. Maybe it’s the IPO
If AI progress stalls now or grinds to a halt, we get to keep a lot of new jobs that are going to show up (it opens a lot of doors), while maintaining software devs as an interesting career.
Egoistically, I would love that.
If it keeps going and software devs get replaced, so many jobs are going to disappear.
So I’m thinking we’ve just about reached apex with LLMs, and they have failed at replacing software engineers (companies can freeze hiring juniors at their own, future peril using any excuse they like).
Semi-related, but I really want to see the long term maintenance outcomes of all code being produced by these software engineers that were apparently just closeted project managers. I feel like having 50% of the engineers in this industry just telling Claude Code, "yeah that looks good to me" 150 times a day is going to result in an incredible amount of software rewriting.
On the other hand, I notice the AI-fundamentalists(I am not sure how to refer to people within that group) just say that you won't be doing any hand coding anymore and you'd "just" ask something like claude to maintain it or re-write.
But immediately, I hate AI work in a company setting. Mandates intentionally want humans managing more “features”. When you get stuck owning someone else’s AI “feature”, it’s game over.
The new hope is that as a founder, the stimulating and creative parts of working with AI are persevered. Fingers crossed so far so good.
Well, yeah. There's nothing to be proud of. When an LLM is doing the work, human expertise is relevant. My employer has been trying to tell us that our skills still matter and are needed, but that is very obviously bullshit they are saying to keep people placated while they try to line up AI replacements for everyone. You have my sympathies, brother.
For me, part of craftsmanship is the quality of the shipped product. (I’m also willing to use CNC tools while doing hobby woodworking; others think that takes away the craftsmanship; I think it changes how the craftsmanship is experienced and applied.)
In the old days we programmed systems by literally wiring them. There wasn't much work, only a few "programmers" were employed. Then somebody came up with Punch cards that was much more vision than wiring the systems directly. This opened the door for a lot more people to use them and now programmers were busier.
The punch cards didn't scale either so eventually we created panels with buttons so we could type the programs into the computers. That was more efficient and now all the sudden it lowered the bar entry and more people who are employed and doing the work.
Assembly language to machine code compilers to assembly language high-level languages and LLMs.
Every time developing software gets easier, it only increases the amount of work required. I'm busier today than I've ever been in my entire life.
What's going to happen to software engineers? They're going to be overworked and they're going to be given more work and the cycle will never end.
I have the same sentiment. So far, no indication that I can be replaced yet. Maybe some day, but right now I'm more productive because of AI (*), but just as if not more busy.
(*) Such as: Obviously the coding side, but also...
AI is helping scrape logs to diagnose bugs, and doing so with high accuracy, much, much faster than I could have done.
AI is taking care of my work journal (basically how I manage my own state) by scraping slack, emails, git commits, ticket state changes and everything else, and updating and maintaining my journal each day. I can't overstate how pleased I am with this. I am usually pretty diligent but if I get out of the habit, I could go weeks before I was back in. Now it is trivial and I always do it.
And more.
Making it easier/faster doesn’t increase leisure, it increases the demand for (cheaper) software.
Under capitalism, the choice is always the latter. You correctly identified the pattern that Marx described over 100 years ago. The capitalists own the tools and control the conditions of our labor as software developers. They extract that productivity gain as surplus value, and will never choose to willingly give us more leisure time.
go do a good job. it's increasingly rare nowadays.
the frauds are growing.
I can only guess that a lot of the engineers who went into software purely for money were all too happy to distance themselves from writing code and really don't want to go back...
I am very familiar with this because I write Haskell. Which compiles to Core. Which is actually an extension of Sustem F which itself is an extension of lambda calculus. That then compiles to STG. That then compiles to Cmm. That then compiles to assembly code.
See how that isn't the same as an LLM? To the point where your comment is a non sequitur?
Also ai makes things just resource constrained, not labour - whatever you imagined, you could make happen, just needed to “talk to an ai” about it. Lots of terraforming Mars / Venus in that book were imagined like that.
But it also analysed the social / political / behavioural aspects of it. Places that had to preserve old power structures - aka US/Europe/China - got engulfed with mega corps controlling everything etc.
But Mars - where people had enough freedom to imagine something different, came up with political/financial structures to incorporate all of that, and thrived.
I think it tried to play the card of “if US was being created right now - what would its ideals be” If you had a huge tract of land that was “free” and nobody (powerful enough) claiming it, and a population that didn’t yet have strong allegiances and could be persuaded to band together, what would AI, tech and all these years of progress allow us as humans to achieve politically.
Which also makes you feel kinda sad for the US in that world - it is the old rusted power center that can’t innovate and is stuck in the past…
Now it’s only sci fi of course, but it was quite interesting to imagine a world where AI gets smarter and smarter but never reaches that “sentient” threshold. I think the whole trilogy aged incredibly well all things considered.
Manna - https://marshallbrain.com/manna1
If white collar jobs are decimated the economy will collapse, because it's still - nominally - a consumer economy, even though most of the spending comes from the top 10%.
If 25% of that top 10% is suddenly out of work, that's a huge chunk of GDP gone, and a likely depression as the knock on effects spread.
I don't see anyone thinking about this seriously. [Something something UBI] is not a serious attempt to deal with the problem.
Ultimately you end up with an economy where most humans are surplus to economic requirements and will literally be murdered by economics.
Or wealth and opportunity are widely distributed, but "jobs" are nothing like they are today.
Given where we are now option 1 looks closer.
any multilingual person knows that's simply impossible. some things just don't translate, all the subtleties and much of the meaning are lost. even a galaxy-sized superintelligence made of computronium couldn't possibly translate even something as mundane "she sells seashells on the sea shore" into German without either substituting it for another tongue twister or providing a lengthy translator's note.
But it was so great as a tool that some engineers didn't want to deal with the burdens and limitations of the physical world, and started focusing on software more and more.
Then the software engineers came, for whom the physical and mathematical aspect of the whole thing was just a distant history lesson (and preferably a problem in someone else's computer).
And after software engineers, the only constant in the entire ordeal will remain: engineering, in a shape or form that very likely nobody can predict right now.
I appreciate your comment but the entire world I happened to experience in my coming of age was at the dawn of the consumer internet. And so “web stuff” was how I cut my teeth. And its my profession. And i never went to school for it, im basically a dumb untrained web dev, borne from the script kiddie days.
There’s a stigma to it sure, but im well past it. All to say I just dont think CS principles down to the physics level is the root and all is an abstraction. Theyre just different things now.
Not my point either. I was just referring to the tooling changing over time, with the discipline constantly evolving forward nonetheless.
That is to say, somewhere along the way software got really complex, and really artistic, and really full of hubris.
My thoughts are distilled in a single page:
https://devarch.ai/trio-paradigm.html
I doubt we will ever need a large team to build software again. PMs will be fractional. Product owners and subject matter experts will become more valuable. And engineers that have deep experience with things like Domain-Driven Design will thrive and vibe coders will eventually be shut out of bigger roles.
but that seems to contradict what you say here:
> vibe coders will eventually be shut out of bigger roles.
Isn't vibe coding driving that greater productivity and negating the need for large teams to build software?
Planned, architected problems led by experienced dev/arch’s will be where success is measured.
Or, thinking about Windows and macOS in the Jobs era, perhaps the difference is more between the quality of taste. Microsoft focused on quality code, and came up with COM, architectures where an instantiable button is 13 levels of inherited classes, and things like DirectX, where the architecture is clean and extendable, but forces every developer to do things like allocate their own @#$! framebuffer. High level of craftsmanship, but poor taste. Jobs tended to focus on the user experience and had good taste, so the results were generally pretty good, but I got the feeling that the code wasn't as much of a priority.
That's a sentence I have certainly never read before!
Programmers, on the other hand have a lot less leverage to bring to bear.
Of course, the above assumes that the job cuts are actually AI related, and not just cover for having to fire people because ZIRP (Zero Interest Rate Policy - aka free money) is over.
There's no such licensing, unlike other fields such as medicine you are not required by law to hold any license or qualification to perform software engineering.
Here is a post that summarizes what I mean: https://substack.com/home/post/p-200064883
Since engineering with AI is still very technical, I would wager that software engineers would stretch into less technical areas of software development rather than TPMs stretching into technical areas. I only say this as someone with experience with AI and I see how easy it is to write bad code with AI if you're not aware of what it's doing.
P.S. Sample size is currently small but I've also gathered a fair amount of qualitative data to indicate both of these things. Of course measuring productivity is also far from a science.
In my experience, this is what ended up happening.
Understanding of product and business has always differentiated me though, and this is why I've never really stressed about any of this.
Another thing I've noticed - most developers are really bad at reviewing code - whether AI wrote it or not. Its really hard to make your brain sink in deep enough to really evaluate what you are looking at. I think a lot of developers never - or almost never - find bugs based on code inspection alone. Once they are written - there is often no other practical way to confirm that tests actually test what they claim to other than inspection. And bugs in design are still very costly in this new world.
As long as any human still has an edge in any aspect of the software development process - people who can force themselves to really think through proposed designs, test plans and cases and code will be really valuable.
You're describing experience, not "forcing themselves".
On the dev side, the differentiator is enough of this experience that using AI is actually significantly slower for everything but literally typing the code.
On the lower end, there are a lot of companies whose sole purpose is to build websites for other small/medium sized businesses that don't care enough about tech to pay for a full-time engineering team.
For those companies and developers, I suspect the increasing rise of AI will be a bloodbath. If your whole value proposition is "we can build your website using WordPress/Squarespace/Shopify/[CMS name here]", then AI can basically do about 95% of your job. I suspect a lot of these companies are going to shutter when clients take the work in-house due to AI, and many others will probably lose about 90% of their employees due to AI solutions being generally 'good enough'.
On the other hand, if your company is tech focused and needs to implement more complex functionality as a selling point, then there'll still be a place for software engineers even with AI. This is where the engineer as pseudo project manager thing comes into play, and where the actual coding side of things is probably going to be limited to things the AI can't implement properly.
Both situations will probably see a significant drop in the number of software engineers employed there, but the latter feels like it'll still have some room for a career.
The politics of corporations is such that they don't actually want near infinite productivity. They require churn, cycles, a cadence.
I can see very few reasons why AI couldn't replace their expertise for all of us non-experts, the same way it did for software development.
So taste is still a thing. Software engineering will have to develop (uh oh) taste and the ability to say no. Your app could include a button to make the device scream like a monkey, but if management tells you it has to have a feature that makes no sense, the answer is no.
What I don’t get is using AI agents feels basically the same as what I used to do with legacy codebases of 100k–200k lines—understanding the codebase and making partial fixes or adding features. To me, it feels like nothing has changed.
Most of my career has been about finding parts that won't break within the overall code structure—without necessarily knowing the entire detailed specification—and adding features or fixing bugs there. So I feel like it's no different from finding and fixing small issues and bugs in a large codebase written by AI.
Of course, when delivering a solution that's 70,000–80,000 lines long, there is a change things that used to rely on templates and CMS tools can now be created more diversely using AI. But aside from that, I don't think things have changed as much as people say. It might be different for those who build things entirely from scratch with AI, though.
My code writing ability has declined, but I'm not really seeing a dramatic change in workflow
Now I work with code written by AI, adding features and modifying it… Most of the codebases I’ve seen were bad anyway—there was no good code to begin with. When coding with AI, I split tasks into P0, P1, P2 based on importance. For P0, I write everything myself. For P1, I write the draft and AI implements it. For P2, AI implements everything. For P0, I only handle things that involve responsibility, like payment logic or login logic.
I don't participate in open source, so I don’t see big changes. The only thing I notice is that AI speeds things up a lot—for things I used to understand by reading documentation and examples, now I can generate them much faster. Personally, I wish open source projects had more simple, short examples in their code
For decades, software engineers have been smug toward a lot of surrounding professions. Look at how they treated IT because developers thought they were server and network experts. Then cloud came along, and some of that work got moved over in the name of DevOps.
Frontend and backend engineers were also treated unfairly at times. Then came roles requiring someone to be an expert in “full stack,” which I never thought was fair unless it paid a ton of money, which at times it didn’t.
Now software engineers are being obfuscated away. Well, for a long time, software engineers acted like their shit didn’t stink. Maybe that was true for a while. Unfortunately, I’ve seen a lot of my colleagues not care who they walked over. But guess what, there are a ton of people out there who are going to be perfectly happy hearing the cries of software engineers now.
“Be careful of the toes you step on today. They may be connected to the ass you need to kiss tomorrow.”
>Nevertheless, my point here was to show a few of the ideas and directions I've been considering, and I'm keen to hear from others what you're thinking about too.
I decided to study computer science in college as a hopeful 18 year old who wanted to learn how video games work and maybe work for a development studio. I needed to find a job right after college, and I ended up going the full stack route. 10 years later (now) I'm working remote, making decent salary, but never fulfilled my original purpose for studying computer science. What's gonna happen to this software engineer? Anecdotally, I'll ride my IT job as long as I can while using AI to learn about game development.
In my personal experience, the vibe coded solutions are incapable of delivering "safe" changes outside of anything trivial without breaking something. Folks now just seem to think this is OK? The result is software like my password manager and banking apps no longer reliably work. The trade offs (currently) just aren't worth it imho.
Maybe once we get context windows in the 100M range these systems will handle large scale (and distributed in my case) backend systems just fine. They most certainly are not at the moment, at least not to preexisting backend software systems of modest complexity. Not even close.
The few lucky ones to stay employed, get to be promoted to technical architects, and everyone else whose passion was equivalent to brick layers has to find something else where humans haven't yet been replaced by robots or self service machines.
When each team member gets more productive we're not doing e.g. 5x more output, we're doing more with less (team size).
It's tiring in a different way, but without the flow state or "high" of solving a particular problem in a clever or intuitive way.
Some days I enjoy shipping a change that would never have been greenlit for the sprint points it would have required, other days it's like herding cats and I'm tired with nothing to show for it.
Given the quantity of such companies that exist, I'd expect a lot more jobs for software devs. Somewhat different, sure, but not fundamentally different.
So the problem for me is that I’ve noticed a trend with my coworkers- they usually don’t have a formal CS background (e.g., Comp Sci degree), their resumes are unimpressive, and they have personal websites where anyone can download a copy of their resume. I haven’t seen this at any previous job. It’s just weird, man. Anyway, so my problem is when they are purported to be the best of the best at this company, and they’re chugging the LLM kool-aid, I’m struggling to figure out whether they’re really ahead of the curve and getting the drop on the rest of us, or they’re doing basically no work and waving through each other’s PRs with little to no oversight on what the LLMs are writing. The bush league nature of many of the bugs I’m seeing going all the way to prod makes me think it’s the latter.
Meanwhile, these guys and their teams are completing an absurd number of story points each sprint. My team is dead last (and coincidentally we’re all pretty anti-AI for writing code).
I’m waiting for the other shoe to drop. I’m waiting for the C suite to call our project a failure and lay everyone off. The product generally works, though I think if the devs were truly rockstars, things would be much smoother. It seems like LLMs are letting middle-of-the-road or mediocre devs appear to be rockstars purely on output speed. Nobody in this org cares if the output has 4x the bugs it should have, just that it was completed quickly.
The main issue I think is that nobody- including the rockstar tech leads- knows how the system works. They don’t know the code. There’s a bug and it takes forever to track down. Don’t ask about unit tests.
I think in a perfect world, these LLMs are treated like another tool rather than another person- meaning you and I still write a large portion of the code, and we read and understand every line- especially the lines generated by LLMs. It’s still a huge productivity multiplier for me to not have to remember how to do mundane things like write out arrays into CSV files- before I’d find a close implementation on StackOverflow and tweak to my needs. Now I can just describe what I want the CSV to look like and Claude Code generally gets it right on the first try.