6 ms·
It most certainly will replace software engineers. What's missing is, as the article suggests, the "Delivery" bit. But that's not the realm of software engineer
by baalimago 4mo ago
It most certainly will replace software engineers. What's missing is, as the article suggests, the "Delivery" bit. But that's not the realm of software engineers, that's the realm of DevOps/SRE/Cloud engineers.
I work as a cloud engineer and have been contacted by multiple non-engineering friends who have now been able to create their pet projects from scratch in different languages and have it running locally, as webapps and native apps. So what they are missing is a platform to easily deploy and maintain their projects, much like a "normal" developer would. Right now it's quite tedious to set up this scaffolding, but it's absolutely possible with AGENTS.md, skills and rigid hollistic tests. Once done, non-technical people can continue developing independently without hiring any software engineers by simply telling claude/codex what they want. Claude/codex will then be able to make judgement calls based on the preset architecture, which will guide the non-technical user.
So in my anecdotal case, AI has already replaced several software engineers. Once scaffolding like this is productized, I suspect that greenfield projects can be managed entirely from a product standpoint using agentic coders + platform engineering. And that is today. Imagine in 5 years.
- nicce 4mo ago> It most certainly will replace software engineers. I would say it will most certainly replace software developers. There is a subtle difference between these terms.
- tvink 4mo agoThere truly is not. Software engineering is not different in any meaningful way. Sure 30 years ago in waterfall land we were emulating the project management of engineering, with miserably expensive results. But it's all the same now. It's like differentiation between coding and programming, it's different in everyone's head.
- nicce 4mo agoIf there is no difference, then it is just the result of everyone inflating the term in their CVs/LinkedIn etc. Software developer typically is the one which builds typical CRUD app, front-end, back-end with database and something around that. Their main job is to make the software to apply clear business requirements on software level, while the software itself is not likely revolutionary. Or they are not the responsible ones to make it revolutionary. They provide code in demand. Then there are engineers that may apply math problems to software and optimise and develop new algorithms, compilers etc. The software itself might be revolutionary and the business.
- vovavili 4mo agoIn a landscape like that, good luck proving to a hyper-cautious employer that you actually are a skilled software engineer and not just a larping ticket shuffler. In the near future, I fear the person who will decidedly be able to prove that with Olympiad placements or a swarm of unique side projects is the kind of person who might as well just go on and start his own tech startup. Most of us here at least have some track record of employment and seniority, I suspect brilliant junior engineers will be hopping from internship to internship like they do in top-level finance.
- keybored 4mo agoJust changing words and saying (perhaps) that one is “just about code” and the other is about “architecture” rings hollow. LLMs can think (like submarines can swim) so the only question is how well.
- wiseowise 4mo ago“Software developers” and “software engineers” distinction has the same energy when one uses to pat oneself on a back when they call themselves “expat” instead of an “immigrant”. You write code, all the huff and puff around “architecturing”, and “alignment”, and “knowing what to build” is just vapor. I’ve never met “software developer”, outside of online forums, who did “coding” and none of the latter.
- rspeele 4mo agoYep. "Developer" was already an inflation over "programmer". Sometime in the late 2000s/early 2010s people started saying, oh, a programmer means you just type in the code to implement requirements, a developer actually understands and can create the requirements to meet the business needs! Like that wasn't what people were already doing for decades and calling "programming". edit: I guess it was offshoring that encouraged the self-marketing as a "developer" (not one of those programmers you can get anywhere for cheap) just as AI is doing the same thing with "engineer"
- drstewart 4mo agoRuby on Rails generators could build toy projects in like 3 clicks 15 years ago, a Twitter clone being the famous one. Software engineers still continued to exist somehow.
- firmretention 4mo agoI'm not saying LLMs will replace software developers, but this is such a ridiculous analogy that it hints to me that you've never seriously tried the latest tools.
- owebmaster 4mo agoThere's nothing ridiculous about the analogy. Not only Ruby on rails is better than most vibecoded apps but also "git clone"
- firmretention 4mo agoIt's ridiculous because LLMs are far more capable. There was just a thread on HN the other day where multiple people shared experiences being able to decrypt, reverse engineer, and update the firmware of some long forgotten embedded device with zero background in the field using LLM coding tools. And you're comparing that to a preset generator.
- fsloth 4mo ago"has already replaced several software engineers. " I think this is incorrect, unless your friends employed software engineers, or would have employed software engineers.
- baalimago 4mo agoThat's the point: they would have. Now they spend money on tokens instead (and a equity to me who set up their environment)
- jvanderbot 4mo agoIf it works, it works. But you, sir, are a software engineer building and selling software and software maintenance to people with money / equity to give. You are your own counter example at the moment.
- altern8 4mo agoThey weren't going to, if not they would've done it already in the past. You're not going to spend $30,000 and weeks of your time just to see if an idea you had under the shower can make a few bucks as a side project, but now that it's a 5-minute thing that costs you $5, why not.
- criley2 4mo agoIn your example, those projects were not the domain of engineering. Your friends couldn't afford expertise and those projects never would have been made before. Therefore, these are net-new projects that replace nothing that came before. This is common in technology, especially software, that improvements in efficiency make software cheaper and expands the total pool of possible software. And, even if one of the "one button shipping" platforms (and there are many) was hooked into the agent, your friends will hit major problems that they and their AI cannot solve. Whether its tech-debt hell, a major security breach, or something else, any sufficiently complex project will require expertise. Will be a fun day when a European regulator asks a friend about their GDPR compliance and their agent is like "shrug"
- raffael_de 4mo ago> Therefore, these are net-new projects that replace nothing that came before. this and on top of that they'll hit a wall and require human intervention sooner or later if those projects are actually productionized.
- Lionga 4mo agoSame way 3D printing replaced all common goods, can be done by anyone. Why not just print it yourself?
- nicce 4mo agoThe consumer grade 3D printing is just now closing with the factory-level quality. Still not completely there. Is the quality difference similar vs. comparing human made software and LLM generated?
- owebmaster 4mo agoSimilar? No. Vibecoded apps are much, much worse.
- gedy 4mo agoLike with 3d printing, most people are kind of clueless about what to make and just not motivated.
- red75prime 4mo ago"Same way"? I struggle to find the similarities. Cheap 3D printers have a distinctly different capability profile from machinery used for mass production. What about coding agents' capabilities is distinctly different from those of human coders and 100% will not change?
- the_af 4mo ago> Same way 3D printing replaced all common goods, can be done by anyone. Why not just print it yourself? I don't think the analogy works. 3D printers are still fiddly, require a lot of know-how, take up space at home, resin printers often use toxic materials, and are generally something for which you need specialized equipment, supplies, and knowledge. Comparatively, the latest LLM models are much easier to use without specialized knowledge, take up no space in your house, and give decent/good results. Again, not entirely there yet, but this is moving faster than 3D printing tech.
- justAnotherHero 4mo agoDeploying software has been reduced to just running 'vercel' in the terminal, something the agent has zero problems with if they were to just ask. Distributing desktop software is a bit harder depending on the platform. The gap between a pet project and great software is still very wide and I have a hard time believing that it will ever be bridged. I don't see how a solved problem even before ai is the thing that won't be replaced first. I struggle to believe a personal project requires complex infra
- LogicFailsMe 4mo agoTBF the anti-AI artists are insisting AI will never create great works of art. I disagree. But I do agree with Richard Sutton that it would need a reward function steering it towards a popular perception of great art, whatever that may be. I can approximate that with sampling and using my subjectivity to pick the ones I like most and then iterate on variants thereof until I am exhausted/satisfied. That's not the same thing because I am in the loop. But RLHF and RLVR demonstrate the path is feasible IMO. Sadly though, if you tell people a work by Monet is AI art, they do the predictably stupid thing about it so the game is rigged. W/r to code, I do enjoy playing designer and product manager on personal projects after decades of full-stack development and design, and by full-stack I mean all the way down to machine code. The anti-AI retort is complaining I wouldn't be doing anywhere near as well without those decades of experience. Fair point IMO, but the kids who grow up around this technology will likely expend neural plasticity on wielding it far more effectively than the boomers and GenX ever will. And getting an AI to work with them once again seems like a reward function problem rather than an intrinsic roadblock to me. All while acknowledging it's much easier said than done. I'm just not going to bet against ingenuity both organic and electronic. However, the incessant mania and panic episodes around AI that just keep happening seem to be the algorithms monetizing enragement and fear to me. That's a real and bigger problem IMO.
- euwuw 4mo agoThis reward function goes against the essence of machinery - there is no reward function in machines. That’s what so great about them.
- gib444 4mo agoWhy is scaffolding a PaaS project beyond the current capabilities? Do LLMs not know about the PaaS offerings of GCP/Azure/AWS, Heroku etc? That stuff has been IaC for quite some time now > So what they are missing is a platform to easily deploy and maintain their projects, ... Right now it's quite tedious to set up this scaffolding...Once scaffolding like this is productized You kind of sound like you're pretending PaaS doesn't exist. Have I misunderstood?
- torben-friis 4mo agoGeneration and maintenance are very different beasts. There are engineers that work making a 2 weeks app that is never revisited again, I guess, but I don't know anyone that makes a living from that. Maybe the "WordPress site for your business" gigs. The issue comes when you have 432 functionalities and have to add the 433 without interfering with the others. Or when you cant afford slightly wrong. Or when each functionality adds complexity at a higher rate than an engineer and over time the projects gets to an unmanageable size.
- Yokohiii 4mo agoI mean that is a classic problem right? We know that outsourced green field projects done by third parties are tend to be low quality or at least are slow and expensive to integrate into a business. Many issues arise when you try to deploy these projects and more show up once it is out. Eventually there is someone reasoning how to fix the problems. An LLM wont do it on it's own, there are too many invisible constraints. One can argue that software engineering will fundamentally change, but there is and will still be a need for people that know what software engineering is and how to apply it.
- slyzmud 4mo ago> The issue comes when you have 432 functionalities and have to add the 433 without interfering with the others. Or when you cant afford slightly wrong. Or when each functionality adds complexity at a higher rate than an engineer and over time the projects gets to an unmanageable size. But that's not a problem on small projects. non-technical people only create software to scratch their needs, they will probably will need 20 or 30 features, never 432, making their system much easier to handle. The problem with enterprise software is that it has to support a very large combination of features designed for different clients. That's why it gets so complex, but if the software has to support a single client is waaay easier.
- torben-friis 4mo agoSure, there's a place for disposable, ultra custom apps that AI can cover. I vibecoded one to help me clean up my local media with a tinder-like UI for discarding/keeping photos, for example. That's not going to substitute many engineers though, for two reasons. One is that "app that helps a single-digit number of people" was never a viable business in the first place. The other is that you can't substitute all corporate software with a combination of disposables. Some stuff is complex even if the "surface features" are small in number. Say for example that you want a custom web browser, "surfing the internet" might feel like a single feature for a non technical person but it's made of many moving parts inside.
- raffael_de 4mo ago> who have now been able to create their pet projects > So in my anecdotal case, AI has already replaced several software engineers. Those projects wouldn't exist without language models to begin with. That means in your anecdotal case AI hasn't replaced any SEs.
- eurekin 4mo agoYeah, it won't. SWE here with a sidegoal to tackle the deployment side through various means (homelabbing, grabbing sre/cloud/observability tasks at work). The biggest observable improvement in my post and pre ai development is the ability to tackle two projects at once, if the agent is on track. If not, and I have to do a deep dive to debug, it basically regresses to plain old everything like before.
- anygivnthursday 4mo agoLLMs can now quite trivially write Terraform or Ansible code to setup infra, maybe harder for non-engineers to make those prompts for now. But ongoing maintenance and monitoring would require an online agent evaluating signals and deciding when to take what action or prompt the user. Like autoscaling decesions can be already automated and some failover/recovery for simple cases. Probably people releasing hobby projects do not need too much. And then there are things like exe.dev to wrap that and make it simply to give an execution env instead of you and your agent managing your own infra.
- altern8 4mo agoAI-assisted coding is great, but vibe coding IMO is only good for disposable prototypes. You're not going to vibe-code a financial app that needs to be maintained indefinitely. You're also not going to mess with legacy systems. I think that AI has definitely replaced _some_ engineers, but I don't think your use case is relevant. Your non-engineering friends have created their pet project because they now can, but it's not as if they were going to hire anyone to do it, right? They haven't up until now.
- jaymzcampbell 4mo ago> it's not as if they were going to hire anyone to do it So many of the comments here seem to be glancing over this point entirely!
- jvanderbot 4mo agoThe thought experiment I like to have is imagining my company running without engineers and just LLMs. The thought of my CEO or sales guys sitting down and reading/redirecting LLMs all day is just hilarious. My CEO is highly technical but he has other shit to do. The first thing they'd do is hire someone to do that for them, and the best person for that task is someone who knows how things _should_ be. Now they'll probably get someone on discount, because our salaries are going to tank due to evaporating demand, but I sincerely doubt it'll be zero-d demand. What I expect is a 3D printer moment - tons and tons of homebrew / shareware style software coming out, an explosion of boutique code. I also expect a CNC machine moment - vastly reduced demand for hands-on specialists, and more babysitting of automted processes. But it's those machinists who got those jobs. We could be looking at a long term suppression (~80% reduction?) in demand though until economic growth produces enough demand to employ ~50M software engineers again, if ever. The cliff is unlikely, I'd guess the unregretted loss will be replaced by AI productivity every year, and some portion of growth will, too. I also guess that all the AI companies can become massively successful without causing much unemployment just by following Claude's model - charge a certain tangible % of a salary for assisting the worker. https://jodavaho.io/posts/ai-jobpocolypse.html https://jodavaho.io/posts/ai-jobpocolypse.html
- mikeocool 4mo agoI am currently making a fair amount of my living helping out CEOs like this. The quick-sand that LLMs let non-engineers build overtime is pretty remarkable. A project usually starts with a list of basic looking cosmetic bugs that the stakeholder is having a hard time getting Claude to fix. Literally every bug unearths a heap of other bugs or architectural problems. As an example yesterday I was looking at a basic, “record XYZ not appearing on list view” bug. Turned out that Claude had built the list view (which should have been backed by thousands of records) to only ever load the first 100, and then do all organization, counts, sorting and filtering on the frontend on that dataset. Also found a query that was taking ~18 seconds to query 1 record from a set of ~60.
- skulk 4mo agoThese are very interesting anecdotes. The feeling I've been getting is that the inherent complexity in software hits people at prompt-time because they simply don't have the words to express what is needed. (edit: or don't have the knowledge/patience to interpret what the LLM spits out)
- deleted 4mo ago[deleted]
- owebmaster 4mo agoThere's no lack of such platforms for more than 5 years, they all have free offers and software engineers still have jobs.
- devmor 4mo agoA “cloud engineer” is orders of magnitude easier to replace than a programmer - there are entire SaaS products that have been trying to be a drop-in replacement for your career since AWS was out of the gate. The fact that you still have a job should clue you in that this isn’t going where you think it is, regardless of the state of your friends’ pet projects.
- prmph 4mo agoI don't get this reasoning, and yet it is pervasive. Just because non-engineering people come up to you with apps they have created does not mean AI has or will replace software engineers. Consider: - I can read about my symptoms from Dr. Google, try a lifestyle change, herbal remedy, or over-the-counter drug, and that may actually work. This does not mean in the slightest that doctor are being made obsolete - I can create music with generative AI, without needing any understanding of music theory, no taste for music, no creativity. This does not mean people with musical talent are being made obsolete at all. - I can, with the help of AI, work on DIY projects around the house. This does not in any way mean engineers are being made obsolete. Who will be helping domain experts to elucidate what they actually need through prototype-refine cycles? Who will be writing and maintaining the operating systems, the languages, the version control systems, th editors and terminal emulators, knowledge/document management systems, the PaaS platforms, etc that these hordes of hobbyist software creators depend on? Have these people actually properly tested their creations to ensure they are robust? Do they even understand the edge cases that could arise? Is their work secure? Cooking up some quick thing based on some prompt does not equate to engineering whatsoever. Perhaps you fail to see this because, like many others, you subscribe to the fallacy that the value of software engineering primarily lies in the code produced itself, the arrangements of bits manufactured. It is not; a project is primarily valuable as a theory and abstraction building process. See https://pages.cs.wisc.edu/~remzi/Naur.pdf https://pages.cs.wisc.edu/~remzi/Naur.pdf
- anonzzzies 4mo agoI guess maybe it's your definition of 'software engineers' ; if you meant that to mean people who know what they are doing, then there is a massive gap. However if you mean people who are hired as software engineer/developer then it's already replacing many and will replace many more. Many of these are worth absolutely nothing and never have been. They survived because software was considered magic and they talk a lot in meetings and 'jumping on calls' to appear busy and engaged, not because they ever were good at making software. That's the vast majority; millions upon millions in outsource factories for instance who just do exactly what a ticket says and then go to the next without caring if the rest implodes behind them etc.
- mikeocool 4mo agoFor most apps, delivery has been some equivalent of “git push heroku main” and setting a DNS record for like 15 years. That’s especially true for most of the apps being vibe coded today. The fact that “cloud engineer” is still a job suggests that the simple case is not the one driving employment. There are definitely more devops/sre/cloud engineer roles today than there were in 2009 (and I’d be willing to wager you if you included pre-devops sysadmins in that count, there’d still be more total roles today).
- NichoPaolucci 4mo agoWe have an instance where the non-tech team has started building tooling for themselves (because the technical team is overburdened with work). Essentially a small application idea that interfaces with the larger system. It was POC built in 2-3 days, 3 or 4 commits. Impressive - however the person that built it has now made 400 more commits over the last 3 months to this project as it has been modified, it’s essentially become his part / full time job to just build + maintain this new application. They have become a software developer. An untrained one, one that doesn’t understand security or best practices. Maybe as Claude gets better the load will be lightened and it will not consume their day, but as it stands - at my company, all of these initial “vibe apps” are becoming maintenance for them, taking up more and more of their time. It’s obvious that they want MORE software, not less. So traditional software engineering is probably gone, but managing expanding platforms and handling security, complexities, documentation, business logic, all of that is still standing in the way for my company. So you are correct saying that people can build projects with text, but I feel that “set and forget” has never been the case for all but the simplest software. Someone still has to manage all of it, I think. Whether trained in SE or not. My guess is that developers who have experience can still outperform untrained people, though the builders who are curious by nature will quickly get up to speed. The game is changing but traditional developers have a huge upper hand, because we’ve always wanted to know how things work under the hood. I could have built the current vibe app that they built in a hour using AI, it’s taken them months.
- fragmede 4mo agoIn that sense, AI is creating software jobs. Not very good ones, and they're being paid way less, but a jobs a job, I guess. We have to face the music. it's not that AI will take software jobs, it's that it will make them pay a janitor's wages. But while the AI isn't good enough to do it all, While there's still a vibe code wall that non-developers run into, senior developers will still have a job scaling that wall. That walls getting shorter as models get better, but for right now, this second, even with Anthropic's Fable, our jobs are safe. We have to step back and look at the bigger picture though. Stable Diffusion came out and suddenly I could generate images that I didn't have the patience to use Photoshop or a pencil to create. But after playing with it for a couple of days, I got bored of it and went back to coding. Sora came out and at my fingertips I had the power to be a movie director. A couple of days later, I went back to writing code. Or by that point, directing AI agents to write code. So after the last software developer loses their job, having been replaced by robots, I can't imagine I won't still be the same person underneath. I build things that are as complicated as they need to be, but no more. Sometimes I even succeed.
- jghn 4mo agoWhat you're describing is an effect that has always existed. It became clear to me a few decades ago earlier in my career that if a dev's only real skill was "write code" that they were severely limited compared to people who had strong domain knowledge *and* had "write code". The tech boom has made people forget this, but that fact never changed. And now what we're seeing is that the "write code" part is increasingly becoming devalued. What does this mean? That those with domain knowledge will still be able to function, whereas people who could only write code will be devalued.
- hnthrow0287345 4mo ago"read code" and "debug code" will still be valuable and one of the ways you learn that is "write code". You might have gotten people who can only write code from cheap contracting places, but the companies choosing to go that route were shooting themselves in the foot with that decision before AI came along. Even from offshore contractors, I still haven't run into anyone who can only write code except for someone just starting out.
- jghn 4mo agoI don't disagree with you, but this misses my point entirely. I was using "write code" as shorthand for the entire package. What I am referring to is someone with meaningful knowledge outside of software engineering who can also apply software engineering skills to that domain. In particular I'm referring to domains outside of tech, but any sort of specialized knowledge counts here so even in the "software" world there's things like infosec, networking, etc
- lo_zamoyski 4mo ago> if a dev's only real skill was "write code" that they were severely limited compared to people who had strong domain knowledge and had "write code". Indeed. If we peel back the rationalizations, it is patently obvious that code has no meaning apart from the domain it exists in. Its entire meaning is derived from the domain and from the purpose to which it is put and for the sake of which it is written. There is no such thing as code, or broadly technology, in isolation. It does not exist for its own sake. Where such things are concerned, all meaning is in the observer. So, if a dev has a poor grasp of the domain, then he must inevitably depend on someone else to supplement his deficits, like a product manager, which is a role that in practice often results in a formal distinction between the domain expert and the technician. And that's what a dev without domain knowledge is: a technician. This is also why people with solid[0] philosophical/liberal arts backgrounds often function very well in the software industry. They are better able to cultivate context which puts them in the best position to make prudent judgements at both product and technical levels. This is not a dismissal of technical skill, but skill is always downstream from meaning, purpose, and context. It's a tool, perhaps a glove. Without the hand, there is no glove. (Some may say this is obvious, but sadly, the obvious is what people seem to have the most trouble with.) [0] Emphasis on "solid". I'm not talking about the ideological puff you might see in some places. I'm talking about something intellectual rigorous like the classical liberal arts.
- trollbridge 4mo agoThat's an interesting point of view, because one of my most successful uses of AI is automating all of the DevOps drudgery that I need to do but just couldn't find the time to dedicate writing (and maintining) tools to automate more of it.
- lezojeda 4mo ago[dead]
- thunderbong 4mo agoI wouldn't say software engineers have been replaced. Rather, those software projects would never have gotten created in the first place.
- patosullivan 4mo agoAgreed, and if any of those projects ever become consequential they'll almost certainly require the involvement of software engineers.
- rvz 4mo ago> It most certainly will replace software engineers. What's missing is, as the article suggests, the "Delivery" bit. But that's not the realm of software engineers, that's the realm of DevOps/SRE/Cloud engineers. I don't know about that. If a non-engineer is able to replicate your "serious" project from scratch as a "pet project" then perhaps it is not serious in the first place? > So what they are missing is a platform to easily deploy and maintain their projects, much like a "normal" developer would.Right now it's quite tedious to set up this scaffolding, but it's absolutely possible with AGENTS.md, skills and rigid hollistic tests. Once done, non-technical people can continue developing independently without hiring any software engineers by simply telling claude/codex what they want. You should already know that maintenance is never free. The big question is are they making money out of it to justify that maintenance? Maybe it has replaced people that build useless pet projects that make no money, especially internal tools such as dashboards. But again once an incident arrives is when you need someone to untangle that vibe coded mess as it grows in complexity.
- borplk 4mo agoIf it's good enough to replace plain Software Engineers it's good enough to do DevOps/SRE too. There's no meaningful distinction between those categories in this context.
- opsnooperfax 4mo agoI would be more worried about the viability of these business cases. If I see someone crowing about how they vibe coded some service in a weekend and now they expect $X,000,000 in ARR, I just think these type of people are not going to make it. At some point, the customer will realize that there is nothing preventing them from replacing your offering with a few dollars in API fees. Software vendors need to focus on support quality, provide some unique insight, guard proprietary data, or have some economy of scale on the hardware side. Being the first person to write that particular prompt is not a business plan.