Habr, hello! Another interview with our graduate - Nikolai Rekubratsky, team leader of the development team at XING. Nikolay spoke about life in Germany, about the resource where he found work, how European specialists differ from Russian in their approach to work, about the relevance of the data engineer profession in Europe, about projects in XING, etc.
- Kolya, what is your background and how was your career path in a data engineer and team leader?- I started Timlide about a year ago, but I still try not to lose the opportunity to program a little bit when my hands reach. Before that, I was a developer for a long time and the one who is now called the
date engineer .
')

In my last office, I was engaged in video advertising, built an analytical system for our clients. It was a startup that gradually grew until it burst. The volume of business grew, and with them, the amount of data being processed, and at some point the tools I used and the architectures that we used stopped working. As a result, I brought new tools, new architectures, then the lambda architecture was very fashionable.
Then there was a project to compile profiles for hundreds of millions of users, also quite interesting. And in all these projects I liked the challenge: there are some requirements for response, for the consistency of data, for something else. To meet these expectations and requirements, you need to very much rethink the current architecture. It was both a challenge and freedom of action at the same time, and that’s what attracted me so much.
- And how did your career path develop?- I didn’t work in such a large number of companies for my 11-year working life, XING is the fourth. And I started as a web developer, I wrote a lot in Ruby in the Ruby on Rails framework. He worked in Moscow in the office, which made a lot of interesting things related to video streams: both live broadcasts and interactive video. Also this office was engaged in the construction of various video systems, organized the broadcast of the Olympics in Sochi, and then closed. All the companies I worked for have died. This, I hope, has nothing to do with me (laughs - author's note).
- Does XING know the fate of your past companies?- XING is doing well. Returning to Undev, I liked there again the freedom to apply all the technologies that I considered necessary. I managed to wear different “hats”: there was a backend developer, and a front end, I was administering servers, I wrote on a bunch of different languages. It was a very interesting experience.
After 5 years, I moved to St. Petersburg, moved to another company, which, in fact, was engaged in video advertising. I came there as a Ruby developer, but more and more interesting tasks appeared that required other approaches and other tools. At that time I had a lot of time to read articles, blogs, books that were devoted to the things I worked with, and which solved some painful points of this work.
I acquired new skills, and after updating my resume on LinkedIn, I began to receive messages from recruiters. They offered vacancies in which the term “date engineer” appeared. Then I realized that the area in which I worked, has found its name, has its own specifics, and now these people are called “date engineers”.
And this is how I realized that now I am a data engineer, I can position myself on the market a little differently. I started to look for vacancies and eventually ended up at XING. XING is a German social professional network that is a leader in the German-speaking world, but it is not represented in other languages.
- With such a strong developer background, why and at what point did you go to the Big Data Specialist program ?- It happened when I worked at Virool, she was involved in video advertising. At that moment I had already built an analytical system that used Spark. Was in the middle of the road to build the data management platform. And I have a lot of questions, it was difficult to understand how to build the architecture in certain cases in order to effectively process the data. There were many such questions, and at some point one of my colleagues threw a link to this program in the chat. I said that it was interesting to me, the office supported me, they paid for participation. On the program, DMP classes were very important to me, I found answers to many questions that tormented me. On the program we did a lot of things with our hands, we read the theory, but still you get the greatest benefit when you begin to apply knowledge on your tasks. And I was so lucky: there were no individuals at work who would be engaged in machine learning, and I was able to put my new knowledge into practice on the task of predicting banner clicks. It was a very interesting project, it lasted a very long time, and I worked on it for the rest of the time: it was necessary to develop models, somehow improve them, and then bring them into production with my own hands. Since the company had an atmosphere of a startup, there were not very many employees, and there was a lot of work, I was doing all that.
- You said that a lot of different companies were knocking to you, Russian and foreign. Why XING? Why move to Germany? Have you considered other countries?- I'll start from the end. I considered, of course, other countries. In the past, the company had the opportunity to work in San Francisco. My wife and I lived there for several months, we looked. In the end, we decided that San Francisco is not very suitable for our family life. Maybe for the young and courageous - this is very good, but it seemed to us that this city is not very suitable for us. And I wanted to work somewhere not in Russia in order to get a different experience. It was my goal - to work in an international company, to see how things are done differently. And I wanted it to be not very far from Russia.
We began to look at Europe, namely, England and Germany, two economic locomotives. The rest of the countries are not so widely known for their IT-companies. In England, I was a little confused by stereotypes about bad weather at a subconscious level, so I looked more towards Germany. And here there is some irony in the fact that I now live in Hamburg, and this is the same Petersburg in Germany in terms of the weather, it is quite rainy here. But since I had been living in St. Petersburg for the last 4 years, after it any weather seems good, no matter where you move.
I looked at different companies in Germany. At first I thought that with my knowledge base in advertising it would be easier for me to apply them in an advertising company. But there were no companies where you could match with the team and the tasks that they have. I did not see any interesting offices or I was not satisfied with the people and their attitude.
- How did you look for work? Somewhere posted a resume in addition to updating a profile on LinkedIn?- There is such a service HoneyPot - as a dating service for developers. You post a resume, indicate your requirements and expectations, and you start writing companies. I talked with several companies there, but there was a feeling that a company that was about to write would be about to write. Like this one, in which you have already gone through several stages, nothing, but maybe there is something else better.
And at some point I wrote from XING, and not to the position of the engineer date, but to the position of the Ruby developer. I still thought that I was not interested, then I read about the company, she was a co-organizer of competitions in recommender systems for two years in a row, and I thought, “well, okay, it might be interesting to talk with them”. In the first interview I told about my background, what I know and can do, and they said: “we see that you have different expectations and a different profile, we have a vacancy engineer’s date, let's switch to it”. So I continued to communicate with them, the whole of this bother with the interview lasted for several months, there were many stages. What caught me the most was the last stage - meeting with the team.
- How was your meeting with the future team?- Usually you go to a restaurant for lunch and there you chat for an hour, eat and in such a relaxed atmosphere you can understand what kind of people you want to work with them. And for me it was the moment when I decided that I want, I find it interesting. We gathered with my wife and child and moved. The company provides housing for a while until you find yours, but it is not only for you, the apartment was for five rooms, and almost all were occupied. And life with a child who loves waking up at 5 am was a challenge for our neighbors. But, probably, it motivated them to find their housing faster. We later also found our refuge.
- Tell us about the projects that you are doing with the team now.- We have several directions, they are all related to users, because we have a team whose focus is on user data - recommendations and content production. There is another department that deals with vacancies, news, and we have a focus on user data. But at the same time, Xing is a rather large office, and there are about 60 teams that do different things, namely, product teams, they saw different parts of the site.
There are two interesting projects in the recommendation section. We are now exploring the power of connections between users based on various signals. Now there is simply information about the existence of a connection between users, but we do not have an understanding of how strong it is. There are some hypotheses in which the student is currently engaged, she writes her master thesis about the strength of connections between users based on network topology.
There is another project that is also associated with recommendations, we are trying to understand why the user has come to our site right now, what is his goal right now. That is, such an emphasis is on real time data, that is, to look at the history of this user's sessions at a real moment and understand where he is going, what he needs, why he wants to add this person or that, and on the basis of this change our algorithm to provide him the best recommendation.
I can still say about the generation of content. Recently, two new stories have appeared: the anniversary of the user's work in the company and when a new unfamiliar colleague appears in the company, the user. Here the interest is that the user specifies a company in a free form, and he can specify anything, and sometimes it is difficult to compare different names and understand that this is one and the same company - either a typo, or a little differently called a division , and we want to understand that this is one and the same entity. If you take a company of 10 thousand employees, for example, then we do not want to show the appearance of a new person to everyone, but we want to make a more personal recommendation based on interests and other things.
- Tell me about the data engineering tools that you use most often at work and why. What is your favorite?- In our stack, which you have to work more or less regularly, these are Hive, Spark, Kafka, Cassandra, Akka Streams, ElasticSearch. My favorite ones are Akka Streams and Kafka, because I like working with fresh data that is processed in real time, well, and Kafka helped me out more than once in my career, for which I love her very much. From what I use most often as a manager, it’s rather communication with people, which is very important, and many engineers underestimate this tool.
- Most companies do not share the data scientist and data engineer, they do not understand that they are two different human profiles, and they are trying to look for a team of universal specialists who can do everything: collect data, process, and prepare a model, and bring in the output. Why do you think this happens and does this approach justify itself?- I think this is normal, it comes from the resources that the company has. It is very difficult for a small startup to hire the entire line of necessary specialists: QA, backend, frontend, mobile developers, data engineer, data scientists, anyone else. They just won't pull in, startups hire developers who are willing to do everything. When companies grow, then they can afford to have specialists who are focused on a specific area. In large offices, you can often see the separation of the data engineer and the data scientist. In XING there is such a separation, but at the same time, we expect data scientists to be able to write production code, for which it is not a shame.
- Since you are now in a managerial position, are you looking for people in a team, what hard and soft skills are important when choosing a candidate? And according to your observation, what is missing? What requires more development if we are talking about the people with whom you spoke, hiring yourself in the team.- About hard skills: it is very difficult to find a person who fits your stack, with large companies the stack is very specific. For example, when I was hired, I very well hit the stack of this particular office, because I had the knowledge of Scala, which is used mainly for all date-related engineering tasks. At the same time, I had Ruby backgrands, and in XING a lot of grocery stuff was written in Ruby. My background matched very well. But when hiring employees, I do not expect that they will also have a perfect hit, including the data engineering stack.
Well, if a person knows the fundamental things that are difficult to learn: to program well or to understand statistics. It is difficult, for example, to start writing well on Scala, it takes time, because the language is not simple; but just start writing on Hive, because it is SQL, and you just sit down and write, and when someone starts to swear that your requests are putting the server, you start to figure out what is happening there. We hire those people who possess something relevant to our stack, and who have a very important trait for us - the ability to learn. For my team, it is important that people are curious, so that they, if they don’t even know something, can quickly learn, understand, and somehow get this knowledge. The ability to learn is one of the important skills that we look at when we hire. Another important skill is the ability to communicate normally with people, bring a positive to the team.
- Nick, tell me about your team.- In XING, an interesting structure: in many teams there are three managers - an agile project manager, a team leader and a product manager. Two managers - team leader and product - constantly with the team. The product comes up with what features we can implement and how to improve the existing ones. Timlid is me, I am responsible for the technological solution and the development of people in the team. Agile project manager looks at how the team works, and gives advice on what can be improved in the process or trying to solve some external conflicts. And besides these three managers, there are five developers: one QA engineer, one full stack developer and three engineering days. One more person whom I did not mention, a student, writes a Ph.D.
- What countries are your team members from?- It is impossible to find specialists only in Germany, we have a very diverse company. Not as international as, say, most companies in Berlin, but still quite international. I have two colleagues from Ukraine, a boy and a girl from Germany and a girl from the Netherlands. Our agile project manager from Croatia. Inside the company, the official language is English, everyone communicates on it.
- The next question in the continuation of the previous one: do the Europeans differ from ours according to your observations? You have been working in Russia for a long time, now you already have experience working with Europeans.- I have some experience working with Europeans, but it is limited to one European company, so I can only talk about what I see. What is very noticeable: the amount of communication among developers - what we do and why. This implies a lot of synchronization and meetings, but everyone has a very good picture of what is happening, why and why.
- Are these meetings initiated by your product?- This is the culture of the company, which comes from the very top. We have a very open manual, which regularly tells what is happening, what news and very carefully listens to feedback about what people like, what they don’t like, how to change. There are tools to give this feedback to management - anonymously or openly. The culture of feedback is very well organized at all levels. And this is the first thing that is very different from my previous experience in other companies.
The second thing: a very clear balance between work and personal life. By 6 o'clock the office is empty, people do not feel the need to sit in the evenings or nights in an attempt to meet the deadline, there is no rush job. In Russia, work often goes beyond the usual working day, in Germany, people are very attentive to this and are not eager to stay after 6:00 pm, everyone understands this, and is encouraged at all levels of management. They have a lot of their traditions: they love to sit in a cafe on Saturday morning, ordering a brunch. They just enjoy life, they are interested outside of work.
- About the office emptying by 6 pm: is it connected with the fact that the work is planned correctly, and there is no over volume of tasks? Or, relatively speaking, tomorrow deadline, there are tasks that are not done, but a person gets up at 6 o'clock and leaves, because he has a personal life?- The deadlines (from what I have seen) are not so tough that tomorrow there will definitely be something in production. Due to the culture of feedback, if something does not have time for the plan, it becomes obvious not at the last moment, but in a few weeks, and you can adjust the expectations.
- Are you satisfied with life in Germany?- Yes, I am very pleased with life in Germany, I am glad that I moved there, that I moved precisely to Hamburg. I knew about Berlin and spent a week there before the start of active interviews in Germany. According to Hamburg, research did not, but it turned out to be a very good city, and I like it even more than Berlin. Now I am comparing many cities I visit and compare with Hamburg, and more often Hamburg wins.
- Do you want to move somewhere professionally?- I try to understand how comfortable I feel in the role of a manager, because, on the one hand, it seems that in this position you can have a greater influence on product development and thus on the whole company. But, on the other hand, you find yourself further from the direct use of technology, sometimes I miss it. And while I cannot find a balance that would suit me, on the one hand, I had enough time both for managerial activities and for something directly applied to work. I understand that at the moment I do not want to grow higher in the hierarchy. Because further some coordination of budgets, plates in excel, and it will be the closest to data processing. So I don’t go there yet.