The question ‘how long does it take to learn to code?’ is often answered with an initially dispiriting forever, because it is in the nature of software developers to always be learning new things. On the other hand, one way to get an answer inclusive of a negotiable timeframe is to ask: ‘How long will it take from the first day I begin to learn to code, until I start on my first job as a developer?’
While this question is answerable, it is a bit like asking ‘how long does it take to get to the top of a mountain?’ Much will depend on the path taken, the aptitude of the climber, the weather, and a thousand other variables.
Thus, I propose that we try to sketch an answer by looking at the profiles of six aspiring programmers and their different journeys into tech. These guys and gals are imaginary, but inspired by real cases we’ve seen. How long will it take each of them to find their first job?
#1. Christian – University Student
Christian enrolled for a Computer Science university degree at the age of 18. He is committed to his studies and gets excellent grades, but does not pursue programming projects outside of his academic curriculum, and his portfolio is limited to the assignments given to him by his university. He graduates aged 21 and starts looking for jobs.
Time to find a job: 4-5 years. This is by far the most inefficient path into the tech industry, and not just because university degrees take years to complete. As one of our own graduates has argued, a lot of academic work is abstract and theoretical rather than geared towards the professional world. Christian does have a strong certification, meaning he will very probably find a job in due time, but having done little of his own to curate his portfolio, he’ll have trouble standing out in the tech labor market.
#2. Annemarie – University Student
Annemarie is also enrolled in Computer Science at university. While her grades are not as strong as Christian’s, in her spare time she built websites for her mother’s bakery and her best friend’s music band. She also regularly checks job boards, and networks with the tech community within and outside of university. In her second year she begins applying for internships with small software companies.
Time to find a job: 2-3 years. Annemarie knows what she is doing. She complements her studies with practical work and doesn’t wait until graduation to dip her toes into the world of work. She will likely get a job offer before the end of her degree; otherwise, she’ll find one almost as soon as she steps out of university.
#3. Sophia – Self-learner
Sophia already has a full-time job, and has never thought of herself as very good with computers, so she learns coding at a manageable pace. She sticks to free courses online, and studies for 10 to 15 hours every week, occasionally paying a mentor to help her out.
Time to find a job: 1-1.5 years. Sophia is right to study at her own pace, but her lack of certifications could hold her back when the time comes to apply for jobs in programming – potentially for a long while. She did make an excellent choice in getting the services of a mentor though, as she now has someone to make sure she is learning efficiently and doesn’t get stuck on trivialities.
#4 Lara – Self-learner
Lara is unemployed, and has committed fully to learning how to code all by herself. She studies 40-50 hours a week on free Codecademy courses, logs her progress on social media through the 100 Days of Code challenge, and writes blogs about her code. She identifies the topics she is interested in, specialises in the relevant languages, and uses them to build a solid portfolio.
Time to find a job: 6-10 months. Lara’s commitment is admirable and one day will give her a beautiful story to tell. But it is her decision to network that will give her that extra boost: by engaging with the community, she’ll learn about time-saving frameworks like Laravel that will further accelerate her learning speed. Like Sophia, she’ll have some initial trouble competing for jobs with certified graduates in Computer Science, but her dedication to her portfolio will let her overcome that obstacle.
#5. Mehmet – Bootcamp Student
Also unemployed and looking for a new career, Mehmet has signed up for a professional coding bootcamp. He works with a coding instructor and a class of teammates on targeted coding projects. He also gets personalised career coaching to perfect his CV and interviewing skills, and he emerges from the bootcamp with his own portfolio as well as a certificate of graduation.
Time to find a job: 3-4 months. Mehmet went for the quick path, though certainly not the easy one. Coding bootcamps are challenging, but they are notoriously among the fastest ways into the industry. Their duration can vary – ours are among the longer ones at 15 weeks, because we want to train developers to be full-stack in the true sense of the term. Mehmet was also wise to choose a bootcamp which provides professional career services – not all of them do, and these can make a powerful difference.
#6. Marcel – Self-learner
Marcel has a degree in Pure Mathematics and a professional background in finance, though he is currently taking a sabbatical year. He is naturally brilliant with numbers and data, and a tireless learner, studying full-time hours every day. Like Lara and Sophia, he takes advantage of free courses online, but unlike them he focuses exclusively on one language, learning how to code only in PHP.
Time to find a job: 2-3 months. Cases like Marcel’s are rare, but they do happen. His natural talents will let him pick up coding much faster than the average person. Learning only PHP will make him very limited as a developer compared to most others on this list, but at the same time, he has chosen a language for which there is very strong demand on the market, and this means he will almost certainly find someone in need of his skills.
Conclusions
As the above examples show, there is no one answer to the question of how long it takes to learn code, and this for the simple reason that there is no one way to learn code. Choose the path that works best for you, and remember that the true measure of what you learn is not the time it takes you to acquire it, but the confidence you have when deploying it.