Things in the economy make it harder to find jobs (different things in different countries. Perhaps this isn’t true for where you live)
AI coding tools are getting pretty good (just wait for March 2022)
Also, I’ve hardly had conversations about this for a few years (maybe 1 per 1-2 months instead of about 5 per week), so I’m less up to date.
Also, it seems like nobody really knows what will happen with jobs (and specifically coding jobs) in the age of AI.
If someone can suggest an example task they don’t think an AI will be able to do in 2-3 years (in the context of picking a career, ideally in software), I’m interested. (we can elaborate in the comments if you want)
Also, it seems like AI coding tools today can mostly do whatever a developer with 1 year of experience could have typically done (without AI tools), and I assume that in another 1 year this will be true for developers with 2 years of experience. This isn’t literally true for all developers or all tasks, but I think it is one way to “measure” AI progress in a way that is relevant for picking a career (an imperfect measure, but there seems to be a lot of confusion).
Also, companies that are open to online applications seem to be spammed with LLM generated applications. The market will probably adjust to this somehow, but the current situation seems unusual.
With all that uncertainty, I find it hard to give career advice.
I’m tempted to say “I don’t know”.
But I also think that there are uncertain suggestions that are definitely worse than others, and it is really hard to find reasonable directions to get in to software alone, so here are some of my opinions, and others can happily comment if they disagree.
The bar for getting a first job seems to have gone up, not down.
The bar used to be (vaguely) 2-3 good side projects, or perhaps some impressive STEMy thing (which is common but there are so many special cases that I’m not sure how to summarize them).
If your CV doesn’t get replies and you don’t have side projects, that is still where I’d start.
I’m not sure if side projects have a different weight now that AI coding tools can help, but my guess is
The same reasons that side projects were valuable still apply
Perhaps if making side projects is easier then the expectation is to have more of them, or better ones
Knowing how to use AI tools matters
AI tools aren’t a magic bullet, they still require skill, and hiring someone who knows how to use them—seems to me relevant to the person’s expected productivity
Not all companies moved to using AI tools (or perhaps they are using out-of-date tools), which seems crazy to me, especially given that often after I sit with someone and show them what exists—they change their mind. This might be a too-hot take, but I think companies that don’t use AI tools will stay behind (if their tech velocity matters).
Knowing how stuff works still matters
My recommendation (for this stage of your career) is still “learn the stuff you need for your side project” which is very different from “learn anything that could be called basics”. But still, there are things to understand.
Working on stuff you’re excited about still matters
How much to use AI tools when learning?
I’m not sure
If the AI is producing code that you don’t understand and also doesn’t work and you don’t know how to fix then this is probably pretty extreme into the “using too much AI” direction
Remember that the reason for your bug might not be the last prompt you sent but rather something earlier in how the AI set up your project
Using the AI to automate things that you know how to do, that you fully review and understand and often correct small mistakes—seems like definitely not too much (and perhaps ideal).
Asking the AI what is the best way to do X, or trusting that it picked a direction that makes sense—is probably a mistake (as of Feb 2025). Official docs and tutorials are still much more reliable.
When you don’t yet know how to program anything (e.g before you made your first program, probably assisted by an online course), I probably recommend not using AI at all (unless you feel like you can actually review it reasonably, which seems hard to me)
Skills that AIs don’t currently have
Currently an AI can’t be “a responsible employee”
Soft skills like “have a TODO list so you won’t forget tasks that your manager asked for” or “tell your manager if something is taking longer than planned instead of hiding it and pretending everything is ok” seem still important
Currently AIs aren’t good at architecture
More generally, I think a nice property of doing a side project is that it “forces” you to learn whatever skills the AI doesn’t have in order to accomplish the goal of building something that works
If you like leetcode...
It seems like some companies are dealing with the flood-of-CVs by sending leetcode questions. I’m not sure if this will last (since people can cheat by using AIs), but maybe if you’re able to blast through leetcode questions, that will distinguish you.
I don’t recommend this as a default path, but if you’re excited about leetcode then excitement matters
I’m interested in more comments/opinions. I might comment more here myself
Updates [Feb 2025] :
Two big things seemed to have changed:
Things in the economy make it harder to find jobs (different things in different countries. Perhaps this isn’t true for where you live)
AI coding tools are getting pretty good (just wait for March 2022)
Also, I’ve hardly had conversations about this for a few years (maybe 1 per 1-2 months instead of about 5 per week), so I’m less up to date.
Also, it seems like nobody really knows what will happen with jobs (and specifically coding jobs) in the age of AI.
If someone can suggest an example task they don’t think an AI will be able to do in 2-3 years (in the context of picking a career, ideally in software), I’m interested. (we can elaborate in the comments if you want)
Also, it seems like AI coding tools today can mostly do whatever a developer with 1 year of experience could have typically done (without AI tools), and I assume that in another 1 year this will be true for developers with 2 years of experience. This isn’t literally true for all developers or all tasks, but I think it is one way to “measure” AI progress in a way that is relevant for picking a career (an imperfect measure, but there seems to be a lot of confusion).
Also, companies that are open to online applications seem to be spammed with LLM generated applications. The market will probably adjust to this somehow, but the current situation seems unusual.
With all that uncertainty, I find it hard to give career advice.
I’m tempted to say “I don’t know”.
But I also think that there are uncertain suggestions that are definitely worse than others, and it is really hard to find reasonable directions to get in to software alone, so here are some of my opinions, and others can happily comment if they disagree.
The bar for getting a first job seems to have gone up, not down.
The bar used to be (vaguely) 2-3 good side projects, or perhaps some impressive STEMy thing (which is common but there are so many special cases that I’m not sure how to summarize them).
If your CV doesn’t get replies and you don’t have side projects, that is still where I’d start.
I’m not sure if side projects have a different weight now that AI coding tools can help, but my guess is
The same reasons that side projects were valuable still apply
Perhaps if making side projects is easier then the expectation is to have more of them, or better ones
Knowing how to use AI tools matters
AI tools aren’t a magic bullet, they still require skill, and hiring someone who knows how to use them—seems to me relevant to the person’s expected productivity
Not all companies moved to using AI tools (or perhaps they are using out-of-date tools), which seems crazy to me, especially given that often after I sit with someone and show them what exists—they change their mind. This might be a too-hot take, but I think companies that don’t use AI tools will stay behind (if their tech velocity matters).
Knowing how stuff works still matters
My recommendation (for this stage of your career) is still “learn the stuff you need for your side project” which is very different from “learn anything that could be called basics”. But still, there are things to understand.
Working on stuff you’re excited about still matters
How much to use AI tools when learning?
I’m not sure
If the AI is producing code that you don’t understand and also doesn’t work and you don’t know how to fix then this is probably pretty extreme into the “using too much AI” direction
Remember that the reason for your bug might not be the last prompt you sent but rather something earlier in how the AI set up your project
Using the AI to automate things that you know how to do, that you fully review and understand and often correct small mistakes—seems like definitely not too much (and perhaps ideal).
Asking the AI what is the best way to do X, or trusting that it picked a direction that makes sense—is probably a mistake (as of Feb 2025). Official docs and tutorials are still much more reliable.
When you don’t yet know how to program anything (e.g before you made your first program, probably assisted by an online course), I probably recommend not using AI at all (unless you feel like you can actually review it reasonably, which seems hard to me)
Skills that AIs don’t currently have
Currently an AI can’t be “a responsible employee”
Soft skills like “have a TODO list so you won’t forget tasks that your manager asked for” or “tell your manager if something is taking longer than planned instead of hiding it and pretending everything is ok” seem still important
Currently AIs aren’t good at architecture
More generally, I think a nice property of doing a side project is that it “forces” you to learn whatever skills the AI doesn’t have in order to accomplish the goal of building something that works
If you like leetcode...
It seems like some companies are dealing with the flood-of-CVs by sending leetcode questions. I’m not sure if this will last (since people can cheat by using AIs), but maybe if you’re able to blast through leetcode questions, that will distinguish you.
I don’t recommend this as a default path, but if you’re excited about leetcode then excitement matters
I’m interested in more comments/opinions. I might comment more here myself