Since this blog post was written three years ago, our approach to quality hasn’t changed (we still treat it as the highest priority). But we gained some additional experience regarding recruitment - feedback from candidates suggested that our previous process was a little too long and complicated. Of course, we also accommodated pandemics and allowed remote recruitment meetings. As a result, we have a more flexible, shorter, and consistent recruitment process. Let me describe it.
Research, research, and research. This element hasn’t changed (and probably won’t in near future), because nowadays a lot of information can be obtained before even meeting a person in real life. So we check LinkedIn, Github profile, and candidate’s portfolio (if available) to assess the likelihood that this is the developer we are looking for. Our CTO, Mariusz, invites all potential candidates. He knows exactly what kind of projects we prefer/we used to work in our company and can precisely answer all questions about the technology we use. On the other hand, the whole process is coordinated by Alicja, our HR specialist. She sets up meetings and remembers all people, who said they would like to contact us in the future. Also, we are very flexible, so if someone doesn’t want to take part in official recruitment, maybe he/she wants to attend our party? Barbeque in our garden is a good chance to show our company culture and can start the relationship.
Recruitment meeting #1.
The first formal recruitment meeting is a chance to check if the candidate shares the same values and expectations for the workplace as we do. It’s led by Mariusz (CTO) or Michał (COO) and the vast part of it is in English. We ask about some general work experience, expectations, and plans for the future to see if Visuality would be the right place. Therefore, we present more details about the work we do - profile of our clients, projects, standards we follow, and parties we make:) Usually, the meeting ends in both-sided excitement and an appointment for the next meeting.
Recruitment meeting #2
The technical part of recruitment is led by two Visuality engineers and usually takes up to 3 hours. This meeting can be done remotely or in the office in Warsaw and its main goal is to get to know the candidate as an engineer.
The agenda consists of 4 parts:
First, we want to know more about the candidate — why he/she wants to join our company, what are his/her interests, pet projects, and strong sides. This part is guided in English to see if the candidate can communicate fluently with the team. Partially we talk about the same things as in the first recruitment meeting, so our developers have a chance to get to know candidates better (eventually they might end up working together). Also, it’s a good introduction and ice-breaker before more demanding technical parts.
Background and experience.
Usually, we ask candidates to describe previous experiences starting from school/university and ending with former employees. We are interested in knowing what kind of programming languages he/she knows and how experienced he/she is in commerce projects.
Depending on the position a candidate applies to, we are going to ask many questions about according technology. We always check proficiency in a programming language, understanding of the main components of the framework, and also some general programming principles (eg. Object-Oriented Programming). Probably nothing extraordinary here, because we ask about the knowledge every software engineer should have.
The funniest part, in which we are going to ask the candidate to write some simple algorithm or/and to apply a small change in an existing Ruby on Rails application. We don’t do anything fancy here — we are not expecting to find a new efficient search algorithm; what we want to see is how the candidate approaches the given problem, if can ask the right questions, and what is his/her way of thinking when finding a solution. At the end of the meeting, we throw off the hat of recruiters and answer all questions about working at Visuality from a developer's perspective. Candidates often share their feelings about recruitment at this moment.
Regardless of the recruitment result, we are going to provide insights after all meetings — what was correct and helpful from our perspective and what could be better. We believe that recruitment is a two-sided process: not only company seeks perfect employees, but - most importantly - engineers look for a great place to work and grow. Therefore, our recruitment process still evolves and oftentimes is customised to fit the needs of specific candidates or positions.
To sum up, the whole recruitment process takes about 3-4 hours (divided into two meetings) and engages people from HR, management, and software development. We are aware that truly knowing a person (or just his/her developer’s side) is not possible in such a small chunk of time, but we are doing everything to increase the chance that our assessment is close to the truth.
Eager to work with us?
We are actively looking for backend and frontend developers at all experience levels, please check open positions here.
Or, if you just have more questions or want to attend our barbeque party - contact us!