Where to work in IT, release 3: Badoo
Previously, services like Badoo were called dating sites. But now this definition somehow does not fit with the image of an advanced IT company with offices in Moscow and London, high salaries and a high-tech stack. Therefore, Badoo prefers neutral-smoothed - “the world's largest social network for meeting new people.”
Judging by the assessment of the employer , which Badoo received on My Circle, the employees rated the social package, the interest of the tasks and the comfort of the working conditions in this company above all.
We tried to find out if there is something special in the development of the dating. Or is it all the same universal agile machine that delivers happiness to the user, whatever the user wants.
Ivan Biryukov, head of mobile development at Badoo, spoke about his work. At the same time, we learned how developers live in London and how technology helps us to meet new people.
Why Badoo Development is in London
- Why did you decide to translate all mobile developers in London?
Mobile development was originally built in London. Here is the company's management, product team, designers - everything, the people who most strongly influence the product.
In order for communication between client and grocery companies to be effective, it needs to be built in one office. We bring here guys from all over the world. We have people from Mexico, New Zealand, India, Spain, most of the countries of the former CIS.
The country is not important - the main thing is that a person knows how to do what is expected of him. It would probably be possible to make an application in Moscow, but building communication in this case is more difficult. And we decided not to.
- This is not the most popular opinion. It’s one thing to keep food teams together, but development is often smashed around the world; smaller cities make it cheaper. Do the pros outweigh the cons?
We started mobile development very early, almost immediately after the iPhone & Android appeared on the market, in Russia we could not find a team of specialists - there were very few of them on the market compared to London. Therefore, we decided to build a team there from scratch. Now it does not make sense to change everything in the bud, because everything is already working well, and it suits us.
- And how is it working in such an international team?
I like it interesting. You communicate with people from all over the world. People of different nationalities, different mentalities, views on life. For me it was just unimaginable. I myself am from a small city, from Saratov. Not living in Moscow, I came to London, and this of course explodes the brain in full.
Sometimes you need to make a discount on the culture with which the carrier you communicate, and select the wording. It happens that in order to understand what a person wants and what he is trying to tell you, you need to know the cultural context.
But when there are too many people from all over the world, and you need to communicate with everyone every day, you unwittingly simplify your language. Everyone understands that if you put in subtexts, no one will understand your words.
Mobile team in the office Badoo
- English by this moment you already knew?
Yes, what I knew was enough to get a visa, but I began to understand the jokes in English three or four months after the move. In fact, you don’t need much for a visa - literally four points in IELTS. A little bit to tell about yourself, read a small text, listen to a fragment of the conversation and answer questions.
In the office we try to speak English. If someone does not understand Russian, Spanish, or even some other language, everyone will switch to English. But there is a sufficiently large number of Russian people, 70 percent. Therefore, if no one is close, then sometimes we turn to Russian.
- The rating industry, the nature of the work, affect the atmosphere within the team?
I know that in our company some of them found a life partner on Badoo. When this happens very close, you better understand how your business affects people, and that's great.
Very often, users send us their stories, tell us how they met at Badoo, how they live together, and how grateful they are for it.
Being a family man, I myself have never treated Badoo as a dating. Badoo is perceived more as a product that is interesting to develop, to solve complex problems. Which is important to you and which you want to do better.
Our process is structured in such a way that, when developing and testing, we work in a sandbox and are isolated from real users in order not to spoil the impression by sending test messages or broken functionality.
- How does the work in this company differ from what you had in Russia?
In Russia, I worked in outsourcing. There all the work on projects: the technical project came, did and forgot. Basically, this is working with people in distant countries with whom you communicate two or three times a week. And everything is going slowly.
And here you come to the office, where there are cool people, active communication, interesting tasks that are solved very quickly. The difference, of course, is huge.
- Do you have remote employees?
Support sits around the world, and basically everyone works from home. This is a lot of people. In the development of remotes there is no - only in offices in London and Moscow. It seems to me that having many offices is simply inconvenient. We are not Microsoft, where ten thousand employees, and all the work is divided into a million small tasks.
In Badoo, we actively communicate, participate in product development, do not hesitate to express our opinion. When a team is divided, you need to argue everything in writing to a large number of people. Someone may not read this, misunderstand, and begin difficulty. And so you can approach any person involved in the project, explain the situation, find out his position and express your thoughts.
- Do you have a big office?
We have three floors in a building in central London, in Soho. This is a socially lively place. Restaurants, cafes, clubs - everything is here. They do not interfere with work. The streets are especially enlivened after 6 pm, but at the same time they are not heard very loudly.
How is the design built
- What are your tasks?
First of all, we work together with the product team on features. Products have a huge list of ideas, and from time to time they bring them to us. Sometimes ideas come ahead of time, when users are not yet ready and will not perceive well - these ideas are postponed until later.
We connect to the process, find out what is required, see what options we have, and what we can offer on our part.
For example, we are always trying for a week or two to make the minimum functionality for a feature that takes, say, half a year. We test the idea in battle and try to understand whether it is worth investing in its development, whether users like it or not.
We have fairly short release cycles - once a week for native Android and iOS applications (twice a day on the backend and the web). If you make a new cool feature, then in a week millions of users will see it.
- Every week release features?
What we have accumulated in a week, we roll out within two to three days, and in a week we start the next release. For a team of, say, ten people, two or three small features, several technical improvements and bug fixes go into release.
- updates do not become empty? Well, you can not every week to release a new cool feature?
You can't roll out a big feature every week. But let's take, for example, video streaming. We worked on it a little more than a month, and the feature left with minimal basic functionality. There you could trim, write a message and nothing more.
We do this in order to get an earlier feedback, see how everything goes from the technical side, whether we can withstand the load. After that we develop the feature. That is, one more video streaming will not work out in a week - we will add something there - autoscrolling of messages, the ability to send gifts, take a picture in a picture so that you can continue to use the phone while watching the stream, and so on.
At the same time work can go on several existing features. For example, somewhere, analysts have found at which step of registration we have many users falling off - we fix it. The idea was born that the chat should work offline - we are starting to work on it. In the video streaming, we noticed that users do not understand how to reach the streamer directly - we make a separate button for this.
- What is mobile development?
Mobile native development today is forty engineers who are divided into five teams.
The two biggest teams develop the Badoo app for iOS and Android.
Core team is engaged in lower-level things, frameworks and tools (networking, analytics, loading and caching images, typical architectural solutions), so that other teams can more easily work on features for users.
The Next-Gene team is working on new applications and various experiments. For example, one of the most successful developments of this team is the dating of Bumble, which is very popular in the US (Only women can be the first to make contact if it is a heterosexual couple).
And finally, the API team defines client-server interaction and documentation for it. Thanks to her, everyone speaks the same language. You can implement the client and server independently of each other and easily find the source of the bug.
- Features like streams, video calls, search for doubles - what teams do it?
Under such big things, we usually assemble a team from all departments. In the video streaming, we, including from Moscow, summoned people to London, gathered everyone here. In fact, in such a big feature, everyone is involved, except, perhaps, the next-gene - simply because this feature was primarily planned for Badoo.
Naturally, products, business analysts, designers are also working on them - all together, fun and friendly.
- And then disperse back and continue to do their work?
Well, yes, in fact, we are collecting a separate team for large projects - this is just more effective. And we do everything together at the same time. Communication in such cases is much more efficient than through jeera, chat and video. Teamwork allows you to create the spirit of a full-fledged startup hackathon. This is what the guys like and the companies like it.
In the future, support and development of such projects usually occurs within the framework of standard processes within teams. You can learn more about this from the report of the head of the server division, Kolya Krapivny.
- You say that you are a very advanced IT company and use modern technologies. Tell me which ones?
It is clear that there are all sorts of mastheads like Kotlin on Android, RxJava. After some time, it will be impossible to find developers who know only Java without Kotlin for Android. Experiments with React Native are taking place on the web - although this is not entirely in mobile development.
We have from significant and advanced things can be called MVI Core. Our guys looked around, looked at MVI, studied other architectural solutions and made their own framework. Let's just say, this is a further development of MVI, which makes it easier to maintain complex features and put them into a more coherent structure. Now other companies are starting to select this framework. I heard that Lyft is going to introduce it.
Recently, the guys introduced a design system that allows you to change the appearance of the application without the participation of designers. Literally in one place, we can repaint the application on all platforms.
We run a little ahead of the engine, we have to invent a lot. When we thought about downloading images in the application, there were no frameworks either from Facebook or from anyone - we had to write our own. Similarly with the search for twins. It is clear that there are services that recognize faces, but sometimes they are more expensive to implement ready ones.
- Have you switched to Kotlin long ago?
A year ago, we started writing tests on it, although there have been proposals for the transition before. And before that, the next-gene team began experimenting with it. For the last new year, we have already made the first feature on Kotlin. He became the general standard for the Android team in early spring. Now all new features are written on it.
The transition was easy enough for the guys. By that time, the language and the tools for it had already settled down, so there were no particular problems .
- And before that, did you encounter arguments about functional programming? Didn't want to switch from Java to Scala?
I know that the guys on the server are experimenting with it. There, in fact, what is there not. But the server is easier to isolate, try and if something is wrong - replace. And on Android, it's harder, all of these new languages require tweaking of the builds, and potentially with any release of Google updates, everything can break.
- What about the iOS team?
There we have Swift, MVVM. We switched a long time ago - more than two years ago. This year, by the spring more than half of the code is already written on it. We have such a principle - if you took something existing in the work, then put it in order. So little by little the whole code goes under the swift. There are only those things that have been working for a long time, and there is no need to change them.
The transition is also calm, everyone likes it. Everyone understands what and why we do. There is no holivar on this topic.
Hiring in badoo
- How and what people are you typing?
First of all, these are people who care, who are interested in the results of their work. Understandably, a person should be able to write code and know his platform well enough.
During the interview we have a small test - there are several theoretical questions and several problems of average complexity. We usually schedule a skype interview after the test. Usually candidates from all over the world: of course, you can come immediately, but it’s difficult - you have to carry a lot of people. Therefore, we have one or two Skype interviews, where the guys test coding and knowledge of the main platform. If everything is good then we help the person to come to the office, get to know each other better, communicate with the guys and leaders, and conduct a more in-depth interview on the knowledge of the platform.
- It happens that people come to the office and do not pass the interview?
It happens, of course. It is clear that this is a shame, but on the other hand, you went to London, looked around, talked to the team, learned a lot about the company, plus something else about the gaps in your knowledge. We are very happy if people then pull up knowledge, come again and already pass.
- Does the developer need to know the theory with which he will face at the interview - but not the fact that they will face at work?
Periodically, we have debates on this topic, but we often encounter such a theory in our work. We have a lot of users, and if we suddenly start using the platform inefficiently, once again alokeitit memory, misuse data structures, or send too many requests to the server — and there is a lot of functionality in the application — it can significantly reduce the application speed and increase consumption. batteries.
Therefore, a good level of understanding of what you are doing and how everything works under the hood is important for us.
- Do you recruit junas?
We recruit, though by our standards, June is probably the generally accepted middle. That is, a person has some experience, a good understanding of the platform and can independently solve a problem of medium or small size.
- If a person passed the interview in the office, does he stay or is he still returning home?
First, the person leaves home and gets an offer electronically. It is necessary to reissue a visa to work.
But this is not the only option. For example, last year we did two highing events, where we had all the interviews for the day and did an offer right on the spot. By the way, on November 24-25 this year we are holding another such event !
We assumed that some people do not want to go to interviews, because it takes a lot of time, you need to take time off from work, write off and call off several times, so we decided to try this format. We say - guys come to us, take a small test, spend the day in the office, we will communicate and if we approach each other, we will make an offer right this very day. We ourselves buy or reimburse the money for tickets to Moscow, agree on a time.
In this format, the interview consists of three stages (half an hour, an hour and another hour, respectively). While waiting for the next stage at dinner, candidates communicate with the team, ask questions about life in London, learn our culture, processes, people better. Last year it went very well. We got six people at once.
- How do you help with the move after the offer?
If a person is from Russia, we offer him to work in the Moscow office as soon as all the documents are done. In any case, you have to wait for a visa. Preparation takes different times - on average from two to three months. Naturally, we help with everything - with registration, with filling out applications. We work with a company that specializes in this so that everything goes well.
Then a person with a family gets a work visa. With her he can come to London, he can work with us in the company, and her spouse can go anywhere except as dentists. Strange and funny, but it is written directly in the visa.
- Do you have enough money to live in London? After all, it is quite an expensive city?
With money, everything is, as always, relative. It is clear that everything depends on the professional level, requests and needs. I can say that the average salary in England is several times lower than we offer. Even in London, where salaries are high enough, ours are among the top 10%.
Some things are really more expensive here, for example, housing and services like a veterinarian, repairs. But at the same time, the percentage of the cost of materials for repair, telephone or laptop to salary is noticeably less.
In more detail, the topic of relocation is disclosed in the article of our employee, who just joined us at last year’s Hiring Event.
- Do you miss home?
Of course, we miss, but fly to Moscow 4 hours - for the weekend it is quite possible to drive. This is not from the states where 11-15 hours flight.
But I do not fly very often. All my classmates and classmates also went around the world. We sometimes meet somewhere in Germany, in Spain or in the States. By the way, last year I accidentally met a classmate right outside our office in London - without even negotiating.
My parents come to me more often to see my grandchildren. I don’t think they could come to me, say, to the States or to New Zealand.
- And there is no depression from the fact that you were torn away from the place where you used to live? The so-called migration crisis.
I understand you. I had a feeling of some panic, when you do not understand how everything is arranged in another country. But it passes, as soon as you understand and you begin to feel more confident. I passed it in the first month, for someone it can last longer. But we have a lot of any community even within Badoo - the guys play board games, run marathons, play basketball, ride bicycles. And everyone is ready to help you with questions and support. Social communication is quite a lot, you do not feel lost and lonely.
If a person knows Russian, he falls into a fairly large community. In London, about 300 thousand Russian speakers. Wherever you live, you can go outside, shout something in Russian, and someone will answer you.
On the way to work and back, I constantly hear Russian speech. There was a funny incident when we first arrived. On the first day they moved into the apartment, Saturday, day off, seven in the morning - and behind my wall “White Roses” suddenly began to play. The neighbor was from the former USSR.
Halloween celebration at Badoo
- How does the company entertain you?
On Fridays, we usually have some kind of national cuisine, food is prepared on the veranda of the office, in the fridge there is beer, wine, champagne. Once a quarter, we have theme parties, when the office is decorated with a cabaret, a circus or a historic hotel. A couple of times a year there are big events. New Year is not much celebrated here, but Christmas is a very big event, we usually have outdoor parties somewhere in London or around. In addition to entertainment, the company supports our sports activities, sponsors teams of basketball and football.
Daning, future and family
- There is such a theory that the family in the traditional sense is a relic of the past, and marriage should be a union of independent persons, something of a business partnership. Do you believe in Badoo that we will come to this?
Very philosophical question. The generalization here is not very appropriate, because all people from different cultures and different education, with different values of life. They can not say for sure how everything should be.
We try to help people solve different problems. If a person wants to find a spouse and start a family in the classical sense (which is different for each culture), then this is wonderful, this is his desire. I do not think that we should or can somehow influence this.
- Now it is really so, but what will happen in a hundred years?
It will depend on the direction of the world. I do not think that cultural differences between countries will be erased so quickly, and that the next 10-20 years will change a lot.
- Working on the dating service, you did not think that you could exclude a person from all this, create a virtual life partner, ideal for you, like the film “She”?
Wait and see. But seriously, we are for real relationships with real people.