Forward-thinking companies should use AI to transform each developer into a “10x developer,”
Developer + AI ≠ Developer x 10
At best, it means 1.25 x Developer, but in most cases, it will mean 0.5 x Developer. Because AI cannot be trusted to generate safe, reliable code.
I think 10x is a reasonable long term goal, given continued improvements in models, agentic systems, tooling, and proper use of them.
It’s close already for some use cases, for example understanding a new code base with the help of cursor agent is kind of insane.
We’ve only had these tools for a few years, and I expect software development will be unrecognizable in ten more.
It also depends on the usecase. It likely can help you better at throwing webpages together from zero, but will fall apart once it has to be used to generate code for lesser-discussed things. Someone once tried to solve an OpenGL issue I had with ChatGPT, and first it tried to suggest me using SDL2 or GLFW instead, then it spat out a barely working code that was the same as mine, and still wrong.
A lot of it instead (from what I’ve heard from industry connections) being that the employees are being forced to use AI so hard they’re threatened with firings, so they use most of their tokens to amuse themselves with stuff like rewriting the documentation in a pirate style or Old English. And at the very worst, they’re actually working in constant overtime now, because people were fired, contracts were not extended, etc.
It’s made me a 10x developer.
As someone who transitioned form Junior to Dev as we embraced LLMs. Our company saved that much time that we all got a pay rise with a reduction in hours to boot.
Sick of all this anti LLM rhetoric when it’s a tool to aid you. People out here thinking we just ask ChatGPT and copy and paste. Which isn’t the case at all.
It helps you understand topics much quicker, can review code, read documentation, etc.
My boss is the smartest person I’ve ever met in my life and has an insane cv in the dev and open source world. If he is happy to integrate it in our work then I’m fine with it. After all we run a highly successful business with many high profile clients.
Edit: love the downvotes that don’t explain themselves. Like I’m not earning more money for doing less hours and productivity has increased. Feel like many of the haters of LLMs don’t even work in the bloody industry. 😂
Man, I wish LLMs were more useful to me than line completion tool we already had in normal languages in normal IDEs.
So far everything I’ve seen it do even with agentic approaches, is just not covering my use cases.
At best I can have it generate some correct-ish terraform boilerplate. Or writing mediocre code in languages I have to use once in blue moon, that I still then have to correct. Cursorrules are meh.
Me: fintech, 15y of exp.
On the other hand I can imagine it creating some bullshit boilerplate in companies that require bullshit boilerplate.
Btw I don’t think code throughput is what distinguished Junior from Dev. I rather think it’s realizing the steep decline in “Doner-Kebab” effect :)
I am not anti-AI or something like it and I use AI on a daily basis. If you work on a domain where there’s plenty code written for it or documentation, AI acts like a very efficient search tool. It does not replace traditional documentation or stack overflow, but it significantly reduces the time I take searching for specific syntax, or an example of how to use a library, or how to use a specific feature or parameter of a library. Occasionally it gives me bad advice as well, such as doing something that results in low performance, low security, but then I can check the actual documentation and code to see the details. For code reviews, I think it’s only partially useful, while sometimes it spits something useful, most of the time it spits out bad or irrelevant advice that ends up polluting the code review screen for actual human devs trying to review the code. However, even with all the gains, which is kind of a mixed bag, I think it’s very unlikely AI will increase speed 10 fold. At best, it will be like a 25% improvement at best, and only specific to some times in the project lifecycle, and most of the gains only happen when you are dealing with generating boilerplate code and adding non business-specific functionality. Most of the time I had to maintain existing code, debug existing functionality and fix some security flaws, AI didn’t help me at all.
An interesting trend is these comments: the worse a code base is, the more helpful AI is for expanding it (without actually fixing the underlying problems like repetitive overly long unexpressive code).
Developers developers developers developers, developers developers developers developers AI
And it’s intentional. Lay off the workers. Implement AI Slop. Slop does sloppy work. Hire back workers as Temps or Contractors. No benefits. Lower pay.
Like all of Capitalism. It’s a fucking scam. A conjob. A new innovation in fucking over workers. (Ironically the only “innovation” ever directly produced by Capitalism)
I remember when everyone was saying that companies would need programmers and that every kid should learn programming. Now I realize that companies were promoting that idea so they’re be a surplus of programmers competing with each other and companies could underpay and swap out workers quickly.
Yeah obviously. Whenever a company says “we can’t get enough X workers” they implicitly mean “at the price we want to pay”.
But that doesn’t mean they were wrong. Programming is still an amazingly well paying and low stress career. Being replaced by AI is a little worrying, but I think by the time AI is good enough to really replace programmers, it will also be able to replace most white collar jobs - HR, finance, etc. - and society will have bigger problems.
I would not market an industry well know for burnouts as “low stress” though.
Even accounting for that (at least in countries with national healthcare), they’re definitely more expensive than regular employees.
Even if AI is an actual tool that improves the software development speed of human developers (rather than something that ends up taking away in time spending reviewing, correcting and debugging the AI generated code, the time savings it gives in automatically writing the code), it’s been my experience in almost 30 years of my career as a Software Engineer that every single tooling improvements that makes us capable of doing more in the same amount of time is eaten up by increasing demands on the capabilities of the software we make.
Thirty years ago user interfaces were either CLI or pretty simple with no animations. A Software Systems was just a software application - it ran on a single machine with inputs and outputs on that machine - not a multi-tiered octopus involving a bunch of back end data stores, then control and data retrieval middle tiers, then another tier doing UI generation using a bunch of intermediate page definition languages and a frontends rendering those pages to a user and getting user input, probably with some local code thrown into the mix. Ditto for how cars are now mostly multiple programs running of various microcontrollers with one or more microprocessors in the mix all talking over a dedicated protocol. Ditto for how your frigging “smart” washing machine talking to your dedicated smartphone app for it probably involves a 3rd machine in the form of some server from the manufacturer and the whole thing is running over TCP/IP and using the Internet (hence depending on a lot more machines with their dedicated software such as Routers and DNS servers) rather than some point-to-point direct protocol (such as Serial) like in the old days.
Anyways, the point being that even if AI actually delivers more upsides than downsides as a tool to improve programmer output, that stuff is going to be eaten up by increasing demands on the complexity of the software we do, same as the benefits of better programming languages were, the benefits of better IDEs were, of the widespread availability of pre-made libraries for just about everything were, of templating were, of the easiness to find solutions for the problem one is facing from other people on the Internet were, of better software development processes were, of source control were, of colaborative development tools were and so on.
Funnily enough, for all those things there were always people claiming it would make the life of programmers easier, when in fact all it did was make the expectations on the software being implemented go up, often just in terms of bullshit that’s not really useful (the “smart” washing machine using networking to talk to a smartphone app so that the machine manufacturers can save a few dollars by not putting as many physical controllers in it, is probably a good example)