As a company grows and expands, one of the prevailing struggles that businesses face is the challenge of bringing on new employees to meet heightened demand. While hiring the right staff can be arduous for any company, tech start-ups, and even seasoned technology giants can be particularly susceptible to this obstacle. Getting a hire wrong can be so costly that there is often minimal opportunity to experiment or take risks on the wrong person. Of course, for many growing tech companies, there are usually not the means or time to have a full-time Human Resources professional on staff either.
As an owner or senior-level manager, it can sometimes be challenging to know what questions to ask of a potential tech candidate, especially if you are hiring someone for a discipline other than your own. With that in mind, we’ve pulled together 50 tech interview questions. We focused-in specifically on interviewing Data Analysts, System Administrators, Software Developers, Software Engineers, IT Project Managers, Quality Assurance Analysts, and what you could ask each of them. For each question, we’ve also included a bit of context to help orient the interviewer.
General Industry Questions
When getting to know a candidate, first spend a bit of time sorting out if they will be a good fit for your company. However, an essential caution when making this determination is to remember that you are not trying to hire yourself. We’ve seen many managers get themselves into trouble because they hired the person most like them without determining if they are best suited for the position they have to fill. Give your applicant space to establish who they are, and allow yourself the opportunity to see how each candidate might help to round out the team you already have.
This first group of introductory questions are designed to give you a quick view of a candidate and their thinking about the industry in general.
1. What inspired you to get into this industry?
2. What industry advancements are you most excited about right now?
3. What technology publications (blogs, subreddits, discord servers) do you follow?
4. Who is your go-to tech authority?
5. What’s your favourite prediction for the future of the tech industry?
After they answer these questions, you should feel you have some knowledge of how they view the tech industry as a whole. You will also have a sense of their personality and the way they think about the future of technology more generally.
Company Specific Questions
The next area to cover is regarding your company. You want to see that they’ve given your organization some sincere consideration and aren’t just looking for any old place to take up space until something better comes along. Admittedly, this can be a challenge in an industry that routinely sees staff changing positions every two years. Even if you can’t improve on overall retention, you can try to sort out who will best advance the company mandate while they are with you.
6. What about this company’s values most appeals to you?
7. (If they are between jobs) Why did you leave your last position?
8. (If they are still employed) Why are you considering making a change?
9. Can you tell us about your most recent team and how you worked together?
10. How do you deal with project setbacks?
11. Can you tell me about a professional failure and what you learned from it?
12. What would you describe as your most significant professional success?
Each of these questions should help you imagine the candidate and their potential contributions within your company. When they speak about their past team experiences, pay close attention to how they describe the team dynamics. Do they give you the impression that they helped to pull the team together around a problem or does it seem like they are more interested in saving face? Understanding how a person responds to failure and whether they can use it towards future success should help you sort out if they are a good team player.
Specific Tech Roles
Within the Tech industry, there is a wide variety of positions, and each one of them has individual requirements and expertise needed to be successful. These next questions will focus on some issues related to specific technology positions. Each of them should assist you as the hiring manager to understand if a particular candidate has what the job requires.
Understanding your data has enormous implications for the company. Having the right person who can sort through and recognize critical insights and trends can mean the difference between prosperity and ending up as a great tech idea that never entirely made it.
13. What Statistical methods do you employ when analyzing data?
While there are several right answers to this question, the candidate should very quickly be able to talk you through the simplex algorithm, Markov process, or bayesian method and how they arrived at their preferred approach.
14. Can you explain to me the Standard Data Analysis Process?
Prospects should be able to quickly take you through data exploration, data preparation, data modelling, validation, and implementation of the model and tracking.
15. How does Data Analysis differ from Data Mining?
A data analyst has to create equations based on sound reasoning to understand what the data is saying. Data mining relies on computer algorithms to craft the equations.
16. Can you talk to me about the Interquartile Range and describe for me how outliers affect the sample?
A qualified candidate should understand how the lower and upper quartile relates to each other and that the outlier (either multivariate or univariate), is a value that diverges from a sample’s pattern.
17. What is the two-step data validation process, and how are they performed?
The quick answer is data validation and data verification, but the more important piece is that they can promptly explain how each step is accomplished.
As your company grows, the role of System Administrator becomes ever more critical. Having a sysadmin who truly understands the needs of your organization and how to keep your team working seamlessly on development is vital.
18. You’re trying to resolve a password issue for a group of users, but your employed strategy is not working. What do you do?
System Admins are used to working on problems and dealing with frustration. This team member is going to be continually troubleshooting technical problems. In an interview, they should be able to walk you through their logic for diagnosing a problem systematically. While they should have several go-to options, it shouldn’t feel haphazard or random.
19. Why shouldn’t you restore your DC from an eight-month-old back-up?
With this question, you are looking for jargon that demonstrates that the candidate has a solid grasp of the technology. They should recognize DC as a domain controller and reference the 180 day standard for DC back-ups. Anything older is likely to encounter lingering objects that can lead to inconsistent data.
20. What makes you a great System Administrator?
This question allows you to go beyond tech-speak. A good sysadmin has to be able to function in heaps of technical jargon and yet translate that information into understandable communication for end-users. A great answer to this should focus on technical expertise and simplified explanations.
In a SaaS heavy tech environment, like Ottawa, the role of Software Developer is going to be continually in demand. The trouble with this position can often be keeping bright, ambitious developers from jumping to new exciting opportunities locally, or even heading to Toronto, or Silicon Valley. When interviewing developers, you want to understand more than just their technical expertise, but their commitment to completing projects.
21. Can you walk me through the six stages of Software Development and talk to me about where you most shine?
Sometimes called the Software Development Lifecycle, this is the closest thing to a Coders Bible. And, while they will usually be a part of the entire cycle, knowing where they excel will help you determine how they fit with your existing team. The sequence is as follows: Planning, analysis, design, development & implementation, testing, and maintenance.
22. Can you talk to me about your favourite programming languages?
23. What side projects are you working on right now?
The thing about Software Developers is that it tends to be something they live and breathe. Many of them got into coding because they were fascinated by the finer points, and it’s unusual to find a Developer who doesn’t have their hands in a few side hustles or passion projects. The great thing about this is that it provides a great way to see what they are capable of and what sort of development work excites them.
24. How do you test the quality of your code?
It’s not just about getting a product finished. Any useful software product needs to be completed with good, high-quality lines of code. Have your prospective Developer talk you through their coding standard, use of Static analyzers, or any other preferred method of ensuring quality.
25. Will you take a coding test?
While a Developer may work with a variety of programmers to complete a project, it’s essential that you feel comfortable with their level of coding acumen. Software Developers are quite used to putting their basics to the test, and you, as a hiring manager, should feel comfortable asking them to rise to a challenge.
One of the best ways to understand the difference between a Software Developer and a Software Engineer is the kitchen analogy. A Software Developer like a great chef can oversee a kitchen, plan the menu, respond to a customer’s needs, and keep it all running smoothly. A Software Engineer is like a chef that oversees an industrial kitchen that is sending meals out to five different dining rooms and needs to balance individual requests with their ability to throw the entire kitchen output into disarray.
Of course, this means when recruiting a Software Engineer, you employ many of the same questions for a Developer. However, it’s also important to drill further into their overall systems approach and understand how they address a problem with many variant potential repercussions. We would suggest using some of the following questions with Developers as well, although they may not be quite as comfortable in their answers as a seasoned Software Engineer.
26. Can you explain to me the importance of Agile Development principles?
Since the 90s, the Agile Method has been reliably producing well designed, customer-focused software products. Any prospective employee looking for an Engineering title should be able to elaborate on how the 12 Principles help a team to execute well on complex projects.
27. How familiar are you with Multi-Threading?
Multi-Threading runs snippets of code from several processors. It keeps the code from hanging and improves the overall performance of an application. A talented Software Engineer should be able to walk through this concept with ease.
28. How comfortable are you with OOP analysis and design?
Object-oriented programming (OOP) is the essence of significant programming languages VB, Java, C++, and C#. A good Developer, and especially a reliable SE, should have a firm grasp of this and be able to simplify the concept in an interview.
29. Can you talk to me about the advantages of unit testing?
Generally part of any Software Engineers best practices, Unit Testing is an extra bit of code that tests for logic errors, coding mistakes, and generally helps reduce bugs. What’s essential for you as the hiring manager is to determine how much emphasis the applicant places on Unit Testing during their planning. Reliable tech products depend on well-planned unit testing.
Once you’ve gone through the fundamental technical questions with either a candidate for Software Developer or Software Engineer position, it’s crucial that the inquiries then get much more specific about your company projects. If your particular product is built using Ruby or Haskell, you need to ensure that the person you hire has the appropriate level of skill in that language. If you are not the technical lead, make sure you have that person available for this portion of the interview. Using an online proficiency test is also very useful in this regard.
IT PROJECT MANAGER
In the technology space, your project manager is going to be vital to ensuring the various team members know where to focus their energies, understand how to work together, and get the product in on time and budget. As your company grows and the scale of the projects increases in complexity, an IT Project Manager is going to be an essential part of your team.
30. Can you tell me about your experience in the Technology Sector?
A good PM can usually move between sectors and quickly understand how to pull all the pieces together. However, if they already know the ins and outs of your industry, the learning curve is much shorter. That said, if they don’t have direct sector experience, this question allows them to demonstrate how confident they are to making the shift. Don’t rule out a competent PM that may not have worked on exactly your sort of product.
31. How would you describe your leadership style?
The PM is your point person for everyone on the team. You should feel comfortable with their means of pulling the team together.
32. What is your communication style?
Similar to the leadership question, the communication style inquiry should delve deeper into exactly how this candidate works to keep all the players in the loop.
33. What tools do you like to use for tracking the project and team progress?
Old school PM’s sometimes still like using a spreadsheet, updated and emailed before the weekly status meeting, although those are becoming much rarer. Today there is a wide range of options for keeping track of projects and people in real-time. A good PM will be able to jump on to whatever system you have in place. However, having them talk you through the tools they are most comfortable with will provide you insights into how they like to work.
34. If a project gets off-track, how do you get things back on schedule?
Every project has unexpected things pop-up along the way. No PM can account for absolutely every contingency. However, a capable Project Manager will have ready strategies for breaking down a problem and diagnosing a solution.
35. Have you managed remote teams and global resources before?
Today, and especially in the tech sector, organizations are often spread throughout the world. Even a small start-up with one office in Ottawa is likely to hire developers out of Kyiv or engage coders from Mumbai to help get a project completed on time. More critical than direct industry experience, being able to manage teams that will never meet face-to-face is a deciding skill for a Project Manager.
QUALITY ASSURANCE ANALYST
After all the hard work put into developing a product, your Quality Assurance Analyst is going to make sure you are not issuing all your profits back in refunds or discounts. This code tester, bug reporter, and documentation creator is a vital part of making sure you arrive at market on time and budget. You want to ensure this position is well staffed.
36. Can you describe for me how you create a test plan?
This is the documentation of the scope, approach, and schedule of the software testing that, after development, will be completed. An experienced QA will be able to outline how they like to build this plan.
37. What are the different types of Software Testing?
This list can be exhaustive, but a Quality Assurance Analyst should be able to rhyme these off and provide details around each and its importance.
- Unit testing
- Alpha testing
- Beta testing
- Shakeout testing
- Smoke testing
- White and Black Box testing
- Integration testing
- Regression testing
- Load testing
- Stress testing
- User acceptance testing.
38. Can you walk me through SQL, what it means, and how you use it?
Structured Query Language is an American National Standards Institute computer language used for analyzing and evaluating database systems. Used by Developers and QAs throughout the process, it separates analysis from data for a more straightforward review.
39. How does Change Control help a project?
*It is a systematic approach to managing all changes made to a product or system. The objective is to guarantee that no unnecessary changes happen, that all modifications get documented, that no services are needlessly disrupted, and that resources are utilized efficiently.
40. Can you describe the Bug Life Cycle?
A skilled QA needs to follow the Bug Life Cycle for every instance of a defect discovered in their testing. This way, all cases are tagged, assigned, fixed and retested to confirm quality.
41. What’s the most significant bug you’ve ever encountered and how did you deal with it?
Quality Assurance Analysts spend their careers trying to find problems with software products. Every QA with experience has a story about the time they found something that almost destroyed the entire project. How they dealt with it in saving the product is always a source of pride, and it will give you enormous insight into how they operate.
42. What automation tools have you used before?
Bug tracking tools such as TestDirector and ClearQuest have become pretty commonplace. Of course, companies will only use one program, but having an understanding of any such tracking system means they will likely adapt quickly to whichever software you have running.
FINISHING THE QUESTIONS
An interview is an excellent opportunity to get a feel for a candidate. You can ask questions that test their knowledge, expand on what their resume says, and generally get to know better if they will be a fit with your firm. While the technical questions are fundamental, don’t let a candidate leave without asking some softer questions and allowing the candidate to match their experience to the position for which they’ve applied.
43. From the job posting, what do you think you’ll be doing daily?
44. What challenges do you imagine you might encounter if hired for this job?
45. What project that you were apart of are you most proud of, and what was your contribution?
46. Are you comfortable managing people?
47. What is the largest team you’ve been a part of?
48. Can you tell me about how you would like your career to develop?
49. How soon are you available to get started?
50. Is there anything else you would like to know before we conclude?