These days, I hear a lots of news about the new AI tools like Chat GPT, Bard and so on. Will we see a decline in requirements for software engineers in the foreseeable future? Will companies begin to prioritize AI-domain engineers over software engineering?
In the short-term (next few years), there will still be ample job opportunities for general software engineers. I talk a bit about this in the video about ChatGPT vs Bard. The impact of AI is that it'll make a good software engineer even more productive. An engineer from the future can get as much done as a team of 2-3 engineers today.
However, the demand for novel software in the world is very, very large. This appetite means that software engineers will remain gainfully employed (assuming you can use AI tools effectively).
In the long-term, I'm not sure
But I'd also argue that it doesn't matter. So much about the world and your experience/skillset will change in the next 5 years. I don't really believe in planning out your career more than 5 years.The question to ask is: will problems that can be solved with software cease to exist?
In my frame of mind, it takes a population of people to discover a problem and pockets of engineers to experiment, fail everywhere over a long period of time, and then finally succeed at solving the problem. The cycle may be shorter with AI assistance (since it's like magically finding the necessary talented engineers), but ultimately, you can't take the humans who care about the problem out of the equation.
I concur with Rahul and with Michael in the long term.
I think in the short term (~5 years), we will likely have more need for software engineers than today. A couple of reasons:
Long term is anyone's guess, but here's my "science fiction" perspective...
Engineering of all kind, including software, means designing and building complex and automated systems using the tools available. LLM technologies like ChatGpt, and Bard will become just another set of tools in the wheelhouse. Chatbots based on LLMs may be able to generate code, but they can't engineer systems. That being said, using these tools effectively will be require a different way of thinking than traditional software tools and languages, such as "prompt engineering".
In the end, we humans still have to collaboratively design systems around these tools to solve our goals, so I wouldn't too surprised if 10 years down the road, here on Taro we are talking about "prompt reviews" or "prompt quality." I also don't think this timeline is a given, since internet took 10+ years until the 2000s to really take off.
I think as software engineers, we are always looking for new tools to use (for example, very few people use C nowadays...), so adding AI-based tooling to your toolset is very, very wise, but as with all new shiny tools and frameworks, do so wisely (advice from this video applies here.)