Software is eating the world say the pundits, and consequently companies like Auto Trader are hungry for developers. The excess of demand over supply has led to initiatives such as TechReturners and our own recent Returners Discovery Day, which aim to lure back those who have left the industry. But there is another source of coding talent which has emerged in recent years: the coding boot camp. Can a few months of coding practice be enough to prepare someone with little or no experience of coding for a career as a developer? Even someone like me?
I Don’t Know, But I’ve Been Told…
Two years ago, I was a maths teacher in a secondary school in the North West of England. Now, instead of dealing with unruly teenagers, I grapple with continuous deployment pipelines, distributed machine learning, orchestrated containers, cloud services, reactive apps and just about every flavour of database architecture. I code in Scala, Java, Python and occasionally other languages such as Ruby, Kotlin or TypeScript. My team, the Data Engineering squad, are tasked with writing and deploying the next generation of Big Data tools being used by Auto Trader.
How did I manage to make the transition from teaching to coding? A significant part of my effort was devoted to getting through a course run by a young but rapidly growing coding boot camp based in Manchester called Northcoders. So, how well did they prepare me for the rigours of life at a fast-moving company like Auto Trader?
But that would be a rather hasty assessment. I spent much of the twelve intense weeks learning about more fundamental aspects of software development. There was a solid grounding in the bread-and-butter of coding: data structures, functional and object-oriented programming paradigms, standard algorithms, regular expression syntax, asynchronous calls, principles of REST APIs, MVC architecture, databases.
Throughout the course, there was a clear emphasis on solving technical problems independently, in order to build self-reliance. Our targets were always ambitious, and yet somehow we managed to attain them. For the final project phase, I worked with four other students to build an expenses app, hosted on Google Firebase, that featured a chatbot, natural language processing, and a React/Redux web front-end.
As well as the technical education, all students received relevant and focused career support provided by the excellent Rebecca Taylor and James Heggs at CLOS, who expertly guided us through the process of making ourselves more marketable.
Arguably, the most important lessons were to do with behaviour, such as:
- linting and clean code practices,
- test-driven development,
- effective pair programming,
- proper use of version control,
- Agile workflow.
All of these are highly relevant to my day-to-day work right now.
One counter-argument against the boot camp model is that there is so much material available online for self-study that a determined student should be able to use for free. That’s true, and that was my initial approach to switching my career. But, the massive amount of available material is also the problem. What should I study? To what depth? Should I learn C#, Java, Go, Erlang, Clojure? What technologies and skills are sought by companies right now? The benefit of a well-run boot camp is that it provides a curated syllabus, a focus for students’ efforts, which massively accelerates the learning process.
Most importantly, however, you gain some credentials. It would be great to think that my value as a job-market candidate would have shone through my c.v. without any enhancement. I wasn’t a complete newbie. From my mathematical education, I had some knowledge of C and Python, as well as high-level number-crunching tools like Matlab and Maple. However, I got almost no responses from the dozens of applications I sent off prior to subscribing to Northcoders. Completing a course such as Northcoders seems to provide recruiters with a degree of quality validation that makes candidates much more appealing.
Clearly, much depends upon the quality of the boot camp itself. In recent years, there has been something of a backlash against the “rack ‘em, pack ‘em and stack ‘em” practices of some boot camps (particularly in the US), and clearly (in some cases) the standard of teaching did suffer. I feel pretty happy that I received a very high quality of instruction, and that the material was well-chosen and relevant. Like any educational establishment, a boot camp will ultimately trade on its prestige. An organisation like Northcoders has a strong regional identity and thrives by building up a reputation for delivering well-qualified candidates to local employers. Even if the temptation to build quantity over quality exists, the guilty are likely to suffer severe damage to their prospects with their hiring partners.
A Bigger Pool
So, perhaps boot camps are a good thing for their students. What about the employers? After all, why should a top-quality software company favour a boot camp graduate over a Computer Science graduate from a good university?
The least interesting answer to this question is that the Computer Science graduate may not be available. After all, boot camps have emerged as a solution to a skills shortage.
Much more useful is the insight that these organisations massively widen the pool of available talent. This isn’t just about making company diversity statistics look better: the majority of my cohort had several years of rich experience behind them in a variety of fields. My fellow graduates include former engineers, sales professionals, creatives, analysts, librarians and even a record-company mogul! These are people who have decided what and who they are, and are willing to work hard and enthusiastically towards their goal. They bring knowledge and insight beyond that of the standard graduate or apprentice.
Clearly, from the students’ point of view, there are costs to the boot camp route, in money but also in time. My children were orphans to code for the duration of my twelve weeks at Northcoders, while my wife had to resign herself to the fact that I was spending more time with Stack Overflow than with her. The cost/benefit analysis will be different for everyone, but for me it settled unambiguously on the credit side. I was interviewed and accepted by Auto Trader within a week of finishing the course and have enjoyed my experience here enormously.