Reducing Junior Software Engineers’ Time-to-Productivity

Noga Mann
5 min readJul 25, 2021

Software engineers without any previous work experience have a hard time finding their first job in tech. According to a survey conducted by the job search site IL Jobs, only 4.5% of the published jobs in the Israeli tech industry are intended for juniors. There is a high demand for software engineers, but companies prefer to hire experienced developers. One of the reasons for that is the fact that inexperienced developers have significantly higher “Time-to-Productivity” — the amount of time it takes to make an engineer productive and valuable.

Even experienced engineers must go through a learning curve when they join a new company, including learning the product, the technology, and the company’s unique culture. Junior developers need to learn all that, plus general industry practices they haven’t adopted yet — such as how to use git, or how to investigate bugs and errors in different environments — skills that experienced engineers already have acquired. It will therefore take junior engineers longer to bring value to a company. Additionally, they require more time and attention from senior engineers who support and mentor them. That is why employers often prefer hiring experienced employees who are quicker to train and onboard.

An online sprint kick-off meeting

QueenB is a non-profit organization I founded during my Computer Science university studies. Seeing how few women choose to study coding frustrated me, so I decided to try and attract more women and girls to the tech industry. The organization offers coding lessons for teenage girls, as well as helps female university students find their first industry job. As an engineering manager in K Health, I had the incredible opportunity to start a collaboration between K and QueenB that will help bridge the gap faced by many new graduates. The goal was to give a group of talented junior developers tools that would reduce their “Time-to-Productivity”, hoping this will also make it easier for them to land their first job. Project participants were selected to be female students in their last semester who are volunteers with the QueenB organization — mentoring young girls and teaching them code.

We started by identifying those things you won’t learn in a Bootcamp, college, or university, but can only learn through real-world experience. We recognized that fresh graduates excel at getting a well-defined task and implementing it. They do this a lot as part of their studies and prepare for job interviews that require them to do so. What they lack are mostly skills of working within a team that serves a business.

Writing code as part of an engineering team is different than writing code for a specific, scoped assignment. It requires you to write clean code, have it reviewed, and improve it accordingly since your code will be read by others many times and should be as clear and understandable as possible. You need to learn how to navigate within large and unfamiliar codebases, as well as learn who and how to ask for directions. Being a part of an engineering team also requires you to adopt best coding practices, such as writing tests that protect your code from being broken by changes made by others. You also need to learn how to frame your ideas into a tech design and then have them reviewed before implementing.

The project participants and mentors at the K Health office

Writing code as part of an engineering team that serves a business requires even more — realizing you’re working toward a greater goal, and understanding how every user story or bug you are working on impacts the business. It requires you to collaborate with product managers, designers, QA engineers, and others. It means to release a fast and slim version of a product, collecting feedback, and only then iterating and improving it. It requires monitoring and maintaining the quality of the products you release since there are end-users relying on it.

We attempted to fill in those gaps by simulating the work of a real engineering team. We selected six students in their last semester to participate and matched them with four mentors from the K Health engineering department who served as team leader, product manager, and fellow senior developers. The team worked on implementing a Covid-19 ‘Purple Badge’ app for workplaces, allowing office administrators to limit and monitor the number of employees who arrive at the office each day. For three months, the team met every two weeks for the sprint kick-off sessions. An initial release of the product was presented within six weeks, followed by subsequent versions that offered more features.

The “Purple Badge” app for workplaces, allowing office administrators to limit and monitor the number of employees who arrive at the office each day.

As a guideline, we tried to make everything as similar as possible to the real work of the company. We communicated via Slack, gave engineers mock designs through Figma, and did the synchronizations through Daily Standups. The project was implemented using node.js, React, PostgreSQL, dockers, and AWS. All PRs were reviewed in GitHub, following the same code review standards used at K Health.

As of now, four of the six project participants have found jobs and K Health itself has offered others full-time positions within our team. Project participants said they learned new technologies relevant to the industry that they didn’t get a chance to work with during their studies and also experimented with designing DB schemas and APIs for the first time. They learned to search for answers on their own and approach their mentors when needed. They have gained experience working with agile processes and using software applications used in the industry and saw what an entire project’s codebase looks like. They worked as a team and solved challenges together, skills that will be significant to them when it comes to their first opening job.

Sign up to discover human stories that deepen your understanding of the world.

Free

Distraction-free reading. No ads.

Organize your knowledge with lists and highlights.

Tell your story. Find your audience.

Membership

Read member-only stories

Support writers you read most

Earn money for your writing

Listen to audio narrations

Read offline with the Medium app

Noga Mann
Noga Mann

No responses yet

Write a response