Got Emotional Intelligence? The Crucial Skill for the Next Generation of Software Developers

AlchemyCodeLab-31.jpg

Great software developers are hard to find because just learning to code is not enough. 

Despite the robotic role portrayed in movies, creating great software is a team sport and requires human skills. Creating software applications primarily centers upon solving human-centered needs, which is rooted in empathy. Building strong interpersonal skills for relating to others first requires a foundational personal skillset. 

Emotional intelligence involves our ability to identify and regulate emotions in self and see them in others. Being a team player involves developing skills through lived experience, practice, and reflection. If a developer does not possess and practice skills in emotional intelligence themselves, they are unable to effectively meet the needs of others including their teammates, their companies, and their users and customers. 

There is a saturation of developers with a ‘just get something to work’ hacker ethic and work style. This approach isn’t focused on the effects of their actions, like: Who is inheriting this code base? and Does the work help the business in their greater goals? 

Some of this approach is explained by rapid growth of the industry and the fact that half of the developers in the US have less than five years of experience. Truly senior developer role models, mentors, and teams are increasingly hard to come (only 1/16 of developers have more than 15 years experience!). Why does this matter? Because when we ask these Obi Wan Kenobis what actually makes a great developer, we overwhelmingly hear Interpersonal Skills, Business Strategy, and Engineering. 

Healthy interpersonal skills within software development teams require more than the typical resume fodder. Strong software developers need honest, proactive, team communication skills. They are very intuitive, trustworthy, and committed to personal responsibility for their contributions both inside and outside lines of code. But more than this, great developers are committed to their craft and value the perspective of all participants towards the end goal. 

Developing software is unpredictable. That’s why developers need to be adaptable, no matter which programming language they specialize in.

So let’s break that down: 

  1. We've all been developing our interpersonal skills since childhood, although usually subconsciously. Great developers have excellent interpersonal skills to understand their team and their customers. They translate between the technical and the practical across multiple teams and end-users. 

  2. Mediocre and just good-enough work ethic focuses on getting things to work as the mark of success. Great developers know that individual successes are meaningless without team outcomes, which includes the success of the business. From time estimates to exploring new tools, great developers co-create within their teams, which requires respecting the craft itself.

  3. Leave your ego at the door. View your contribution as a partnership over the long haul to solve the human centered problems in front of you. Identify your own areas of improvement and seek feedback from others. Get used to this exercise of self growth by making a habit of questioning your own assumptions and actively seek out your blind spots. Great devs don’t take code criticism personally. They develop resilience as a reflex to the unpredictability of the work itself. 

  4. Focus first on your own personal skills. This is how we manage ourselves. Self-awareness and self-regulation require understanding what motivates us. Before we can effectively communicate with others, we must be responsible for our basic communication skills: the art of questioning and mindful listening, honest reflection, and verbal/nonverbal communication. 

  5. Our social skills are how we approach our relationships. At a deeper level, empathy entails defining, understanding, and reacting to the concerns and needs that underlie others’ emotional responses, reactions and needs. Engaging a client’s needs requires empathy, just as working in a team with differing ideas requires an agile mindset and communication

At Alchemy Code Lab, we train people as if they’re already on the job, led by senior developers daily. We’ve realized that graduating people directly into mid-level developer roles means that we need to nurture these interpersonal skills, and we are always revising our training to stay ahead of these skills as well as excellence in coding. Through replicated daily practice mirroring the everyday work of a developer, our intentional process trains both technically and interpersonally. Graduates emerge with the skills to navigate themselves and within teams led by a compass of curiosity rooted in growth. 

Great programmers appreciate experimentation and possess an innate love of learning. They seek new tools to improve their work and themselves, and are willing to approach projects from different points of view. From foundational practice to mastery of the craft of successful software development, excellent interpersonal skills are essential to a fulfilling career!

Curious about code? Megan would love to talk with you to see if becoming a software developer is right for you. Contact her at megan@alchemycodelab.com.

Megan Nelson is the co-owner and head of admissions for Alchemy Code Lab. She’s passionate about helping people navigate career transitions with joy and optimism. Connect with Megan on LinkedIn.

PDX Women in Technology