Hey, community! Recently I've been invited to give a talk at a local conference about the early stages of a startup and I chose to speak about my take on hiring the right people. I thought that it would be beneficial to share my speech with y'all.
It may not be directly development related, but I'm speaking mostly from the perspective of a CTO and long time team lead to a crowd of people interested in starting their own companies.
Please share your thoughts and insights in the comments!
So, you have a killer idea that has been circling around in your head for quite some time? You finally decide to take that leap of faith and start up a company. A startup! Maybe you’ve been working on an idea alone and now you’re looking to expand? The only problem is – what kind of people do you need? Can’t you just get a bunch of programming students to work their magic and then a bunch of marketing students to push your product on the cheap? Well let’s find out, shall we?
Now that sounds a bit egocentric, doesn’t it? Well hear me out on this one. When a company is young, the first people you hire are going to be the most important ones. They will shape the culture and work ethic. And while you’re alone, you are the one shaping those things.
You must also take good hard look at yourself and figure out your strengths, but most importantly your weaknesses, which brings us to the next point.
A great co-founder is a must if you want to keep your sanity. A co-founder should fill in the gaps in the skills that you lack. Maybe you’re a good programmer, but not such a good salesman? Then the co-founder should fill in that gap and be a great salesman. In the ideal world, co-founder skills should hardly overlap yours. It’s a great way to let everyone do what they do best and avoid conflicts when someone has a different approach to the same problem.
At my current company we have a great dynamic, where my colleague knows a lot about the Danish tax system, but nothing about programming, and I am just the opposite – I know programming and system architecture, but nothing about the Danish tax. Working like this, we just need to sync up once a week and continue doing what we do best!
With that said, there will come a time when you need to bring in more talent to the team.
Time and time again, I have seen startups hire a candidate that looked great on paper, but once they joined, they started struggling to fit in. And when people are struggling to fit in, their productivity suffers. They will want to spend less time around other people in the office. They will struggle with communication. They won’t be sincere with their feedback.
A great example is the experience of a company I used to work for. The team dynamic in the company was great! Everyone considered their colleagues a family, organized events together, spent time outside work as friends, and so on. And then we hired a new developer. As his skill set was all right, and he had considerable experience, we didn’t dig much deeper and after a few interviews we invited him to join. After a few weeks, the mismatch was starting to become apparent – he didn’t like any of the same things as anyone else. Although he was extroverted, it didn’t interest him to attend any of the team-building events. And even though everyone in the team was trying hard to find some common ground with the fellow, he just didn’t seem to click. The worst of it all was he was working on a module alone and left immediately after he got offered a bit more money at another company.
The damage was 4 months of above average salary for the developer, plus 3 months to find a new developer, plus rewriting the module he was working on from scratch since it didn’t do anything it was supposed to do. And since the budget runway was 12 months, it was a pretty significant cost for that startup.
Remember, skills can almost always be learned, team fit cannot. So, hire slow, hire carefully. Allow a trial period for potential candidates, take them out for a beer, go to a concert with them. A good colleague is the one you don’t hate seeing outside work! But…
You may think that it’s a good idea, you know your friends, they’re great people. But once you add salary into the mix and change the rules from being their friend to becoming their boss, it tends to get messy. Friends and money don’t mix. They may start slacking off, just because they know you as a friend. Then you might want to push them, but it comes off as harsh and they feel attacked. And in the end, everyone’s mad and you just lost a co-worker AND a friend.
Don’t get me wrong, some people can indeed separate their work life and social life, but it’s best not to take that risk.
I say – let them become your colleagues first, and your friends afterwards. This way you won’t mess up the chain of command.
Now let’s take a step back and discuss your team culture. The first people you hire are the most important ones. As I’ve mentioned at the beginning – they will shape the work ethic, the way people interact, the way they communicate. It is highly unlikely that you will be hiring a lot of new people at the same time, so the new people are going to be a minority. They will have to adapt to the existing culture and are most likely to start mimicking the way everyone else is behaving. It’s a primal instinct. So once the tone is set, it may be very difficult to change afterwards. And changing it may even result in your key people leaving, because you just changed the way they had been doing things since the beginning.
You have to hire great people if you want to have a great product. But great people don’t come cheap. It may be tempting to bring in a student because, hey, they’re cheap and they still get the job done. But those savings are going to quickly bite you in the butt in the form of a technical debt. The structure may be all messed up and the project will reach an unscalable state where adding a new feature takes so long that it’s best not to start at all. And let me tell you – rewriting the project costs at least 3 times more than you ever anticipated. So, it is best to just get one really smart person for a price of two mediocre ones, everyone will thank you later.
Here’s another example from a company I used work for. The company used to sell a SaaS product and hired only student interns as salespeople. Since most of the students were on Erasmus, they would leave in half a year. This was fine for cold calling when the product was just a single small module. But once it got bigger, it took a lot time to train those students about that product. And by the time they knew everything about the product they were selling; it was time for them to leave. Fortunately, this was noticed by the board and 15 sales interns were replaced by a few skilled full-time salespeople.
When you’re running a startup, money is always very limited. You may not have enough money for the talent that you want. But it doesn’t always have to be about the money. Top-tier people can always get a well-paid position, so money is mostly not a priority for them anymore. They are usually looking for an interesting project with highly motivated people with whom they can collaborate. So, think what your startup can offer your employees beside money. And no, a foosball table is not that thing. In my career as a lead developer I have deduced that freedom is what works. I tend to allow people as much freedom as possible – want to work from home? That’s fine as long as the communication is good, and the job gets done. Don’t feel like working today? Take a day off – it’s much more efficient to rest for a while than to force yourself to squeeze that last drop of energy.
Another thing you can offer, and I know I have mentioned it a lot before, is a great team. I would always choose a great team versus more money in a bad team.
Since money at startups is in short supply, employee turnover can be deadly. An employee leaving does not only mean compensating them for their unused vacation days, paying a recruiter to find a new candidate, and training them. You should also factor in the cost of lost knowhow. Maybe that girl who just left had been working on something alone and now someone else has to dedicate their time to understand her work. Moreover, a leaving team member can cause a domino effect and other members may follow in their footsteps, which I’ve seen time and time again. And if you’re hiring in a market with a very scarce supply of talent, such as programmers, it means there won’t be any freely available employees. Which then, in turn, means that you will have to headhunt people from other companies, which will again hike up your costs.
Therefore, it is much cheaper to retain people that are already working for you. Ask for their honest opinion on the current state of the company monthly. And if they don’t feel like they’re valued enough, it will always be cheaper and more beneficial in the long run to give them a small pay bump rather than going through the leave-recruit-train process over and over again.
It is always the easiest not to hire new people at all. This again boils down to communication and knowing your colleagues very well. Talk with your existing employees about what excites and interests them. You may find that this one extroverted HR rep is actually a pretty good salesman. Or this introverted developer is actually very good with social media. And introducing changes into someone’s day to day work may provide them with that very well needed break from the rut. You may be surprised at what hidden talents you may find.
However, there will come a time when someone you hire will just not work out. It may be that they’re just not bonding with the rest of the team. Or it may be that you find out that their skills are lacking after all. In that case, it is much more beneficial to just let them go. Do it fast, because the longer they spend working on something that will have to be transferred to another employee, the more it will cost YOU.
With all that said, maybe you don’t even need a full-time person to do some of the work. I have found that outsourcing some tedious or one-off jobs may seem to cost more upfront, but it may actually lead to better results if you’re hiring a really professional agency or person. Always try to evaluate whether the task at hand must be handled by you or your team or is it something an outsider could easily do. Outsourcing can alleviate the stress from yourself and your colleagues. Try it, you may not regret it.
Finally, I’d like to give a few important examples on being a bad founder after you’ve already assembled a team. A company that I was advising had a great and motivated team that liked getting things done. They also had a CEO who was so overworked that he was always late for meetings and sometimes even forgot them outright. Over time, I saw that team transform from punctual go getters to just not caring at all. Their argument was: if the CEO doesn’t care much about their time, neither should they care about the company’s time. By the time I stopped advising the company, their meetings got delayed on average by about 30 minutes, just because they were waiting for people who didn’t care to show up.
And same with deadlines. The CEO would promise to deliver the specification on a certain day, and then he would just forget about it, so the team also started skipping deadlines because they saw that it was just not important for the company’s brass.
Talking about that same company. Their CEO used to want to do everything himself – bookkeeping, taxes, sales, product ownership, wireframes, he even suggested how the database should be structured. No wonder he was overworked, late and skipping meetings. Therein lies the problem – don’t try to do everything yourself. When people bring up a problem, redirect them to someone who can handle that problem. Empower people to make their own decisions and hold them accountable for them.
Make yourself available and don’t do the work that someone else can do. For example, you don’t have to do your own taxes – hire a tax advisor once a year or so. Your employees will thank you for having you available when they need your input.
Here I have told you about my take on hiring the right people. Please note that this is tailored for small startup teams and may not work at a larger scale (but you don’t want it to). Always use strategies that fit your current state of the company and never try to apply a 100 people strategy to a 5-person team. Don’t follow everything by the book, chances are your situation is different.
To sum up:
- The most important person in your company is YOU
- Find a co-founder who compliments your own skill set
- Hire for a team fit, not for skills
- Don’t hire your friends
- Early team culture is super important
- Don’t waste time or money on subpar talent
- It doesn’t always have to be about the money
- It’s cheaper to retain your current staff
- The most suitable person may already be in your team
- Fire early, fire fast
- Outsource everything else
- Lead by example
- A good founder is a good router
Thank you for taking your time to read this long text.