— November 13, 2018
Today, many companies try to stay away from hiring junior software developers and only focus on mid-level and senior resources. There’s a misconception that junior programmers will break the project and deliver little to no value. Here, I will try to dispel this popular myth, but first, let’s have a closer look at where this idea has stemmed from. There are reasons businesses are reluctant to hire junior full stack developers, so let’s go through them briefly.
The mentorship problem
Juniors have to be coached for at least several months before they start delivering quality code, and one of the senior developers has to become a mentor. This means he will be spending less time on his tasks, which will influence the overall team progress. Besides, mentorship is not for everyone. Being an experienced developer doesn’t always come along with coaching and mentoring talents.
The experience problem
A code written by rookies doesn’t stand the competition against the code written by middle or senior developers. Businesses are seriously concerned that having junior devs working on an app will result in a poor app quality on a core level.
The productivity problem
Not only do experienced developers deliver better code, but they also do it much faster. Usually, 4–5 times faster than the junior devs. Surely, their salaries and compensation packages are also 3–4 times bigger, but many companies are ready to meet the expenses.
Overall mistrust and bias
This is rarely spoken of, but in general, people tend to associate price with quality. Hiring junior full stack developers is much cheaper, which automatically translates into a perceived lack of expertise, even when it comes to truly talented and promising juniors.
This spells bad news for aspiring developers: they somehow need to avoid being juniors to get into a profession. Irony aside, this also means companies may be missing a lot of great talent, narrowing down their search pools to middle and senior level candidates, most of whom happen to be already employed and will need solid reasons to leave their current jobs.
This brings us to the main reason why hiring junior programmers may be more beneficial, apart from purely financial speculations: they are more available than more experienced devs. Fresh from college, they are highly motivated job seekers and also highly engaged employees, flexible and willing to learn.
When to hire junior dev talent for your software project
There’s an international HR expertise on the subject: in Germany, hiring very young interns is a general practice, based on a belief that investing in a company’s human capital pays off in the long run. Allowing people to grow within your company also makes for higher employee loyalty, engagement and, subsequently, retention rate.
According to Anna-Maria Sabov, Head of HR and Recruitment at 8allocate, an international software development outsourcing company with an R&D Center in Kyiv, Ukraine, “Apart from being energetic and enthusiastic — unlike senior employees who may already suffer from the occupational burnout — junior employees are moldable and will easier adjust to a company culture. Some experts also believe them to be more capable — i.e. more knowledgeable about recent technologies and more forward-looking when it comes to innovations. I can’t agree more.”
Rookies have less to ‘unlearn’, so to speak, and can be easily coached to do things differently. Also, as much as companies may strive to avoid bias and discrimination, they are less burdened with family duties, are eager to work longer hours and are less concerned with retirement plans at that point of their career.
In a Quora discussion, where insiders share their expertise on hiring junior developers, Richard Cowley, Director at Workammo, said a lot would depend on the development stage of your project. “Can you deliver a product with a reduced capability — yes often” — he says. “It may take longer, you might not get the golden product, however, you might get to MVP sufficient to get investment and then hire more capable talent”.
“One more case when junior developers are indispensable is when you have lots of routine maintenance tasks on your project and simply can’t afford your experienced middle or senior developers to waste time on them,” says Anna-Maria Sabov of 8allocate.
Ben Gamble, CTO at Quincus, generally agrees: “They (junior developers) free up your time for the hard stuff. A lot of tasks require time more than skill. Testing, research and data entry all require hands, minimal brain and a shocking amount of time”.
Rob Adams of Startup Arts has a similar opinion: “I hate to say this too, but junior devs will tend to take the load off your more experienced devs for less gratifying work like maintenance. You’ll get more bugs fixed”.
Whether you are running an established company or a startup is also important.
“An ideal ratio of experienced to junior employees is 3:1, but you may just as well figure out your own proportion.”
Here’s a brief synopsis on the benefits of hiring juniors for startups and SMBs:
Payment and compensation benefits
As a rule, junior developers don’t have many family and community obligations, and will easier accept more company equity and less monetary remunerations.
Flexibility and willingness to experiment
As said above, junior talents don’t have much to unlearn, think out of the box and can come up with fresher ideas.
Recruitment source and competitive analysis
Juniors tend to network more, attend developer meetups, circulate and mingle. They can easily introduce you to new talent, update you on what’s going on on the market and what your competitors are up to.
In general, juniors are more willing to take risks and more tolerant of the uncertainty of a startup environment.
For large companies, the reasons for hiring junior coders look slightly different:
Maintenance and routine tasks
You can painlessly trust them to junior developers while your senior devs focus on the important stuff. Junior full stack developers are also less likely to cringe at tasks and will do whatever the project requires: bugs, test dev, infrastructure/scripting and so on.
Junior developers will easily accept your company values and blend into your corporate culture — in a couple of years they may grow into effective and loyal seniors.
Longer work hours
Because they have fewer family responsibilities, they tend to be more focused on career and can spend more time on the project, if needed.
In general, opinions differ as to how many junior programmers you can have on your team without it negatively influencing the project. Some experts claim no more than 4, some believe it doesn’t matter as long as you have at least one lead developer with strong mentoring skills to coach them on all the specifics of the development cycle.
The bottom line is — do not give up on the young talent, especially those gifted, self-driven fast-learners. Hiring highly motivated and enthusiastic junior developers may be the best thing that happened to your team, as long as you remember — they do require mentorship and supervision, and fostering new talent will surely require effort and time.