The race for tech talent in the U.S. is brutal. According to Andela, there are five job openings for every software developer in the United States. That pushes prices way up for companies looking to hire proven software engineers.
One way around that is to hire fresh tech talent without a lot of experience. Certainly, the strategy isn't for every company, but for those that have teams that can ramp newly minted software developers, the gains can be huge. The software engineers get the real-world experience they need, while the company gets to imprint their values and workflow on someone before they develop bad habits.
Movable Ink, a pioneer in the application of contextual experiences to email, is one such company. While they hire plenty of senior software engineers (and they are hiring), they're not shy about bringing on fresh, unproven talent. We caught up with their VP of Engineering, Lee Bankewitz, and asked him about the practice. Here's what he had to say:
What do you look for when hiring developers who don’t necessarily have years of experience?
When hiring inexperienced developers, you are hiring them for their potential rather than their current ability. You want to find people who are optimizing for learning and are very excited about everything they'll learn while on your team. One way to evaluate how quickly someone might ramp up on your team is to assess how well they performed previously, even though it may not have been in software development. Maybe it was at a bootcamp, maybe a previous career. You want to know that they can work well with others — they will learn the most from their more experienced coworkers, and they'll need to recognize and appreciate that.
How do you work with fresh developers to get them up to speed?
For these new hires, structure is important. Remember, this may be the first time they're seeing an app delivering real business value. We try to pack their first three weeks with exposure to the product, technology and business concerns of the organization. There's a certain amount of initiative that we depend on from the new hire as well, and so we outline daily goals for the new hire to achieve but leave it to them to seek out the help they need. That can be hard for a new hire, so we assign an 'on-boarding buddy' that can make the necessary introductions and help the new hire in any way they need. Some examples of this include deep dives into particular areas of the code base, working through some support tickets with our support team, sitting in on a sales call or silently observing a product demo. Lastly, for developers in particular, I think pair programming is a fantastic way to quickly ramp up, and that is heavily emphasized in your first few months on the team.
What are the advantages of investing in budding talent?
If you have a hiring plan that numbers in the dozens, it's going to be quite a challenge to isolate that strictly to experienced senior developers. I don't think it's possible to go out and hire the perfect team, I think you need to create and grow that team yourself. There are lots of talented but inexperienced people looking to get their start in software development. If you have the resources to ramp up junior engineers, then the next year you'll be set up with a smart, motivated, solid contributor to your team and technology. If you're holding out for someone who already knows everything you need, then you may find yourself still looking long after your competitors have cultivated a strong cohort of developers with less years of experience.
Photo via Movable Ink. Responses have been edited for length and/or clarity.
Know of a company that deserves coverage? Let us know or tweet us @builtinnewyork.