In addition to technical knowledge and English, so-called soft skills - personal skills - play an important role in IT. The main ones are communication and teamwork skills. They do not play an important role in positions up to the senior level, but starting from this position and upwards, these skills are just as important as the technical ones. To boost your tech or soft skills you can use our online education platform skillcombo.com
Let's look at what soft skills are necessary for career advancement.
1.Communication skills
Developing this skill is easy: socialise, socialise, attend conversation clubs if necessary. Just be careful: don't bring up sensitive topics. Some people can be very conservative.
Why waste effort on relationship-building when you can read about a new framework in the meantime, you ask:
- firstly, good relationships with colleagues build a level of trust in you as a technical professional;
- second, it helps you do your job better.
Quality and constructive communication earns you a "plus in karma" as a person and a professional. And this allows you, in a critical situation on a project, when you need to do something quickly, to simply come to the developers and say: "Do this", and not explain why, as they already trust you.
Without the ability to communicate, you can't achieve many personal and work goals. Consider this case: a new API architecture is being developed for a product. There's a message queue, and the Senor assumes that it will be important for other products to receive these messages too, so he needs a friendly and secure language for communication.
When he talks to developers in other departments, it turns out that the problem is just as pressing for them. In the end, the problem is solved with a completely different set of tools than originally planned. If he had not communicated with the other departments, the system would have ended up not being user-friendly.
2.The ability to communicate your thoughts
The key to a successful project is being able to communicate clearly and concisely to your team, colleagues and clients. Unfortunately, everyone is different and sometimes they perceive the same things completely differently than you have imagined. When you assign tasks to other professionals, it is important to be able to articulate and structure the information and make sure that the person understands you in the way you want them to.
A senior-level or higher position implies that part of the workload will be shared with colleagues with less experience or from other departments. In order to instruct a person who has just joined the project or to give him or her new functionality to develop, you need to understand the nature of the task yourself and assess the possible risks associated with the human factor.
3.Public speaking
Public speaking skills are important for the seΓ±or professional. It is necessary both for internal rallies and for product presentations to customers.
Oratory skills are needed not only for attending conferences as a speaker, but also for presenting the results of work to the client. A trivial example is a presentation to report to the customer on the work done over a period of time.
Look for opportunities to speak in front of an audience and practise. You can do this by holding internal Tech Talks with your team and colleagues on relevant topics. This is a great chance to learn how to speak: a relaxed atmosphere and a familiar audience - consequently less anxiety.
It is important to feel your weaknesses, recognize the problem, work on mistakes, get rid of parasitic words ("well", "as if", "uh" and the like).
Rhetoric is a skill you can develop to a certain extent, even if you are not a born orator. But to make a speech, it is not enough to learn the theory alone - practice is necessary. Various communication trainings can be useful.
4. Constructiveness
The higher your position, the more people you will have to communicate with. Negotiating competently with the team and the customer is an additional level of responsibility and a necessary skill for a senior-level engineer and above.
When you go beyond the middle-level engineer, the requirements for communication skills become higher.
You now have to meet with more influential stakeholders, such as C-level management (CEO, CTO, CIO, CSO, CFO, etc.). During these negotiations, the stakes are high and there is no room for error.
Prepare in advance for such important meetings, constantly improve your business English and be politically correct.
Starting from a senior position you will be responsible not only for the outcome, but also for the people and resources available to you. In order to learn how to negotiate, give up the desire to appear professional and to hear praise from customers, bosses, colleagues. This is often used to get agreement on deadlines. Learn to persuade the person you are talking to, rather than impose your opinion on them. Ask him questions, try to make him understand your position by his own reasoning.
Defend your point of view, but at the same time be able to hear the other person and be prepared to accept criticism. In my practice there have been situations where the customer has fluffed up only those features that are important to the business and forgotten about the tasks that are important to the users of the product. But the product must remain usable for people, so I have taken it upon myself to defend the priority of certain features for users. In such a case, it is important to convey your point of view in a correct and reasoned way, to provide facts as to why it should work this way and not that way.
It is also important to keep in mind the cultural differences between people from different countries and with different mentalities.
5.Team play
The senior or lead professional should be able to focus not only on the personal result, but also on the effectiveness of the team. This can manifest itself in the proper allocation of tasks among the team, helping colleagues in a timely manner.
It is important to be able to maintain a balance when it comes to interfering with the work of colleagues.
While it is easy to make all the decisions on a project and dictate the rules, it is much harder to create an atmosphere where each team member is confident in his or her abilities.
To achieve this, have confidence in your colleagues but, of course, keep your hand in the pulse of the project so that you can intervene.
Once when I was a developer I was lucky enough to work with an experienced professional who taught me how to give and receive feedback. Every two or three months we made conclusions about our work and approaches to tasks. He listened to my feedback and I listened to his comments on my work. I have been actively practising this approach ever since. Be sure to listen, hear and take into account the feedback you receive.
It is a useful practice that allows you to improve your skills: once you have received such feedback, you can understand in which direction you should work and develop, what you should pay attention to.
6.Mentorship
You will have less experienced professionals on your team who will need to explain, delegate, and transfer knowledge. For that, it is important to be able to approach different people and learn to express your thoughts in as simple words as possible.
As I see it, a seniorman should not take all the power in the team into his own hands, but help, inspire and teach the team.
The easiest way to learn this is to answer questions on forums like Quora, Reddit, Stack Overflow. This trains the ability to explain, and in the process you understand your own answer even better.
Programmers generally avoid mentoring in favour of engineering. Consequently, there are very few developers who combine the qualities of engineer and mentor at the same time. There is a demand for them - especially in small firms where the shortage of such people is particularly acute.
If you want to develop the mentoring skill, get a job teaching some courses, there are many of them now. Try to get your thoughts across to people who understand nothing about IT.
7. Empathy and emotional intelligence
Empathy helps us predict situations involving other people without personally engaging in similar experiences. For example, if you know that your colleague causes stupor and stress in situations where you need to make a quick decision, it is worth taking this into account beforehand.
Empathy is about accepting the diversity of our world. It is better to develop this skill from childhood, the process is much slower in adults.
The most elementary exercise to develop empathy: simply communicate with all kinds of people on everyday topics and do not make value judgements about the person you are talking to.
In order to understand what the other person is feeling and how they see the world, it is enough to accept the very possibility of multiple perspectives on the same things - you don't have to share these perspectives.
Developed empathy is one of the skills of conflict management and the ability to resolve disputes that arise in a team. When a specialist becomes responsible for the team as well, the skill of handling disputes intelligently and sensitively comes to the fore.
A code does not have an opinion, it will not argue and spoil the nerves, but people sometimes can. Therefore, in such situations, the main thing is not to forget that we are all human beings and that emotions are inherent in us. This is where EQ - emotional intelligence - comes in handy. Study how different factors influence the emotions of other people, learn how to evoke and maintain the right mood in yourself and how to influence the emotional background of your interlocutors.
Top comments (0)