A Sneak Peek Into Upsilon's Developer Recruitment Process
The job market is by all means competitive. And acquiring top talent requires a lot of work, time, and an effective strategy to find the best candidates and build long-lasting work relationships that'll result in a fruitful collaboration.
This article reveals our secrets of successful developer recruitment and gives actionable tips from experts. Upsilon's recruiters and Tech Lead share the ins and outs of how we hire software developers and the corresponding internal processes you can make a note of. Let's roll!
Why Are Top-Notch Hires Vital for Business?
No project or company will come off without an outstanding workforce. Human resources and talent are crucial assets, forming the foundation of any project. People are more important than the tools you use for work or the technology you adopt. After all, they are the ones who'll bring your ideas and product to life, represent your brand, and contribute to overall business growth.
Consequently, having the wrong employees on board as you form or scale the team can backpedal your chances for success. In fact, statistics suggest that having a poor team is one of the most widespread causes explaining the startup failure rate, accounting for 23% of the cases, which is almost a quarter of the time. Therefore, if you're not sure how to find software engineers, keep reading to find the steps and get expert tips.
How Hard Is It to Recruit Software Developers?
Finding the perfect person is tough, and filling a single position may sometimes take months or even more.
Here are some stats from Upsilon's recruiters to shed light on the possible work scope if you decide to initiate a software developer recruitment process. We have to note, though, that our candidate selection process is in-depth, and the standards for hiring web developers are very high. This means that only a small percentage of those who make the cut become part of our team. Hence, those startups or companies who turn to us for web development services or to partner up with a dedicated software development team can count on getting only the top specialists to join their projects.
The table below shows our 2022 statistics on hiring software engineers for four roles, giving the complete funnel data. This includes the number of screened candidates from the initial pool all the way down to the actual number of specialists who were hired as a result.
As you see, the number of specialists who pass Upsilon's selection criteria before getting invited to become a part of the team is rather small compared to the initial pool of candidates. The figures differ based on a given role. But if we look at the Middle Python Developer role as an example, only one out of six interviewed candidates received an offer, while with Senior ReactJS and React Native Developers, it was one in eight.
What could you conclude from the above? Bottom line: be prepared to invest time when planning to hire software developers. This includes both scenarios of handling software engineer recruitment on your own or turning to a specialized headhunting agency.
How It Works: Typical Stages of Hiring Software Engineers
What is the IT recruitment process like? And how exactly do we hire software developers? Upsilon's recruitment managers shared some talent acquisition "behind the scenes" which you can note. They explain how we get a hold of the leading developers and tech specialists. Below we describe how to recruit software developers effectively and share Upsilon's hiring pipeline peculiarities to give you an example to fall back on.
1. Job Opening Request
The hiring cycle begins with a request about an open role. For instance, the Tech Lead notifies the recruiters that a particular project's web development team needs another full-time Senior Python developer or a QA engineer.
If you're thinking about how to hire a software engineer who'll be perfect for the role, a key success factor is having a clear understanding of who exactly you need. Think about why you need this person, which qualities you're seeking, and what skill set the ideal candidate must have.
To fill the new position most effectively, the recruiter and Tech Lead (or the person who requested the job opening) should put together a detailed list of the requirements to be met, noting all the essential criteria and the "nice-to-haves" to seek in a candidate.
The parameters for hiring web developers can, for example, include having:
- knowledge of specific programming languages and tech stack;
- a relevant degree;
- a certain skill set or tech background;
- previous work experience in the field (with a specified minimum number of years);
- soft skills (that'll help the new employee fit in);
- plus, a set salary range.
2. Where to Find Software Developers, Sourcing, and Screening
Posting a Job Description
Based on the ideal candidate portrait, the recruiters should form a detailed job description and best practice for posting jobs on different job boards is with Talent Acquisition Software. Where do you find software developers? It is considered a best practice to post information about your job opening on:
- various job portals and boards (such as Indeed, Glassdoor, or CareerBuilder);
- professional social media channels (like LinkedIn);
- other social media channels (like Facebook, Twitter, and even Instagram);
- your internal Careers page.
As Upsilon's Head of Recruitment, Mstislav Ignatenko, shares:
“To me, it's sort of like creating a spiderweb. We distribute information on various channels, and the larger the scale we cover, the bigger will our primary funnel be. This way, we'll have more candidates to choose from. This is precisely why recruiters try to automate the sourcing and screening processes as much as possible: to get the best results with minimal effort in terms of quantity, not quality.”
Once you get your first responses, you can move on to the sourcing phase of software engineer recruitment. Generally, the candidate sourcing process begins by:
- browsing new applications and CVs;
- reaching out to people using LinkedIn or similar platforms to connect with professionals and review their profiles;
- looking through the existing database list (those who've been contacted some time previously);
- considering the referred candidates by employees.
How can you decide which candidates match the vacancy requirements when hiring software engineers? You need to consider the carefully chosen selection criteria, as this will ensure that the best candidates from the pool of applicants or potential hires get shortlisted for the next stage.
During the screening phase, it is vital to audit each specialist's career path, sift through the resumes, and sort the relevant candidates, collating those who can be a good fit for the role.
With so much data to go through, things can get messy. So, to streamline the process and keep things organized, applying modern recruitment software is considered a best practice.
As such, Upsilon's recruiters have their own tools at hand. Apart from the standard recruitment "gadgetry" like templates, scorecards, and advanced LinkedIn features, the team is equipped with customized functionality in Fibery, which was custom created by Upsilon's team to automate recruitment processes.
This technological approach allows for simple record-keeping and provides lots of automation opportunities while you recruit software developers. Thanks to the customization made by the team, the solution is shaped right around the recruiters' needs. Hence, Fibery frees up a lot of the recruiters' time and aids them in their daily work. We use it to store data on all the HR processes, including:
- mapping and organizing all the recruitment stages and the entire candidate pipeline (with position/candidate cards and the ability to track the status);
- dated interaction history with the tech candidates (from resume review to those who were shortlisted for interviews to the comments given along the way);
- showing onboarding process data;
- advanced reporting and dashboards.
3. First Contact
Unlike the previous steps of the developer recruitment process, this one focuses more on quality. Recruiters use different channels to contact the candidates, including LinkedIn, Telegram, phone calls, email, or others.
Although recruiters use their own templates for communication to speed up the process, a personal approach is crucial at this point. If a candidate seems like a suitable match based on the profile information, the dialogue has to be personalized so that the candidate feels valued. Otherwise, the person may get the impression of talking to a robot, and that is never good. It works both ways, and recruiters also do their best to identify whether this candidate is a good match for the company or startup culture and will fit in.
At this step of hiring web developers, the major aim is to ensure that the candidate is interested in the job opening and qualifies for the role. As a rule, the discussion covers an array of points, including:
- whether the person is open to work;
- the project and team composition;
- salary expectations;
- the possible start date.
4. CV Review by the Tech Lead
After discussing the main points with the candidate, the recruiter passes on the CV and the obtained information during the first contact to the Tech Lead (or hired CTO, or decision-maker), who reviews the resume and decides whether the candidate should be interviewed or not. If the answer is yes, the recruiter sets up an interview.
5. HR Interview and Tech Interview
Now that you've scheduled an interview, prepare a list of questions to cover during a face to face or virtual interview. Make sure to carefully review the CV so the discussion is more personal. It is vital to avoid unnecessary questions and have a to-the-point talk without wasting time. Actually, some employers prefer to split the process into several interviews that may be held on separate days.
Pro tip: to make the employment procedure more effective, Upsilon does its best not to extend the interview process into multiple rounds. We value the candidate's and our employees' time, so, in most cases, there's a 2-in-1 interview, combining both the HR and tech parts. It's held either in person or via a face-to-face video call. As a rule, several interviewers, including the recruiter and Tech Lead, participate in the meeting.
The HR part is more casual. The discussion usually includes information about the company, the project, and other things the candidate may be interested in, such as the general employment terms. Upsilon's Senior Recruiter, Hanna Makeichyk, shares her opinion:
“The recruiter's task is to create a comforting atmosphere so that the candidate does not feel like he's being interrogated. Instead, it should be easy to talk openly about previous work experience, challenges, job expectations, goals, and so on.”
The tech part of the interview commonly includes a set of role-specific questions. It could be followed by a test assignment to understand what the candidate is capable of.
How do we do it at Upsilon? Because a person can be well-versed in the theoretical part, we prefer to check whether the practical skills are as claimed in the initial interview using live coding. We'll dwell more on this important phase of hiring software engineers a bit later on.
6. Possibly an Extra Interview
As we've mentioned above, there may be a second and even third interview, depending on your processes and internal procedures for recruiting software engineers. For instance, you might need to specify certain information, or maybe you'd like to test a certain skill that wasn't accounted for during the first interview.
In Upsilon's case, there may be an extra interview round too. Since we offer IT staff augmentation services to clients, at times, they wish to hold an additional technical interview with the suitable candidate directly. In this scenario, Upsilon's representatives don't always participate. It depends on the project, but this step is often skipped.
7. Candidate Rejection or Giving an Offer
All interviews are followed up by a call or message to notify the candidate about the decision on the company's side. As a result of the interview, the candidate either receives an offer or gets notified about rejection.
It is crucial to give a comprehensive response to the interviewee in either case, falling back on the positive sides and possible shortcomings. For example, Upsilon's tech specialists who hold interviews have a detailed procedure for providing feedback.
Giving substantial feedback is among the internal hiring process best practices. So even if the person wasn't a good fit for the role and Upsilon decided not to give an offer, the candidate is provided with a detailed explanation of why they didn't make the cut. This way, the person will take the rejection well and won't be left with a feeling that he wasted his time, knowing which points need improvement and making conclusions that'll help in the future.
Why do we think this matters? Well, going through the job application and interview process is an opinion-forming experience for both parties. So, if the company doesn't give adequate feedback (be it in the case of interview success or failure), it can ruin the impression of the brand, the company, and its internal processes. Therefore, this factor influences an employer's reputation and the ability to attract talent in the future.
8. Trial Period Start
If a candidate accepts the offer, the recruiters agree on a start date, and the trial period begins on a set date. The recruiters welcome the newly hired employee and may chaperone him during onboarding.
This personal touch is very important during the software engineer recruiting process, and it works the same with other roles too. Having one-on-one "check-up" calls can be a great way to ensure the new employee feels welcome and there aren't any problems. After all, some people may be shy, and having someone from the company to turn to is a necessity.
Moreover, keep in mind that the trial period usually works both ways. That is, both the employee and the employer have this time to decide whether the collaboration is worthwhile. And it would be a shame to lose a candidate you've worked so hard to employ because of understatements or issues no one talked about, right?
What Is the Tech Interview Process Like?
Now let's dive a little deeper into the details of the tech interview process. Undoubtedly, this is among the most important software developer recruitment process steps.
Of course, such interviews differ in every company. But we'll provide you with insights into how Upsilon organizes tech interviews. We'll explain how our multi-faceted approach to recruitment allows us to employ top developers and tech specialists to provide MVP development services for early-stage startups and others. Perhaps, this method will work in your case too.
As we've mentioned a bit earlier, usually, there are no multi-stage interviews when we hire software developers, so everything's taken care of in one go. The tech interview at Upsilon consists of two parts: the questions and live coding. Nikita Gusarov, Upsilon's Lead Frontend Developer, shares the nuts and bolts of the process.
The Question-Answer Interview Part
To have a logical sequence, the tech interview questions are split into several categories, each clarifying if the candidate is:
- a team player;
- familiar with the modern tech culture;
- has an in-depth understanding of the used technologies.
Of course, all questions have to be tailored to the candidate's prior experience. As Nikita Gusarov points out:
“For example, we don't ask Junior developers about architecture and autotests. It's pointless because, in the best case, you'll only hear some excerpt from a book learned by heart. Whereas Senior developers might be asked about anything.”
1. Team Player Questions
What kind of developers does Upsilon seek? Our "ideal candidate" should be proactive, not afraid to communicate, and tend to solve conflicts instead of creating such situations.
To figure out whether the candidate is a team player or not, we may ask questions like:
- Tell us about a case when you had an argument with a client and how you handled it?
- Have you ever missed the deadline? Did you do anything to prevent it?
- What do you do if you see that a task is too vague or lacks details?
2. Motivation-Related Questions
Ideally, our candidates should also be self-motivated and try to improve their tech skills independently (without a push from the boss). Upsilon's entire business is highly dependent on the agility of developers. As Nikita Gusarov says:
“We should be able to get any project done, even if we're using cutting-edge technologies. And no one likes to work with a non-motivated colleague. We believe such people might even ‘poison’ the rest of the team.”
To find out about a candidate's motivation, we can ask the following questions:
- What do you like/hate most about your job?
- What do you do to grow as a specialist?
- What is the most recent thing in programming that you found interesting?
3. Tech Culture Questions
Tech culture is another vital point. Each company has its own tech culture. For instance, some use statically-typed languages (such as TypeScript), while others prefer dynamically typed ones. The same applies to the company's attitude towards running tests.
Therefore, before hiring web developers, we check whether they match our existing tech culture by asking such questions as:
- Could you please describe your experience with TypeScript? Have you used strict mode? Are any's allowed? Are there projects that don't need TypeScript?
- What did you use for styling (CSS preprocessor, CSS-in-JS framework)? Which do you prefer and why?
- Have you created autotests? What problems did you face? Are tests always required for a project, in your opinion?
- Does it always make sense to split code into smaller functions? Can you provide examples of when you shouldn't do this?
- Did you use strict or lax linting on your last project? Did you use formatters like Prettier?
4. Tech Knowledge Questions
The last question section is dedicated to in-depth tech knowledge. It includes questions from random fields that'll help clarify whether the candidate spent enough time mastering the tools they use. Here are some possible questions in this category:
- When might you need server-side rendering (SSR)?
- Compare REST versus GraphQL: what are the pros and cons?
- Have you ever chosen a tech stack for a project? How did you decide what to use?
- Could you name some common web application vulnerabilities? How should you fix them?
- What are the drawbacks of using React?
The Live Coding Part of the Interview
Then we move on to live coding. At this stage, we check the candidate's hard skills and how the person handles code.
What kind of live coding tasks does Upsilon offer? For instance, we might ask candidates to:
- review a fragment of code;
- write a function given some specified behavior using test cases (this is also done to check if the person is familiar with test frameworks).
Once again, the live coding task set and task complexity are determined by the candidate's prior experience and the expected level for the position. Giving an example, Juniors generally cannot provide worthwhile feedback, so we don't ask them to review code fragments and give them other tasks instead.
What happens next? When the tech interview is over, we form a sketch portrait of the candidate. At this point, we have a better understanding of whether the person is a team player, if they're interested in programming, know the tools they use, and, of course, if they can write code or not.
The portrait is then transformed into a review with detailed feedback, which we use to make a final hiring decision.
Major Takeaways on Hiring Web Developers
The process of software engineer recruiting is never easy. The competition is tough, and employment requires a lot of effort and time. Therefore, if you wish to omit the hassle of finding talent on your own, you're free to turn to a product studio like Upsilon that's already successfully gone through all the stages of hiring software engineers and may find a perfect match for your specific case.
Upsilon's staff is continuously expanding, and we're delighted to have a team that's impressive not only in size but, most importantly, in expertise too. As an employer, we value the candidates' time. As a service provider, we understand the importance of making the right hiring decisions and obtaining the top talent.
We've done our best to share the things we've learned over the years of hiring amazing talent. And, actually, our agile recruitment strategy has proven itself to be efficient. The thorough employment process we've established keeps helping us form and enforce Upsilon's strong team of professionals. We know how to hire software developers most effectively and use modern tools to automate repetitive processes and make the most of everyone's effort.
Hopefully, the tips covered in this article will help you too! And if you're seeking assistance, don't hesitate to contact us!