Inside the Industry: Q&A with Demetra Brown

This week, Demetra interviewed Isaac Lyman, Senior JavaScript Engineer at Health Catalyst,  Author of “Your First Year in Code,” Mentor of junior coders everywhere.

Who is Isaac Lyman? Tell us about yourself.

I’m a self-taught web engineer at a healthcare tech company. By day, I write apps that help hospital administrators access and understand their financial data. I also regularly make time to write about code and help others who are trying to get into the field of software development. In my spare time I like to cook, spend time with my wife and toddler, and work on my side project, a web app for aspiring novel authors.

In your twitter bio, you mention that you mentor junior developers. Why is that important to you?

Mentoring is important to me because I feel an obligation to give back to the community that made my career possible. A lot of people took a chance on me and went out of their way to help me become an engineer. I know not everyone has that kind of privilege, so I’m trying to pay it forward wherever I can. I don’t have a Computer Science degree or any technical certificates, either; the software industry is unique in that you don’t need any expensive diplomas in order to get a job, which makes it an incredible opportunity for people who are starting out with very little.

You wrote a bold and matter-of-fact blog post on poor hiring strategies in tech called “If You Don’t Hire Juniors, You Don’t Deserve Seniors.” What inspired this piece?

I often hear from junior developers who are having an incredibly tough time getting their first job. It doesn’t matter how hard they work or where they live or how many interviews they go to, a lot of them just keep getting overlooked. Meanwhile, industry surveys indicate that there’s a huge “skills gap,” where employers can’t find nearly enough people to fill entry-level tech positions. These problems should really be solving each other, but there are a few serious obstacles. Some excellent candidates are getting ignored, simply because of their name or because they don’t have the right connections. Some employers – and these are the folks I wrote the article for – refuse to hire junior developers categorically as a policy, because they see it as charity, instead of an investment. HR and recruiting departments are lagging in their approach to finding, interviewing, and selecting candidates. The whole process is broken. Both sides are losing. I’m not an influencer by any means, but I hoped that by writing that piece I could persuade a few people to reexamine their hiring policies and processes and let in the people that will someday make their company great.

What are the not-so-obvious benefits of hiring junior staff?

Junior developers are a goldmine. They haven’t developed all the blind spots that their more senior peers are likely to have. They project enthusiasm and optimism. They’ll try new things and bring in new ideas that no one else will have. With a little investment, they’ll often contribute at the level of senior developers within a matter of months and all this for a fraction of the salary that senior developers expect.

Hiring junior developers also leads to better, more resilient software and stronger career development processes. If your company is a place where a junior developer can safely write and deploy code on a daily basis, then it’s a place with fewer bugs and more stable deployments for everyone. If you can help junior developers learn and grow and become senior developers, then you already have all the tools you need to build a bench of new senior developers, team leads, and architects. Career growth is good for everyone.

How can startups and small businesses create space to hire junior staff?

Startups and small businesses can’t afford not to hire junior staff. The cost effectiveness alone is an undeniable reason. Even with the time it takes to ramp up a mentor program, a junior and senior together are nearly as effective as two senior developers, plus the junior developer brings a variety of the aforementioned benefits. By the time a junior developer earns the title of “senior,” their understanding of processes and codebase will be profoundly valuable. And if you treat them well, their potential tenure at your company is much longer than for a senior developer or architect who trained somewhere else and is already halfway through their career.

Junior developers also need people — a human being that can answer their questions, helps them set goals, and recognizes their successes. It’s a simple thing, but it makes a huge difference.

How does hiring junior developers impact company culture?

Hiring junior developers won’t be a panacea for a toxic workplace, but they are often a symptom of healthy company culture and can contribute to it. Junior developers should be the people who remind us all that it’s okay to ask “what does that mean?”. They help us improve our documentation, strengthen our QA and automated testing processes, and make the workplace a positive learning environment. If I meet happy junior engineers at a job interview, I count that as a huge positive. That says so much about the company.

You wrote a book called “Your First Year in Code” for new developers. What advice can you offer companies that want to recruit and retain junior developers?

Junior developers are out there. They’re hard at work getting your attention and they’re submitting applications every single day. If you’re not finding them, something is broken on your end, not theirs. So take a day or two and put your hiring practices to the test. Does your interview process take more than a few hours? Cut it down to size. Not everyone has unlimited spare time. Are you asking candidates to write complex algorithms on a whiteboard? Don’t do that. It’s an incredibly ineffective way to find out if someone will be good at their job. Are your interviews open-ended and unstructured? Then they’re biased and you need to fix them.

In my experience, junior developers have a tendency toward loyalty. If you treat them well, most of them will stay. Pay them well, give them benefits, and don’t keep them at work all the time. Make work a safe place. Be humane.

Anything else you’d like our audience to know?

Let’s all agree to craft better job listings. Most companies write job descriptions like they’re searching for a half-angel-half-genius — someone who knows eighteen programming languages and invented an operating system, and can index a database blindfolded. There are a few of those out there, but you can’t afford them. I promise you, they’re making a seven-figure salary from a private office at Microsoft. Figure out what’s actually required to do the job and leave it at that. As for you junior developers out there, don’t be afraid to apply just because you don’t meet all the requirements. Give yourself a chance. Whatever you don’t know, you can learn. If you’re a little lost on your first day (and most of the days after that), it’s okay! We all are.

Editor’s note: This article has been edited for content.

Demetra Brown is a Regional Partnerships Lead for Generation USA. She helps employers connect to skilled and diverse talent pipelines. Demetra has 10 years of leadership experience in both the private and social sector. In her spare time, she enjoys snuggling up with a book and a cup of coffee.