7 Soft Skills for Developers
“In the modern world, when applying for a job, it is not enough to be a high-quality developer. A programmer is nowhere without well-developed soft skills,” says Svetlana Bodrenkova, training and development manager. What are soft skills and why should a programmer develop them?
What are "soft skills"?
— Today, the most progressive (and useful to the world) solutions are not the result of the sleepless nights of a lone genius, but of teamwork. One of the coronavirus vaccines was the result of a collaboration between the University of Oxford and AstraZeneka. On the website of the University of Oxford, in the Academic Research section, in addition to immunologists and clinical specialists, there are specialists in the field of artificial intelligence, data analysts, programmers, and mathematical modeling specialists — emphasizing an interdisciplinary approach.
The Human Genome Project involves not only biologists, physicists, and chemists, but also engineers, IT specialists, and ethicists. At individual companies, the demand for cross-functional teams is growing. This means that in addition to classical STEM disciplines and hard skills, success in a career as an IT specialist is increasingly associated with the flexible, soft skills necessary for successful teamwork.
For more than 7 years, I have been preparing IT specialists (mostly developers) for interviews with clients. Based on what I see, in open sources there are a lot of materials concerning so-called "behavioral interviews" in the IT field. Of course, in such interviews, we are still talking about the principles of high-quality code, modern libraries, and frameworks. The focus, however, is not solely on the technical knowledge and skills of the candidate, but on something more. Following the approach of a typical behavioral interview, you can determine which soft skills would be useful for a developer.
7 Soft Skills of a Programmer
— “Tell me about yourself…” is often one of the first phrases heard in job interviews. The wording may differ, for example: “Why did you choose this language / technology / framework?” “What brought you to us?” “What appealed to you about our vacancies / products?” and so on. The form is not as important as the content. To answer the question, a skill that can be called "self-marketing" is useful. It requires an understanding of what you are doing very well, what you want to learn, and what you will not do and why. If you have mastered this skill, you will be able to confidently and reasonably tell the interviewer what benefits the team will receive from cooperation with you.
In addition, a conscious choice about what you do not want and will not do helps guarantee that you will not drag your feet every morning to an unloved or meaningless job, or end up working in a company that has different values than your do. If you know for sure that you want to work in projects in the field of Life Sciences & Healthcare (perhaps your main education is as a chemist and you want to use it to improve the quality of people's lives), then you are unlikely to lean towards Game Dev companies.
— Practical task. It is a rare interview in IT today that does not require solving one. Let's leave aside the topic of how to prepare for solving such problems, their complexity, and the most useful hard skills. For this discussion, it is more interesting to consider what soft skills a candidate will demonstrate during the course of completing the task. Will the candidate immediately proceed to the task or ask clarifying questions on ambiguous points? Even if everything is clearly stated in the assignment, will the candidate clarify the criteria for the result (is it important to present a working code or show a train of thought in 20 minutes) or rely on their own ideas of success? Having clarified all the questions at the start, will they begin work silently or comment on their actions, explaining their choice of approaches to solving the problem?
Critical thinking is useful for a comprehensive analysis of incoming information, and the ability to identify the essence of the problem instead of relying only on personal experience and the usual methods of problem-solving.
Another valuable skill is the so-called consulting mindset. It can be described as a switch from thinking “What should I do?” to "How can I do this better?" (subject to known conditions and restrictions).
The importance of this soft skill can be seen in an everyday example. Imagine that a customer walks into a coffee shop. The barista is seeing this customer for the first time. In response to a request for a coffee, the barista (without critical thinking and a consulting mindset) silently turns to the coffee machine, prepares a walnut latte, and places it in front of the customer. If you ask a barista why they did this, the answer might be: “Because at this time of the day, everyone is ordering a walnut latte.” “Because I was in the mood to do that.” “Because it's faster.” “Because the customer has a hazel-colored shirt.” What if that customer is you? What if the customer is lactose intolerant or allergic to even traces of nuts?
Critical thinking and a consulting mindset are needed in order to clarify all of the important details for solving a problem. It is vital in a situation involving teamwork, or when building partnerships with a business, to: agree on the conditions and restrictions for the implementation of a project, recognize how decisions will live on in the future, and to understand by whom the product will be used.
Flexibility and adaptability
“And what will happen if...” Let's say the candidate has reached a result: the solution is ready and it works. At this point, the picky interviewer says: “What if we use Y instead of X?” “What if the amount of data doubles?” “But what if the priority is not speed, but quality?” “How will this affect the decision?” “In what environment will this solution not work?”
This is where soft skills such as flexibility and adaptability, stress resistance, and the ability to recover (resilience), come in handy. The last 2–3 years have shown us all how unpredictable and rapidly changing the world is. In response to these challenges, project teams and companies are increasing the speed and variability of solutions. Agile and the “fail safe – fail fast” approaches have gained popularity. In practice, for an individual developer, this means that on the very day when they announce with joy and pride at a regular team meeting that – finally — after numerous attempts to solve a very difficult task, they are ready to offer a working option, they hear from the Project Manager: "Great! Thanks for your expertise. Yesterday, it was decided that now we will... " – choose one: use X technology, focus on 3x the amount of data, transfer the solution to the cloud, refuse this functionality, etc.
This happened before, but now the number of such cases is growing like a snowball rolling downhill. A decision made concerns the entire team or product. But the attitude of individual team members to the decision will vary greatly depending on their soft skills. If your flexibility and adaptability are pumped up, you will quickly switch from regretting missed opportunities to searching for new ones, and you will cope with momentary irritation more effectively, spending less of your time and personal resources on it.
If, over and over, a solution described in a book or a commonly-accepted theory does not work in practice, or if a solution that worked yesterday is failing today for no apparent reason, well-developed resilience will help you get closer to the attitude described by Max Frei. The author said, “I wish I could teach you instead of: ’Oh, how bad everything is!’— think: ’Wow, how interesting.’ But this attitude to life comes only with experience.”
Imagine a runner, an Olympic champion. Their hard skill "run" is pumped to the limit, they know this, and it is obvious to everyone around them. Let's change the environment: instead of the stadium track, we will send our runner into the water. Their attempts to apply their best running skills will be in vain. What's next? Our hero (like each of us) has a choice: scold the water for the lack of proper density, make excuses for the insufficient speed of movement, return to solid ground under their feet, or master new skills? Learn to swim, become a "junior" again in a new skill. The choice we make will be determined by our flexibility, adaptability and resilience.
Emotional Intelligence and Negotiation
— In conclusion – two more skills are last on our list, but certainly not least in importance. Emotional intelligence is the recognition and understanding of one's own emotions and the emotions of the interviewer. This is about the ability to work with your emotional state and adapt the conversation depending on the emotional state of your conversation partner (or the audience, in public speaking). And the ability to negotiate is a skill involving the recognition of possible common interests when faced with seemingly opposing positions, and the ability to move on to mutual agreement (or withdraw from negotiations/relationships if the balance of "take-give" becomes unacceptable). There is more than enough available information about these skills. I’ll just add that it’s impossible to train them by reading books or watching instructional videos. It would be like learning to skate from watching videos: you can watch 10,000 hours of skating recordings, but your first attempt to repeat what you saw, at the same pace and under the same conditions as experienced masters, will end in a painful collision with reality.
Why are soft skills valued in IT?
Today, it is useful for a programmer in IT (and not only a programmer, and not only in IT) to develop:
— Today, when applying for a job, it is not enough to be a top-notch developer. Without well-developed soft skills, a programmer is nowhere. These skills are critically important, so do not forget to include them in your resume and upgrade them daily.
- English Through Music: Learn and Have FunLearn04 Nov 2022
- Effectively Launching as a Junior: an Expert's ViewWork23 Nov 2022
- 3 Ways to Find Your Dream JobWork24 Nov 2022
- Project Manager Responsibilities: Tasks and Skills vs RealityWork31 Oct 2022
- “Forget About Impostor Syndrome”Community18 Oct 2022
- How to Learn EnglishLearn04 Aug 2022
- How Does a Junior Get Their First Job in Singapore?Work22 Nov 2022
- 8 Reasons to Move to KrakowRelocate26 Oct 2022
- Trends in IT Company EventsCommunity30 Nov 2022
- The Brain-Up Project is Looking for VolunteersVolunteer11 Aug 2022
- 3 Facilitation Case Studies: Better and Worse ScenariosWork31 Oct 2022
- What You Need to Know to Relocate to SerbiaRelocate26 May 2022
- Business Analyst in IT: What You Need to Know and DoLearn14 Nov 2022
- How to Learn Ruby on Your OwnLearn25 Nov 2022
- Life in Italy: What You Need to PrepareRelocate19 Oct 2022
- How to Manage Interview AnxietyWork12 Oct 2022
- 10 Ways to Stay on Top of IT TrendsLearn25 Oct 2022
- What Does a Botanist Do in IT?Work04 Nov 2022
- How to Effectively Give Feedback?Work18 Nov 2022
- Relocation to GeorgiaRelocate20 Sep 2022
- How to Become a Tester in three weeksWork19 May 2022
- How to Compose a ResumeWork16 Aug 2022
- Sent out 500 Resumes and Moved to UzbekistanWork28 Nov 2022
- What Should a Beginner Automation QA Engineer LearnLearn29 Sep 2022
- How to Become a DevOpsLearn06 Oct 2022
- "Where Else but Spain?" — the Experience of MovingRelocate06 Dec 2022
- IT Beard Talks About Anywhere Club IT CommunityCommunity19 May 2022
- The Easiest Programming Languages to LearnLearn07 Sep 2022
- Lithuania: Features and Life HacksRelocate10 Oct 2022
- Home for Every IT Professional in the WorldCommunity19 May 2022
- Living in Serbia — Pros and ConsRelocate16 Jun 2022
- Life Hacks And Impressions of Moving to PolandRelocate28 Jul 2022
- Relocation to TurkeyRelocate31 Aug 2022
- What Is a Vocation, and Does It Exist in 2022Work20 Jun 2022
- What Do You Need to Know About the South of SpainRelocate22 Aug 2022
- Facilitation: How to Conduct It EffectivelyWork17 Oct 2022
- How to Start an IT Career in TestingWork01 Jun 2022
- Pros and Cons of Life in MontenegroRelocate08 Sep 2022
- 5 Common Questions about RelocationRelocate19 May 2022
- Best Countries to Relocate for IT SpecialistsRelocate06 Jun 2022
- From Travel Agent to a Tester in ITWork20 Jul 2022
- Why Time Management Doesn't WorkLearn19 Sep 2022
- What to Read and Watch for a Novice Java EngineerLearn19 May 2022
- Relocation is Like the First Child's BirthRelocate23 May 2022
- Tips for Relocating to SerbiaRelocate02 Jun 2022
- What Are Some of the Unusual Jobs in ITWork21 Jun 2022
- The Psychological Trauma of EmigrantsRelocate28 Jun 2022
- An 8-month Journey to Front-EndWork04 Jul 2022
- 6 Stereotypes About Life in HungaryRelocate30 Jun 2022
- The Real Story of a Radical Change in ProfessionWork18 Jul 2022
- Top 5 Startup Books to Read in 2022Learn27 Jul 2022
- What is Data ScienceWork09 Aug 2022
- Doctor in ITWork24 Aug 2022
- 5 Myths About IT: True or FalseWork19 May 2022
- The Reality and Myths of Life in TurkeyRelocate19 May 2022
- To Learn How to Write Code, You Have to Write CodeWork24 May 2022
- Android: What Should Beginners and Professionals DoLearn09 Jun 2022
- How Do Expatriates Live in UzbekistanRelocate15 Jun 2022
- How to Support Someone Who Is StressedCommunity23 Jun 2022
- How to Avoid Burnout And Stay Productive in 2022Work06 Jul 2022
- The Joys And Challenges of Relocation to HungaryRelocate11 Jul 2022
- Where is Python Used And Why Should You Study It in 2022Learn13 Jul 2022
- Family Traumas in EmigrationRelocate03 Aug 2022
- What Impresses in MontenegroRelocate18 Aug 2022
- Where to Make Friends With BlockchainLearn25 Aug 2022
- How to Become an HR ManagerWork05 Sep 2022
- Top iOS Developer ResourcesLearn12 Sep 2022
- Features of Life in GermanyRelocate05 Oct 2022