Hiring the First Engineers: What sort of team do you want?
When hiring for a startup, there are certain traits to also consider in addition to skills. Often, when discussing the first engineers to hire for your startup, people will say things like “hire people smarter then you” or “hire rockstars”. This is NOT sufficient criteria for getting your startup team going.
While you generally need to hire individuals who are incredibly savvy and remarkably great at building things, this isn’t sufficient for an early stage startup. For a crude, young company, you likewise need individuals with extra qualities which vary from what is * necessary* for a later stage company.
Major traits startups should find in people when hiring first engineers:
- Do what it takes attitude. Willingness to dive in and fix any problems that come up and to take charge since there will not be anyone else to do so. This includes the willingness to do lots of grunt work – there is no one to delegate to.
- Persistence/tenacity.
- Ability to deal with uncertainty and not freak out. You may end up with multiple pivots depending on company stage. You need people who will stay calm and keep with it.
- Generalist technical knowledge. You will not have a “front end team” an “ops team” a “backend team” and a “database team” etc. You need someone who can optimally work on all parts of the stack.
- Not religious about technology (or other aspects of the company). This is useful at any size company, but at a startup you really don’t want to waste time debating the merits of Python versus Java. You just want to build stuff and get it done. No engineering ego (I find the most confident engineers often don’t need to reinforce their ego – they already know they are very good so dont feel threatened easily) and no drama.
- Get a lot done. You need people who can just crank on product. They need to be able to problem solve independently and go figure stuff out.
- Do “just enough”. Focus on the 80% of stuff that needs to get done, not the 20% edge case which most users won’t care about (i.e. hire people who build things that are very solid, but not “perfect” – this applies to an internet company, not e.g. a later stage hardware co)
- Get along with the team. This does not mean the person is not quirky or lacks personality. It does mean that you will be 5-10 people in a room every day and you need people you and the rest of the team get along with.
- Bonus points: financial stability. This could be a low personal burn rate, or ability to take a low salary either through a past financial success, being straight out of school so living costs low, or other means. This means the person may be more willing to take a low salary in exchange for more equity, which helps the company survive longer on less.
How Do You Ensure People Have These Traits?
- Social test. Take them out for lunch or dinner and see if there is a good culture fit. Can they freely express themselves? Do they have the communication tone you need at this stage?
- Have the candidate come in to work with you for a day. Give them a simple problem that can be coded in 1 – 2 days. See how they solve it. Were they pragmatic? Did they use open source packages or build something from scratch? Can they defend their design? Did they think of the next steps they did not have time to tackle? Did they define the problem properly? How do they react to tough questions? And, importantly, are they serious enough about the opportunity to spend a half or full day working with you guys?
Hiring new talent can be a challenge for all companies. It’s even more difficult to hire talented engineers, who will also mesh well with your company culture. Your first set of quality engineers can be hired on eWorker.