Hiring Software Engineers: A Comprehensive Guide for Startups
Software engineers are in high demand right now - if you take a look at job boards, the shortage in Singapore is crazy. Over half of the recruitment activity comes from recruiting firms - this shows you how desperate every company is to get qualified engineers in.
With such a competitive market to hire the best (or even decent) engineer, how do you attract engineers to join your startup that is only starting to grow? This is an exhaustive guide on how to hire software engineers for your startup.
This article will be divided into 2 sections: Attracting Engineers, Designing the Hiring Process for Software Engineers.
Attracting Software Engineers
With the incessant number of recruiters reaching software engineers, how do we cut through the noise? Here are some things that should show through in your pitch to prospective talents:
#1 Show that there's a product-market fit
Be clear on what problem you are trying to solve. What does your MVP look like? How do we get our first set of users for this product? Who is using it now and why did they choose us over someone else?
Exceptional engineers who take ownership on their work will want to know the answers to these questions. The last thing any engineer wants is to build the product, but have no one use it.
If you want to attract them with your job description, show how excited you truly are about solving problems in an innovative fashion by giving examples from your existing product/competition/research on the problem space.
#2 Hire Remote
Have budget constraints? If you can't compete in salary terms, you can compete in terms of benefits. Nowadays, software engineers do like the flexibility to work from the beaches in Bali, or the comforts of their home. They also save time and money from travelling.
There are many successful companies that have hired remote for their engineering teams. Gitlab, a fully remote company, has recently been valued at 15 Billion.
Another plus side of hiring remote? You get to access the best talents around the world, not just in your local market (like Singapore). And you get to save on office rental.
#3 Highlight Mentorship and Learning Benefits (For Junior Engineers)
Salary is not the one and everything - many talents have mentioned mentorship as a major factor as to why they choose one company over the other. Will their learning be supported?
#4 Show the Clear Product Roadmap and Strategy
The one thing every software engineers hate - unclear instructions, and flip-flop directions. It is not easy to build something and constantly scrap it if the product and direction keeps changing (hence, #1 on showing the product market fit).
#5 Use Recruiters to Help in Reaching Out
Reaching out to engineers may be dampening to your spirits, if you are not prepared for rejections. With recruiters (like hubbedin) and their network on the ground, you have access to the best talents, together with stringent recruitment processes of screening a person's experience, background, and communication skills.
Now that we have covered a comprehensive list on attracting talents, let's get on with the most important part - designing the screening process, to ensure hiring the right talent.
Designing the Hiring Process
#1 Test for technical ability
While a coding exercise can be really helpful, it only shows thinking and logic process, but may not show their proficiency with writing scalable code (that often comes with experience).
We would suggest that you focus on testing for algorithmic thinking, problem solving capabilities and critical analysis skills - some of the essential traits in being a good software engineer.
You can begin with simple questions like "write an algorithm for X" or more complex ones such as: designing system architecture, data structures, APIs etc which require greater thought process and understanding about different approaches towards problem solving .
#2 Check their Portfolio
Hiring a person based on their portfolio of work can be very effective when it comes to designing the hiring process.
You can ask for a list of projects they have worked on in the past, what they built and make an assessment based on their work profile. This should be followed up by other technical questions regarding data structures, algorithms & complexity analysis, system designs along with other software engineering paradigms like OOPS concepts if any related work experience exists in past projects.
#3 Interview Metrics
Have a clear scoring system in place for the interview process. This will help in keeping things objective and scoring consistent across multiple rounds, so that it is fair towards all interviewees.
Some Scoring Metrics to Consider:
Clear communication and ability to explain things
Problem-solving and decision making skills
Team fit: Collaboration and communication. Are they a team player? Do they work well with others?
Attitude, Motivation & Enthusiasm
Hopefully, this guide will help you get started. Hiring Software Engineers is not easy and it takes time, but eventually the investment pays off in dividends!
If you need further help in recruitment or hiring remotely, do feel free to reach out to our team that can assist you in finding the right engineers to build and grow your company at [email protected]