What to ask a developer during an initial interview
Shortlist of probing questions I suggest new founders ask while interviewing their first software engineer or CTO.
Working as a technology advisor for Impact Hub Los Angeles for three years was an enriching, eye-opening experience. Aside from meeting great founders with visionary ideas, I had fun learning about different business problems across various industries. One big takeaway is that software engineering, today, can help every industry create and capture new forms of value. But, depending on the sector, the margins may vary widely. For example, developing and selling a database system for the healthcare industry may result in a more significant ROI than the same product for a grocery chain. Although visible, it is still interesting to see the story unfold from the startup level.
One thing I'd like to share a bit more about is the number one question every new founder would ask. "How do I find a good developer to help me build my app?" It's a simple question that has taken me a few years to grasp fully, but my short response is, "ask the right questions during the interview."
Below is a shortlist of probing questions I often provide new CEO's so that they can know what questions to ask. These questions will not help you understand if the person right for the job. Instead, these questions will first help you collect information about a specific engineer's skill set. Once you know what tools they use to make products, you can then start going deeper.
Questions + Insight
Q: What types of digital products do you make? Websites? Web apps? Mobile apps? Platform services?
Insight: Unless the person you are interviewing owns/belongs to an agency or a studio, no single developer is going to be good at developing any product. For example, the skills required to build an Android app are different than an iOS app. Although most software engineers claim to be language agnostic, that doesn't mean they are instantly productive upon the start of a new project that uses an unfamiliar language or platform. As a founder, the question you need to ask yourself is, "Am I OK with this person learning a new language or framework on my dime or time?"
Insight: A Scala developer is likely to cost 3x more than a NodeJS developer. Do you need Scala? It depends, but the key is to know that the cost to write code varies.
Q: What frameworks do you use to build? Ex: Spring, Ruby on Rails, Django, Zend, Pure MVC, Angular, React, Phoenix
Q: Do you use a specific library for testing the quality of your code? Which one? Ex: Rspec, MiniTest, XTest
Insight: This question helps you identify both a potential red flag and opportunity. From my experience, if someone has a process for double-checking their work, it shows some level of professionalism. Secondly, if you decide to sell your startup, your future buyer will be able to conduct a technical audit. Technical audits ultimately build trust –which can help you sell at a premium.
Q: What tool do you use for bug tracking and project management? Ex: Rally, PivotalTracker, Jira, BugHerd
Insight: Similar to writing code tests, as your team grows, you'll inevitably need a process for itemizing work and identifying bugs; think, managerial accounting. If your interviewee shows a genuine distaste for the software process, then that's an early indicator that they are either junior, have spent too much time working as an independent contributor, or struggle to become a software manager.
Insight: As if there weren't enough technical decisions already, the last thing you must consider is creating an automated process for deploying your project. The value here is that until your infrastructure automated, then some developer in your team knows how to build and launch your app. This scenario can prove problematic if they ever say "yes" to another gig or leave on bad terms.
If you'd like for me to expand upon this some more, please share a comment below.