A step-by-step playbook to successfully hire coding school graduates and set them up for success within your engineering team
In recent years the number of coding schools and bootcamps have exploded, with the number of graduates growing from around 3,000 in 2013 to over 20,000 in 2018 according to an industry report by Course Report. The coding school market is now a $240M+ industry with more than 100 full-time programs in the US and Canada alone.
Coding school programs, whether they take place in-person or online, offer students an accelerated and more cost effective path to learn computer programming. And the number of graduating students is rapidly encroaching on the estimated 93,000 students who earned an undergraduate degree in computer science in 2017.
While coding schools and bootcamps offer an attractive alternative means of breaking into a technology career, students graduating from these programs enter the workforce with a different trajectory and set of experiences than students graduating from a typical 4-year university. And while many employers are attracted by the possibility of hiring from this new pool of talent, most are still flying blind when it comes to figuring out how to hire coding school graduates and integrate them into their engineering organizations most effectively.
We’ve talked to coding school graduates and employers alike to pull together this guide on how to make the most out of hiring coding school graduates. If your company is interested in hiring these students, start here.
Understanding the anatomy of the coding school
The moniker “coding school” or “coding bootcamp” is often thrown around loosely, and the first step in successfully hiring graduates from these programs is to learn the nuances of each—not all coding schools are created equal. Most coding school programs are unaccredited and vary greatly in duration and format, so begin by getting a sense of the curriculum and rigor required to graduate from any program you are thinking of hiring from.
According to Course Report, the average coding school program lasts for about 14 weeks and the vast majority of programs meet in-person, although the prevalence of online offerings is growing. On average students pay $11,900 in tution—far below the cost of the typical undergraduate degree—but many alternative forms of financing are becoming available. Here are a few examples of the different models employed by some of the most popular coding schools.
Andela focuses on identifying and training software engineering talent in Africa, before placing graduates in full-time roles on global engineering teams. The company actually pays students throughout the course of their training (there’s no cost to the student), and graduates technically become Andela employees although they work day-to-day on the engineering teams of Andela’s partner companies. Hiring managers interested in hiring Andela graduates must technically become an Andela partner in order to work with their engineers.
Lamda School offers students the option of completing their program by attending full-time for 9 months or part-time for 18 months. All classes are taken online, and students have the option of either pre-paying for the program or paying nothing up front but then paying Lambda back 17% of their salary for two years once they land a job (payback is capped at $30,000).
Only about 5% of coding schools or bootcamps are university affiliated, but companies like Trilogy Education partner with universities to help them deliver skills-based training programs often through extension school style bootcamps. Here’s an example of one such program—a 24 week web development bootcamp offered through the University of New Hampshire.
General Assembly offers perhaps the largest range of coding classes offering both full-time and part-time courses that are available either online or on campuses in major cities throughout the world.
Understanding the anatomy of the coding school student
According to a survey by Switchup, coding school students range in age from 18 to 75, with the average student being around 30 years old. Interestingly, 80% of students have already earned a bachelor’s degree or higher—many are either trying to level up their technical skills or are switching careers altogether.
Nearly three quarters of students cited career advancement as their reason for attending coding school, and 58% of students had little to no programming experience prior to their entering their coding school program. For employers, this is important context—a vast majority of students are starting the process of learning to code from scratch.
The good news? Students are generally getting what they hoped for out of coding school programs and bootcamps. On average, graduates see a salary increase of about $20,000 after finishing their program, raising their salary from an average of $42,000 prior to the program to $62,000 upon completion.
This is also important context for hiring managers—while coding school graduates are in most cases relatively junior engineers that will need continued mentorship and training once hired, graduates tend to be hired at very affordable rates compared to more experienced engineers.
How to select coding school graduates
Once your company has decided to give hiring coding school graduates a go, the challenge quickly becomes, “OK, but who do we hire?” With more than 20,000 graduating students each year the process of finding your next great developer from within this talent pool begins.
Look for students who geek out on code
The hiring process should start by really delving into the reasons that the student wants to build a career in software development—understanding their underlying motivations is the first step in making a great hire.
“Look for the really curious, smart and passionate people,” says Jane Jaxon, VP of People at Wistia. “There are people who go to coding school for the same reasons many folks go for a MD, MBA or JD—the potential to unlock a very lucrative career. Pick the curious person who is genuinely passionate about what they do and wants to learn. If they genuinely geek out about the craft of coding, it's a great start!"
Create a coding assessment to pre-screen for basic skills
While your potential new hire just completed coding school, it’s totally appropriate to pull together your own coding assessment to validate that graduates have the basic skills that they’ll need to be successful at your company. Make sure that the assessment is delivered in a language that the student learned during coding school, and focus on testing only fundamental concepts. Also make sure that students can work within a development environment that they feel comfortable in—you want to give them every opportunity to showcase their skills.
While coding assessments are sometimes unpopular with more senior engineers, you’ll find that coding school graduates often embrace these assessments enthusiastically as an opportunity to showcase their new skills and distance themselves from other applicants. This is also a great litmus test for whether or not the potential hire really geeks out on writing code.
Start by hiring out of one program
With the competition for engineering talent being so fierce, you may be compelled to look into hiring any coding school graduate that finds their way into your applicant pool. While we can’t blame you for giving those applications a look, if you’re just getting started with hiring coding school graduates we’d recommend that you carefully select a particular program to start with and focus initially on successfully recruiting their graduates.
This works for a couple of reasons—first off, with programs like Andela your company will become an official partner and will have access to their graduates as a result. Additionally, schools with a model like Lambda School often don’t get paid until they land their graduates a job. With this model, the school itself is highly motivated to find companies that consistently look to hire their graduates. Finally, by familiarizing yourself with a single school you’ll come to get a better sense of what skills their graduates do and do not possess upon graduation based on the rigor of the program and its specific curriculum. You’ll also have the opportunity to build relationships with the school’s staff, and schools quickly become echo chambers when students and staff alike are consistently hearing great things about working at your company from previous graduates.
Want to take the relationship a step further? Ask your existing engineers if they would be interested in serving as mentors or even guest lecturers within the program you’ve selected. Some members of your existing team would probably love the chance to help shape the skills of future co-workers.
Hire more than one engineer at once
While we’re advocating for hiring out of one coding school to start, you should hire more than one coding school grad at a time if at all possible. This is helpful for a number of reasons—to start you simply have a bigger sample size to look at when assessing the skill level of coding school graduates. This helps you avoid false conclusions about the viability of hiring engineers from a particular school based on one really good (or bad) hire.
Secondarily, remember that most coding school grads came into the program without any prior programming experience—suddenly being thrust into a technology company and expected to deliver code can be hugely intimidating! By hiring even small groups of students in cohorts, new hires have the comfort of having peers at the same level, which can also create a healthy sense of competition. New engineers will be ready to prove their mettle!
Now that we’ve covered how to hire coding school graduates, let’s turn our attention to how they can best be integrated into your existing engineering team.
How to successfully integrate coding school graduates within your engineering team
You’ve identified a coding school program that you’re ready to turn into a consistent source of junior talent for your engineering team, and you’ve even found a couple of aspiring engineers that you’re ready to bring onboard. Here’s how you can set those new hires up to be successful.
A solid game plan requires pre-work
This may sound obvious, but successfully hiring junior engineers begins with carefully scoping what you’re expecting to get out of them. Identify work that can be successfully completed by junior developers, and have a realistic model for how long these tasks may take. Use your task management software to label simple bugs and small improvements that would be not only good experience for new developers, but also helps them develop a deeper knowledge of your code base.
“They started me out with small tasks for a front-end engineer like, ‘Fix this CSS bug that we have,’ or ‘the product team wants this text changed,’” says Chris Atoki, a front-end developer who graduated from Lambda School before being hired at Neat. “Even though they knew I could change text it was more of just getting in that flow of making a pull request and getting it reviewed and merged. It helped me get a feel for how the code base works. They didn't demand that I start pushing code that first week, it was more of, ‘take your time, it's a huge code base, get familiar with it.’"
Talk to your existing team and find senior developers who would like to gain supervisor or management experience, and are willing to step into a mentorship role. They can help you pull together some of the items outlined below—you need to have these items ready before you start hiring.
Assign new hires an internal mentor
Generally speaking coding school graduates are going to be a better fit at larger companies that have teams of more senior engineers that can help mentor them and level up their skills. If your company is a resource constrained start-up with a development team that doesn’t have time to spend developing junior engineers, chances are your hires won’t be too successful.
“I came in pretty confident that I knew the job that I had to do,” says Atoki. “Neat hired me as a junior developer and one of the things they did was assign me to a senior developer that I worked very closely with. I knew React and the front-end technologies pretty well, but he had years of experience with the things that I may not have encountered doing projects on my own, so he was able to fill in those gaps for me.”
When bootcamp graduates join your team, assign each of them an internal mentor that they can go to to ask questions and get feedback on their work. After initial onboarding, make sure your new hires have 1-on-1 meetings with their mentor at a minimum of once per week.
“Pair bootcamp grads with a great mentor who is interested in becoming a manager,” says Jaxon. “It's a great way to get two people exactly what they need in order to grow their careers and both parties have equal stakes in the success of the relationship."
Clearly lay out a professional development plan
Remember that coding school graduates will typically have only learned the basics of programming in a particular technology. It’s very likely that your company leverages other technologies or has certain development practices that are critically important to learn in order for an engineer to start contributing in earnest.
Whatever those technologies or practices are, clearly outline them for your new hires and present them with a curriculum that they’re expected to follow to continue to level up their skills while on the job. Allocate at least 10% of your new hires’ time to continued professional development—they may think that they just completed coding school, but it’s your job to continue to invest in their education so that your investment in each new hire continues to appreciate and add increasing value to your team.
"Don't underestimate the value of time,” says Jaxon. “There's only so much you can learn in such a short period of time and bootcamp grads haven’t had that many opportunities to run into issues and learn from them. Folks with more traditional computer science training likely have the benefit of more time engrossed in engineering problems and have had more learning opportunities as a result. If you view the early employment of coding school graduates as an extension of learning, you'll be much better positioned."
Reinforce learning by continually assessing core concepts
Your new hires will appreciate that you’ve clearly laid out a professional development path for them—but make sure you have the ability to continually assess and objectively measure their learning. Code assessment platforms like Qualified allow companies to continually assess their engineers, providing not only valuable insight into the relative skills of your engineers but also an opportunity to continually reinforce core concepts with new hires. The team at Andela has started doing this with new hires, with significant success.
“For internal leveling, we test learners multiple times,” says Maya Neria, Senior Product Manager at Andela. “One use case we tried was testing knowledge and behavioral reinforcements by continuously testing our developers on important use cases like certain types of testing or debugging. We wanted to make sure that developers are consistently being tested throughout our training program on those things. We saw that Qualified helped with knowledge retention, which was really promising.”
Give coding school grads opportunities to immediately contribute to your code base
Nobody wants to make it to the big leagues only to sit on the bench—the same is true of software engineers! After completing coding school, students are eager to get to work and put their new programming skills to work—it’s your job to harness that excitement and continue to build on it.
While it’s common for junior engineers to start off by focusing on squashing bugs, look to provide opportunities for new hires to contribute new code to your code base as well. It’s probably not going to be your company’s next major new feature, but seeing your first code push go live and seeing customers actually interact with functionality that you built is a high for most engineers that are just getting started. Celebrating small contributions is a requisite step in reaching higher level contributions.
Encourage new hires to work on side projects
This one may sound strange at first blush, but one of the best things you can do for a junior level engineer is encourage them to work on side projects. While they’re beginning to contribute to your company’s pre-existing code base, encouraging coding school graduates to build a side project has a plethora of benefits.
First off, it gives them additional experience outside of working with your code base. They can build a project based on their personal interests, and in addition to writing code will gain valuable experience in requirements gathering and designing a software product from the ground up. They may even choose to build their side project in an entirely different or complementary technology to your own, further diversifying their skill set.
Encourage new hires to share their side projects with their mentor or with other engineers on your team during 1-on-1’s or team lunches, or leverage communities like IndieHackers to share their side projects with other developers to get feedback and celebrate milestones. You’re trying to stoke the embers of your new hires’ excitement for programming, and shouldn’t view side projects as being in conflict with their primary role at your company. If you’ve followed the guidance outlined in this guide, your new hire will be appreciative of these opportunities and loyal.
20,000+ coding school grads are looking for jobs… now go get ‘em!
As the number of coding school graduates continue to increase, so does the opportunity that your company has to turn these programs into a valuable source of new engineering talent. Going to coding school is an investment each student chose to make in themselves—it’s your job to continue to invest in these individuals so you avoid any failure-to-launch type of scenarios.
Pair students that demonstrate basic skills and a genuine passion for coding with a clear professional development path and who knows—your next CTO might just be enrolling in a coding school today.