5 ms·
A lot of work can be done by no-code and low-code tools so there is less need for software engineers in general. Linus at some point predicted that most of the
by automatistauto 3y ago
A lot of work can be done by no-code and low-code tools so there is less need for software engineers in general. Linus at some point predicted that most of the web developer jobs would be going away because AI can do a lot of it. I think this trend will continue and the AI tools will continue moving down the stack until LLMs can be applied in basically every coding context with very little software engineering training.
People were saying AI tools will create more jobs but it's pretty clear that this time is different and what used to require 2 engineers can now be accomplished by 1 engineer + AI copilots in the relevant domains. I think this trend will continue and the expected outcome is going to be lower demand and lower salaries for software engineers in basically all domains except maybe for very low level work like firmware, kernel drivers, and compilers.
- smeej 3y agoI'm trying to fight the schadenfreude, but after years as an operations person in tech companies, being told "just learn to code!" in the most condescending way possible, by people who couldn't fathom that I was actually contentedly living on a third of their annual salary, there's something about this that feels like karma. The computers can learn to do your job too, as it turns out, which kinda makes a funny sort of sense if you think about it. After all, what should computers be more familiar with than computer code?
- unforeseen9991 3y agoThe true end game always has been being an overseer of the technology. Sysadmins and sysops are one area that will never go away as there will always be another system to manage. It doesn't matter if that system is human, computer, or both.
- m0llusk 3y agoOne of my friends works as an admin. His group is shrinking fast as people retire and are not replaced. They are forced to automate everything they can as quickly as they can just to keep things going. Seems like pressure to reduce overhead is combining with sophisticate tools to put a squeeze on admins.
- slt2021 3y agothere is really no reason to keep doing things manually, when automation can do that. Imagine horse carriage drivers refusing to learn how to drive a car - this is them. sysadmins refusing to automate are dying breed that will be replaced by smarter newgrads who are willing to grind and learn. free market mechanisms and competition doing its work.
- epiccoleman 3y ago> After all, what should computers be more familiar with than computer code? Computers aren't really "familiar" with computer code. (Or anything, but, pedantry aside). Computers don't "speak" code, or at least not at the level that most engineers are writing it. There's a whole Rube Goldberg machine of layers upon layers between a file with JavaScript in it and what the machine actually does. I don't think GPT is taking the job of any engineer worth their salt anytime soon. I've used it plenty, but it's just not currently at a level that could replace what I do. Sure, it can write a test, boilerplate, or a function, but it just doesn't have the necessary abilities to build a whole "system" at this point. That said, engineers who refuse to learn its capabilities might well fall behind. I think it's a big step but I don't really fear for my livelihood yet.
- lxgr 3y agoTrue, but software engineering sure seems to be more threatened by AI as a profession than, say, nursing or cutting hair, simply because it already happens in information space – no complicated and messy adapters required. > I don't think GPT is taking the job of any engineer worth their salt anytime soon. That probably depends entirely on their experience. As somebody fresh out of a bootcamp or a newgrad I‘d be somewhat concerned, especially if the company doesn’t want to invest in building up in-house talent because they know they probably won’t have enough retention to justify it.
- epiccoleman 3y agoI agree it makes a tough road for juniors, since it can do a lot of the things they can do. But even for them, it could just as well be a tool for learning the basics more quickly. I disagree that software engineering "happens in information space". I understand your point, and it makes sense, but coding just isn't the hard part of the job. It's dealing with people and requirements, and people who can do that are going to remain valuable for a long time (at least, until AI can just do it all without intervention from pesky humans).
- sublinear 3y ago> engineers who refuse to learn its capabilities might well fall behind Disagree because the answers and code snippets from humans are still vastly superior to AI and most questions have answers readily found on the first page of a search engine. A helpful human on the internet is more likely to rewrite all your code faster than you'd be able to cobble together some crap from a chat bot.
- latency-guy2 3y agoFully agreed. These people have put millions to billions of people out of a job over the last few decades across the entire spectrum from office work to physical labor of all kinds. They deserve no job security of their own. We need people in the trades, learn how to plumb is what I say.
- pembrook 3y agoAhhhh yes, the classic “this time is different” screed. I remember in the early 2000s after the first dot com bubble I was told “don’t go into computers, you’ll never have a job! That’s all going to be outsourced to India!” Pessimists always find a way to convince themselves the sky is falling.
- oldoracle 3y agoIn 2008, no one was going to put all their personal data. In 2023, everyone puts their personal data in the cloud. Reality is not fractal. Signal attenuation exists in a variety of forms. The difference between now and dot bomb is greatly improved computer, network performance, reliability, and many many more well trained people working on AI problems. AI is generating rudimentary frontend code for me. I don’t need it to be Google scale. It may get complex logic wrong, but it can emit simple boxes and button code to cut-paste together just fine. Horse and buggy makers did not vanish over night. The programmer signal of value to the economy is indeed attenuating.
- jarsin 3y agoEver use django in like I dont know 2005. Ya it generates all that boring front end stuff for ya. Still get recruiters reaching out to me for django jobs though. Guess all those mba's still couldn't figure it out.
- ooppjfi 3y agoAnecdotes like this are just as banal and repetitive to me as mine was to you. MBAs could but socio-political/economic focus on job creation. I’m not talking about MBAs but younger people using AI at home now. They won’t need you or Django in their future. I’m booting a Linux from Scratch distro to an LLM and training it to normalize it’s initial code base and reboot itself. So far so good. Next steps are add a GPU rendered empty 3D viewport; think like a blank Blender project. Then add in NeRF libs and such to render my own content. Constrained to a task and not used as a Hitchhikers Guide to the Galaxy, AI as-is does some mesmerizing stuff. Reread the Google “no moat” memo; they and OpenAI screwed up with big models, said small tunable models are the way to go. You go ahead an reminisce about 2005 and how much smarter you are than everyone. I’m going to iterate on new ideas with my kids.
- sublinear 3y ago> A lot of work can be done by no-code and low-code tools so there is less need for software engineers in general. You do realize that the complexity and necessary expertise doesn't go away just because some of the code does, right? Someone still has to untangle the human side of the requirements, specify what the software should do in technical terms, and configure it for the use case. Most software is concerned with its uniqueness and you can't train an AI to handle that part (where most of the time is spent). Seriously. Every single application that has ever been made is unique in ways that can never be reused and must be thrown away. Programming is creative and skilled labor, not mere routine tasks. By their very definition, statistical models cannot learn this. It doesn't exist in the training data and cannot be inferred. It requires reasoning skills from far outside the expected context. Humans use their lifetime of experiences in the real world to accomplish this. AI doesn't. All that still requires a software engineer, and as soon as a project doesn't require code they'll immediately be occupied by another project that does. It's fascinating how clueless some people can be about the sheer amount and complexity of the work a software engineer does. How can outsiders with little to no authority over anything within a business manage to get paid so well by that business? It's because there's no choice and the work is hard.
- lxgr 3y agoSure, but how many software engineers (per project size unit) will it really take in the end? If an average software engineer spends 10-20% of their day doing creative work and 80% wrestling various build tools, writing semi-repetitive code etc., it’s not hard to imagine a world in which aggregate demand for these services still goes down.
- sublinear 3y agoThe junior engineers are spending 80% of their time wrestling with tools. The senior engineers are spending their 80% of the day stuck in meetings and group chats and ultimately doing the heavy lifting, often squeezing in this coding after business hours are over for everyone else. We can get rid of junior engineers, but then there's no one to replace the senior engineers, not even the precious AI. As it is, most businesses would love to hire more software engineers, not fewer. There's a shortage of money and talent, not work.
- dimmke 3y ago> I think this trend will continue and the expected outcome is going to be lower demand and lower salaries for software engineers There’s already a huge range of efficiency with programmers (ex. The concept of a “10x” programmer), and it’s not tightly correlated with head count. In most organizations, managers just pile more work on people who get more stuff done. Additionally, so much of the day to day of being a programmer isn’t even about writing code. I can understand having GitHub copilot write a snippet of code that you then use or modify but if you don’t understand what it’s doing, it’s not tenable. Which means you can’t completely remove a human worker from the process. What if it doesn’t fit your specific requirements and you can’t figure out how to tweak the prompt to produce what you actually need? Is it really that different than copying and pasting something from Stack Overflow? What happens when your service gets hacked and nobody understands the codebase enough to fix it? You hire an outside firm to put the fire out but you’ve lost a ton of money, customers and are perhaps now in a lot of legal/litigation trouble. What happens when frameworks and language change, and LLMs can’t train on new data because scraping has been blocked? Creating good software is incredibly difficult, even for teams that are appropriately staffed with a good headcount of skilled developers and other support roles. I actually think the opposite is going to happen over the next 10 years: I think software development is going to continue to get more and more complex and less efficient and more abstraction layers will continue to be piled on.
- barrysteve 3y agoIt will definitely get more complex, and the abstraction layers has been a red herring for a while. Programmers crave more subjective control over the code. But programmers do not lift their tooling and thinking to the level required, over a long grueling process to make it happen. So instead we substitute in house-of-cards style abstractions that temporarily satsify the requirements. Destined to collpase under their own weight. Experienced programmers say 'don't build abstractions' and instead we should compress code down into reusable chunks. To dig ditches instead of stacking a house of cards. Neither make any real change to the art of programming and continuing the status quo, will forever 'incentivize' abstractions, because there is no tooling for squeezing in the subjective structures required in every program. We so dearly love the ideal of mathematical certainty in code, but it brings a limit to our views on programming.