Building a healthy tech team
Mews has grown tremendously over the last couple of months. This time last year the team consisted of 80 people while today we are at 230 (40 are in the tech team, 20 of those hired since January). Of course, we’re not the first nor last company to experience this growth but it’s still pretty impressive and deserves attention.
While we are pretty well known in the PMS and hospitality business with a reputation for bringing hoteliers into 21st century, making it easier to attract like-minded people and talent, it’s not so easy to build the development team at a similar pace while assuring that we bring in quality.
There are several reasons for that:
- We compete with all the other companies in the world of software.
- We’re from Czech Republic, not Silicon Valley.
- We haven’t been too active in getting our name out there at conferences, meetups and in the community.
We can’t change the first two points, but we are working on the third one and hopefully you’ll hear more about us soon.
So, how do we build a team of skilled, passionate developers while maintaining our unique culture and shared love of Mews?
When I joined Mews as the first full time support person in August 2015, there were 8 people in the office (2 room apartment under the roof which made the summer even hotter than usual). It consisted of 4 developers (current CTO, Head of Frontend, Head of Backend and Head of Product), our founder, CEO and two guys doing everything from support to sales. At this time you didn’t really have to think whether these guys fit the company or not. These guys were and are Mews. They went through the trials and tribulations of the development of a startup.
The next couple of months and years we always hired either friends or somehow randomly found developers, where we were not always able to determine that they would fit into the team. We had to bring structure and bit of professionalism into the hiring process.
As the company grew bigger we had to bring in external recruiters whose biggest advantage is their knowledge of the communities and their network. However, we choose very carefully who we work with and we make sure that they know us almost as if they were our colleagues by inviting them to attend interviews, sit with us in the office or inviting them to our outing. They need to really understand what kind of people we look for, so as not to waste anyone’s time and resources.
Of course, using only recruiters would be very expensive and inefficient (as we need to scale the team quickly). Therefore we identified a couple more channels to find quality colleagues:
As mentioned earlier, we are boosting our presence at conferences, meetups and jobs fairs. Without visibility, people will never know about you (especially when you develop a product that is largely B2B). Also, just recently we hired an internal recruiter for technical positions whose main responsibility is to look for talent and bring them in for interviews.
No, we don’t look for tech talent on the streets, but this is Mews lingo for when someone finds us without us reaching out. This type we really cherish because it means that people actually know about us and want to work with us without being contacted.
To be honest we haven’t had a lot of referred developers so far (in comparison with 30% on the company level). Hopefully that will change in the future because you want to work with people you know and are familiar with and at the same time you won’t refer someone who doesn’t fit or isn’t skilled enough.
Having the contacts or bringing people in for interviews is just the first step. There are tons of developers who don’t meet our standards or who don’t fit our culture and work ethic. Those need to be filtered out before they cause more harm than good if hired.
We introduced a pretty well structured interview process for the tech team to make sure that as many people as possible see the candidate and that both personality and skill is assessed.
When someone spontaneously applies (or is internally headhunted) we first ask the tech recruiter or someone else from the People team to meet the candidate. This phase is really just to understand the personality, expectations and get a general impression of the applicant. No technical topics are discussed at this point. The ratio of who speaks in this stage should be about 80% candidate, 20% interviewer.
This is when candidate sees me (Mews veteran) and where we continue with an informal chat, where I present the product, tech team and company in more depth. As mentioned before, we understand that Mews isn’t as well known as other software companies, and we need to make sure that the candidate is excited about us. This stage consists of people who we liked from the 1st stage as well as people from our trusted recruiters, who know us and our needs very well. The "speaking" ratio here is about 20% candidate and 80% interviewer.
That’s where the developers come to talk to the candidate (usually this will be the head of division along with one more member of the team). Based on the first two stages and provided materials (CV and often Github) we already have an idea whether we are speaking to a junior, mid or senior developer and we can modify the discussion topics accordingly. While it’s very important to understand the skill set of the candidate, it’s arguably even more crucial that the developers assess the personality of the person. You can always teach someone how to code or to develop a talent but it’s very difficult to change a bad personality.
Sometimes we even have a fourth stage, where we take the candidate out from our office for a lunch or coffee to have even more informal discussion with more people involved. After all, should the person join us we’d spend much more time together. Lunches included.
One very important step is the collective check of a candidate’s sample of code or solution to our task. Each member of a team has the opportunity to comment and to assess the quality and code style. Code review is an essential and respected part of our development process, as we see it as an invaluable part of learning for both the reviewer and reviewee. We then discuss the code with the candidate.
Our Github serves not only as a repository for submitting pull requests for the tasks mentioned earlier. It's also a full description of the open positions, company and even things like average prices in Czech Republic, as we know that many people applying are from abroad.
Orange and red flags
There is nothing worse than hiring someone who will become a burden to the team and whose personality and skill would be contradictory to what we have and what we want to have. The reason at least four people see a candidate is simple - to gather as much feedback as possible. Spending one or two more hours with the candidate is worth much more than hiring the wrong person which, of course, has happened in the past but we try to eliminate this with the three stages of interview. That’s why it’s important for everyone involved in the interview to check for not only the positive points but also to raise orange and red flags if there are any.
Types of people
Our team is really diverse and not only in terms of nationalities and gender. The tech team was built around classmates from Charles University’s Faculty of Mathematics and Physics and we still like to bring people in from this school (both current students and alumni). However, we’re not (and cannot be) exclusive to just one tech schools in Prague. We were able to find people both from other schools as well as people without formal tech education with ever greater passion for technology and computer science.
We’re also trying to break the cliche of developers being the strange breed that doesn’t like anyone and anything. When we mentioned unique culture it’s really something very hard to understand and explain. Mainly when you look at the people we have. There are "classic" tech introverts whose focus really is mainly their computer and code but at the same time we have developers who will always attend company wide activities and would drive the passion and sense of comradeship within the company.
Exciting times to come
We’ve seen unprecedented growth of the tech team (including Backend, Frontend, Data, Mobile and QA) in the past 4 months growing from 20 to 40 team members but we know that in order to remain on track to become the preferred choice for any space provider worldwide, driving great customer experiences and at the same time keep up with the latest trends in technology and development we will be growing the team in the upcoming months and years in similar if not faster pace. We believe that we have healthy and solid base and processes set and we’re ready for the exciting future of Mews.