What soft skills do developers need? Opinions from Yandex

The big student Olympiad will start soon "I'm professional". It has been running online and offline for several years now. Students of various specialties, including technical ones, can participate. The Olympiad is organized by 26 leading universities: the National Research University Higher School of Economics, Moscow State University, Moscow State Technical University, Moscow Institute of Physics and Technology, MEPhI, St. Petersburg State University, ITMO University and others.

Yandex is the technical partner of the project. For us, β€œI am a professional” for the second year in a row has become a good occasion to talk about the importance of soft skills (soft skills) in the work of developers and other specialists. A year ago, our Moscow office hosted a meeting for the participants of the Olympiad dedicated to soft skills. Sergey Brazhnik, the head of the Yandex development office in Novosibirsk, also spoke about them, speaking at a training that is part of the β€œI am a professional” program. Today Sergey and two other leaders at Yandex β€” Anna Fedosova and Oleg Mokhov Olegbl4 - they will tell Habr about flexible skills: what they are, which ones a developer needs, where to get them and how their presence affects growth in a company.

Sergey Brazhnik, head of the development office in Novosibirsk, director for the development of regional educational projects

What soft skills do developers need? Opinions from Yandex

β€” For a developer, 4K is important: critical thinking, creativity, cooperation and communication. It is generally accepted that communication in this profession is not an important skill, but if you think about it, it is necessary for professional growth: you need to be able to ask questions, listen and hear the interlocutor, explain your point of view and accept someone else's, speak and negotiate. An intern may not be able to work in a team or think critically - and this is normal, because he does not yet have such a background.

If an already mature specialist comes to us for an interview, then we evaluate all these skills during the conversation. We look at how a person talks about himself. Along the way, we ask leading questions and clarify a lot. Critical thinking is tested on tasks. On the one hand, it is important for us that he solves them, on the other hand, we look at exactly how he solves them.

As a developer who already works for a company, there are two ways to determine which skills they are missing. The first is to request feedback from the manager. If they don't tell you anything, it doesn't mean that everything is fine. If in doubt - ask again. For current tasks and business goals, managers can forget about the soft direction - it is important to remind them of it. The second way is to try to evaluate yourself in relation to other colleagues in the team, for example, during brainstorms, when everyone throws ideas and then discusses and criticizes them.

Let's say you figured out what skills you lack. This is the first and most important step - to realize that yes, indeed, something is wrong with me here. Further, ideally, find a mentor - at least a friend who has developed these skills. Others can just watch. And if you find a mentor, then he is able to give advice and control your growth. Your colleague can be a mentor (it’s immediately clear why he needs curating - you work for one goal) or sometimes even an external expert (but this is usually your friend, otherwise his motivation is not clear). Books, lectures, trainings are also an option, but this way you will only get knowledge. To turn knowledge into a skill, regular practice is needed.

Communication skills are great during stand-ups - daily short meetings, where each team member tells what he is currently working on. Public speaking also helps. And try to communicate more with colleagues and share experience within the team.

If you need to choose a team leader between a technical project manager and a developer, there is no clear answer, which one is better. In Yandex, even a project, as a rule, can write code. Therefore, I would first compare a manager and a developer in several ways: how they are able to set tasks and control execution, how they drive the team, and in general what kind of relationship they have with the team. It happens that a person sets tasks well and keeps track of deadlines, but at the same time gets along worse with the team. It all depends on who makes the decision. Someone who was a developer himself, rather than a manager, is more likely to choose another developer to lead.

On some hard skills, you can become a team leader - there have been cases. But the leaders who move such a person to the team leaders need to be beaten on the hands. Because he, learning in the process, will break so much firewood that the team will be demotivated. Then it all depends on how strong the guys are. Or they will wait until the person grows up and realizes what is happening. Or they won't wait and start running away.

If you still make a hardcore developer a leader, then first you need to strongly prepare him and then be sure to mentor for the first three to six months.

Anna Fedosova, Head of Training and Development Department

What soft skills do developers need? Opinions from Yandex

β€” It is difficult to make a complete list of skills. So, the Lominger competency model includes 67 positions. Inside Yandex, we divide skills into universal skills and those that managers need.

Universal Skills related to personal effectiveness and interaction with others. Associated with personal effectiveness are, for example, the ability to manage oneself, one's time, work processes, result orientation, critical thinking, and the ability to learn. The difference between the economy of today and the economy of thirty years ago is that you are unlikely to do the same thing all your life. Most likely, something will change, and we must be prepared for this.

Another group of universal skills is related to communication with other people. We no longer live in the days of assembly line production. Whatever you do, most likely you will have to negotiate and discuss it with other people. The process of communication in this case becomes very important. In IT companies, where the planning horizon is very short due to the constant development of technology, even technical specialists have to make many collective decisions that are born in the process of discussion. And employees can't let negotiations stall, otherwise the work will simply stop.

A separate large layer is skills for leaders. These include the ability to set and evaluate tasks, motivate others and develop yourself, be a leader, build your team and interact with other teams.

At Yandex, soft skills training programs are designed so that employees can work through various situations in a safe environment. These may be situations that they have not encountered before, or specific cases from their practice in which they would like to get a better result. A lot can be worked out, from hiring new people and setting goals, to conflicts of interest and motivation issues. As a rule, situations of misunderstanding between an employee and a manager are difficult for both parties, but you can learn how to deal with them.

You can use different teaching methods. So, it's pretty hard to learn teamwork. At school, we are taught to work individually, grades are given for personal academic success. But it is in a team that people learn to take responsibility, distribute roles among themselves, and agree on common goals and results. And often it turns out that this has to be taught already in adulthood at work. Now, some schools practice including project-based learning and joint assignments. This should help to learn teamwork from childhood.

How to teach adults to learn and acquire knowledge on their own? Sometimes the experience of getting a higher education helps. In graduate and postgraduate studies, they teach understanding what is important and what is not important, where to look for relevant knowledge. But often this has to be mastered already in the process of work. No wonder one of the most popular courses on Coursera is called Learning how to learn.

There is nothing more useful for learning than getting to know yourself better: look at yourself with the help of feedback received from colleagues, once again think about what works well and what does not work well, find people you want to be like, and compare yourself to them.

It should be remembered that the basis of everything is motivation. If you understand that you are unsociable, but you need to change this, for example, it is important for the team, then both motivation and the need to change will appear. If at work you do not need to communicate with anyone, then why step over yourself?

Oleg Mokhov, head of HR project development and Yandex.Contest service, which hosts the online part of the Olympiad

What soft skills do developers need? Opinions from Yandex

β€” Developers without teamlead ambitions don’t really need soft skills. It is important to be able to ask questions, listen, convey your thoughts. To pump these skills, you can make a presentation at a conference or read lectures at a university. We all once studied, which means that we ourselves can teach someone. Students, contagion, ask the most undercover questions. The ability to quickly answer them, the suspension of the language helps you to remain calm in heated discussions.

Books don't help with soft skills. Training helps only if you attend regularly. But it is very useful to come to the conference and take an active position. Just ask questions to the speaker.

At interviews, I sometimes question even the correct answer of the candidate - I look at how he thinks. But this only works if the person is confident. In general, soft skills are best analyzed at the final interviews. For example, I ask you to tell about the most interesting task that the candidate did. So you can find out what is more interesting for a person - coding, researching, getting results or communicating.

Many who have wildly developed soft skills become high-ranking executives whose entire day consists of meetings. How to maintain coding skills? You say to yourself: I've been programming for two hours. Cut off all notifications, phone, just like that. I know leaders who do this. Well, to interview, conduct technical sections - it also helps to develop the brain. At Yandex, you just stopped being a junior, and you will already be invited to an interview. It's like a tax on the fact that you work in a big company.

If you need to choose a team leader between the manager and the developer, then it all depends on the future responsibilities of the leader. It's one thing if the manager was once a developer himself. Then he has a better chance. Another, if it is a project-universal. He interacts with the backend, frontend team, designers, analysts. But he does not know how a particular library works in the frontend, he is not familiar with asynchronous programming in the backend, he has no idea why it is difficult. The growth of a developer is a dive deep. And the essence of management is to collect the surface layer, understand the problem and set up connections and processes. Therefore, I believe that a manager most likely will not be able to pump development skills in people.

To the person from outside the team may have hostility. So I would choose a leader from among the developers themselves, and perhaps I would not choose the strongest of them. Suppose a person has been working for five years, now he is a senior developer, but during these five years only hard ones have grown, and software has not grown. Then I can't expect them to skyrocket if I give him a position. But when a developer has been working for a year, but I see that he has a good language, he communicates, he can connect several people, resolve a conflict between them - this is a team lead for me, even if he is not a senior developer.

I don’t believe in the story when a person becomes a leader on some hard skills. Teamlead without software most likely does not fulfill its function somewhere. When can it work? When subordinates are self-sufficient. I have a catchphrase for new leaders: cats are easy to manage. Team leads get upset when they have difficult cases - one employee wants to quit, another has become depressed and began to perform less, the third is in conflict. I say this to their team leader - rejoice, for the first time you need to work as a leader. Because cats - here they are meowing, kind, funny - they are very easy to manage.

Source: habr.com

Add a comment