If I Study For 10 Hours A Day, How Long Will It Take To Get a Programming Job
This is by far the most common question people have when switching careers to software engineering. And it matters. If you’re going to invest time and money into a new skill you want to know when the payback on that will be. Here’s how I’d think about it.
Defining The Role
To dig in we need to first understand what a first role might look like. Usually the job titles you’re looking for will be “Associate Software Engineer” or “Junior Software Engineer” if you’re trying to land a first job. There are some exceptions to this but it’s a good rule of thumb when exploring.
So if you search for these kinds of roles in your local market you’ll probably see something like the following:
1-2 years software development experience
Proficiency with
insert specific technology here
Can communicate professionally
…etc
1-2 years of software experience often means professional experience, but usually these roles will have exceptions for people with a bootcamp certificate or college degree. You can still land these jobs without either but it’s a little harder to make it through the resume screen.
Okay let’s work backward assuming that 1 year of software experience includes self-directed projects. Now let’s assume you’re starting from scratch. It will take you at least 1-2 months to wrap your head around the basics and pick up a first programming language. The goal is to get to a point where you’re comfortable enough to take on a moderately-sized project - you will need to do several.
Now if we take that 1 year minimum at face-value and add 1 month of getting up to speed, then, at minimum, you'd be ready to apply to a role like this in 13 months.
How Long It Really Takes
I have no doubt that a sufficiently dedicated person that had multiple hours of time per day to devote to programming and had no gaps in their learning could land a job inside of a year. It would take a little bit of luck, some networking, and a hell of a lot of dedication but it’s possible.
A more realistic scenario, if you’re like most people, is that if you’re going this journey alone it’ll probably be closer to 18-24 months before you’re job-ready and then it may take a few months to actually get a job.
Summary
So all-in, you’re probably looking at 2-3 years from starting your programming journey to getting a job. Depending on how you look at it this can be a very short amount of time (less time than college to break into a highly, in-demand, well-paying field) or a long time (2 years of dedication is a lot).
A few things that may help you shortcut this:
Boot camps can be hit-or-miss. If you do your research well and find a good one it can significantly decrease the amount of time it’ll take.
Apprenticeships, if you can find them, are a great option. This is what I did. The premise is to join a company that pays you to learn and in return you usually make a commitment to work for that company in an underpaid role (relative to the rest of the market) for a fixed amount of time. Even when the role is “underpaid”, you’re usually getting paid pretty well and can continue learning on the job.
Need some help launching your developer career? Join the mailing list to get advice like this straight to your inbox and accelerate your path to a software engineering career.
Top comments (9)
From personal experience, I can back you up. Even if the job title says junior, it requires a few years of some type of experience. And yes it is actually rare that they accept own, not work related projects, so already on the first cv screen we are mostly out…
Really rare but occasionally can be found a junior position, where the requirements are pretty friendly and loose. The job I got now, was like this. It was written out it is enough if you programming from hobby.
But all in all these type of jobs (really bootcamp/beginner friendly) are rare… 😔
I think this post is very, very wrong from bottom to end. 6 months is enough to land a remote web dev role. I did it in around 10 months with part time studies, no networking, just persistence and a good portfolio + github profile.
Do not discourage people trying to get into the industry.
Congrats to you. I think your situation is unique and atypical -- would prefer to set realistic expectations so people are preferred for the journey.
Thank you, but I still argue otherwise. At least abour web development, it's quite fast to find something to work on. The reason why I'm opposing is people need to fight with impostet syndrome that affects most of us. I guess they're right about shooting to the stars but I digress.
It's precisely because of imposter syndrome that I err on the side of caution when speaking about timelines. I would prefer people think on a longer timescale and end up in a situation like yours (e.g. find a job very fast) vs think it's going to be fast and then end up frustrated and confused when it doesn't happen that way.
Again, congrats on your journey. If you decide to write, or have written, about your timeline I'd love to link to it from this post as another perspective.
That's an interesting point of view honestly. Okay then.
Thanks but I'm not a good storyteller so I'll just stick with writing tutorials. Cheers!
When I hear people say "how long does it take to become X?", I usually answer 42.
Not because I'm mean but because I can't really answer and more importantly there is a better question then this one.
It's a great question and as you alluded to, somewhat difficult to answer. I tried to answer that in another post but here's what I'd do:
Focus relentlessly on finding either a bootcamp with stellar reviews and high graduation placement rates or narrow focus down to 2-3 target programs that have a track record of accepting developers very early in their career. Here are some examples of the latter:
From there, craft a plan of attack for applying to those programs. That probably means coming up with a study plan and working through projects.
Awesome thanks!