The AI Reckoning

I'm a web-focused developer with a passion for exploring new ideas and hopefully sharing more of them through this blog 😃
Do you believe your job can be done by AI?
Up until very recently I believed this was all hype. No way this could happen.
There have always been proclamations of new technologies like AI taking jobs. Most of the time dismissed as fantasy, most takes filled with a hint of denial, not willing to accept reality.
Maybe the frontend development jobs, or the junior developers jobs, or some other job that’s not mine.
The time of reckoning is here.
All of the models are available for pretty much free or a very low cost and the future does not look good for software engineering careers.
AI can now do the job of several developers. With tools evolving at breakneck speed, we can now extract maximum performance from the best AI tools, providing just the needed context and making them perform even the most complicated tasks. It’s just a matter of time before the models start wrecking carnage on the job market.
So what can we do?
Get better at the craft. AI makes mistakes. It is more valuable to be able to spot the LLM’s mistakes especially when AI is generating a huge volume of code. The only way to get better is from gaining real experience and diving deeper to be more familiar with the tools, languages and frameworks you use. AI can still help with a lot of the development but it helps to know where to check for the occasional errors.
Gain complementary skills. Building working long-lived software is not just about conjuring pretty algorithms. Keeping a system running for years while handling evolving requirements from paying customers requires more than just ninja coding skills. Operating at scale with larger data sets requires skills like extracting insights from data, optimization to enable efficient use of resources, investigation and debugging when the occasional incident or unexpected errors occur, working in a team, and so on.
Get closer to the business and product. Understand the real needs of customers. Get better at converting these into viable product specs and implementing them within the constraints that exist in your particular business. This is harder to outsource to AI than just implementing code.
Ultimately this is a double edged sword. What are some of the positives?
Massive Productivity Unlock I have never been more productive especially with personal projects.
With AI tools, I am learning faster and developing features from start to finish faster than ever. A single person turbocharged with AI tools is now more capable than ever, and it would be a huge self-inflicted mistake not to take advantage of this huge productivity boost.
There are no more blockers, even on personal projects, where there are real constraints like not having experienced colleagues to bounce ideas off.
No limit to learning.
I have always been fascinated by some of the niche languages with good ideas, but which still remain unpopular, like Ocaml. Previously it was always a disadvantage working with such esoteric languages. There aren't as many resources to learn from, not many example projects, not the biggest communities, and lots of other issues that don’t face the more popular languages. Right now with the AI tools available today none of those matter. You can learn whatever you want with no limitations.
What next?
This is just my impression of things as I see them. I have no idea how it ends up but the best strategy seems to be trying to keep up, always be learning and hope to survive whatever comes next ✌️



