Will AI replace software developer (from a seasoned developer's view)
Sometimes I feel fortunate to have started my career 10 years ago. If I were to start my career now, I'd be competing not only against all the competent individuals in a semi-saturated market but also against AI. I'm not sure I could still land a job as a new graduate today. Fun fact: in my current company, we have less Junior software engineers than Staff software engineers. Software developers are probably the only professionals who are insanely good at creating something to replace themselves. Now in 2024, with LLMs thriving in coding ability, software developers are facing an existential challenge. Will AI replace software developers?
How I feel about using AI to code
I have to admit that as of today, AI is incredibly good at coding, at least for smaller tasks like "generate a shell script to automate task X" or "write a Python script that can bulk retrieve Y and parse the results." I believe this is due to the high quality of online information about coding, plus the open-source culture among developer communities. Using AI boosts my productivity tremendously, and I'm only talking about horizontal products like ChatGPT and Claude, not specialized vertical products like Cursor, Vercel, etc.
Is coding everything?
Absolutely not. As developers, we do design, planning, communication, testing, debugging, and more. Especially when incidents happen, leaders won't want to sit there waiting for AI to solve the problem. For a junior engineer, probably 90% of their work is coding, but as they progress in their career, they naturally spend less and less time on it. I know many senior engineers who barely write any code. Coding is already commoditized; AI is just a catalyst that speeds up this process.
Work become less even without AI
I still remember the first product I worked on at Google. The application was based on a framework called AppsFramework, a universal solution for all Google Java web apps. The frontend was based on AngularJS. The team had a multi-year mission to migrate the frontend to Wiz and the backend to Boq. It was a very complicated migration, but once finished, it automatically onboarded the application to a huge number of internal tools that made day-to-day tasks much easier. Of course, we had less work to do afterward due to the productivity boost.
For all the teams I've worked on, building automation is a general trend when the product itself stabilizes. If the product isn't growing, the work naturally becomes less and less due to engineers building all sorts of automation here and there.
What's the real challenge
I believe the real challenge is that we're not growing the pie enough. Most big tech companies are stagnating; there's no innovation. Apple is making the same iPhone year after year, Google is placing more ads here and there, and Meta's VR is also struggling. The worst part is that when they have no growth areas, they start to cut costs and outsource jobs to other countries. The tech industry is actually more relocatable than most other industries. In reality, without the AI hype, we'd probably be in an even worse job market.
What to do next
As software developers, we should really learn to adapt to all these new AI tools, not only for more competency in our work but also to unlock our own potential to build something on our own. Looking back in history, each revolution has been about productivity boosts, and now we can clearly feel the productivity gain from AI. Don't fear it; embrace it.