Great developers go beyond code

meeting

Throughout Canada, the coding bootcamp movement is growing. While approaches vary between bootcamps, the premise is the same: help people build job-ready technical skills in a relatively short period of time. These bootcamps provide a valuable service, helping to ease the tech skills gap faced in tech hub cities across Canada.

However, there are other skills beyond coding used by teams to build innovative software that people want to use. With the growing recognition of the value in STEAM (Science, Technology, Engineering, Arts, and Math) over STEM, Canadian tech leaders are looking for people who are not just great at coding, but are also great at understanding for whom they are coding.

“Yes, coding skills are important, but so is an understanding of usability,” said Vidyard founder Michael Litt in a recent op-ed on why his company is hiring more Humanities majors. “In other words, the uniquely human ability to draw upon experience to design an elegant solution that real people will actually find helpful.”

The push for ‘soft skill’ hires is not just coming from the executive level of Canadian startups. With an increased focus on employee belonging, employee experience, and working in agile teams, technical leaders across Canada want to hire people who have skills beyond code.

“It’s code and people skills, not code or people skills.”

When it comes to those soft skills, one key question is whether the need applies to all developers, or just those on track for management. If you ask Andrew Smith and Purvi Kanal from Toronto-based development firm Rangle, the answer might depend on your organization and personal career goals, but both Smith and Kanal are clear that everyone should also focus on those soft skills, beyond code.

“It’s important to be empathetic to clients and users. Especially in situations where someone doesn’t know what they want or doesn’t know how to build the solution they need.”
 

Smith, a Director of Architecture and Innovation at Rangle, indicated that there’s a baseline of people skills that every technical person needs. “There are guaranteed benefits to technical skills up to a certain point,” he said. “After that, an individual needs to know how to work as part of a team with others. Soft skills and personality fit are extremely important.”

“Many people enjoy being individual contributors and don’t want to be management,” added Kanal, a Solutions Architect. “But you still need team skills. At the end of the day, you want to be writing software that someone will use – and that user is a person, so you need a certain level of emotional intelligence.”

Regardless of whether a particular career path requires extensive emotional intelligence or just simple teamwork skills, the fundamental point is that people skills are a core component to one’s resume, not something in lieu of technical chops.

“It’s code and people skills, not code or people skills,” said Smith.

Building the skillset

Learning these skills is more than just doing the job. While the best way to learn something is by doing it, not everyone has the opportunity to work closely with clients or lead projects in order to develop relationship management skills. Particularly at the junior levels – which is when you need to build these skills to level-up your career – access to on-the-job training might be difficult.

To combat this obstacle, Smith and Kanal spoke about mentorship and coaching programs. Whether formal or informal, inside or outside of the organization, programs that give you access to stretch projects, ideas, and mentorship can help you build skills beyond code. One such program is Ten Thousand Coffees, a platform that matches you to mentors depending on which topics you are interested in or your selected area of expertise.

“I would pay money for our corporate Slack,” joked Smith, talking about how the informal knowledge shared on their company messaging platform is incredibly valuable for tricks, tips, and hints beyond his everyday coding work.

Kanal mentioned the Bridge program as well, a program built to help women in tech level-up their career, as an example of an outside program that individuals could learn from.

While the core of the program is job skills in coding or design, the program is designed to provide participants with the opportunity to lead projects and teams, or take ownership over their own work in a way that might not be readily available in their job. When given opportunities in a safe space like Bridge, people can build skills beyond code that will then apply to their jobs.

Hands off the keyboard?

When thinking about the distinction between employees and management, some believe that once you hit the management level, you’re no longer in a technical role. While your actual coding time may go down, the pair says that skills beyond code amplify your – and your team’s – technical skills.

“People think ‘if I go into management, it’s hands off the keyboard’,” said Smith. “That’s not actually true. What you do changes day-to-day, but technical skills and human skills amplify each other quite well.”

Regardless of specific team setup, the key focus is to ensure there’s a balance on all sides.
 

That amplification comes throughout the software development process. Smith explained that management roles in software development are all about translation. When a client has a need – or perhaps a problem without knowing what solution they require – it’s up to the humans on the development side to translate that challenge into a technical product idea, plan, and roadmap.

“That translation layer requires, on one hand, knowing your technology base well, but on the other hand understanding the person across from you,” said Smith. “You have to switch languages — coding and people — and you need to be able to bridge the two so you end up with the right solution.”

When you’re translating needs, the right solution can often change. This is why pivoting and being ready for “unknown unknowns” is crucial for anyone leading a technical team. Both of those skills require elements of technical knowledge and people skills.

“Code is the medium in which we build software,” added Kanal. “But it’s important to be empathetic to clients and users. Especially in situations where someone doesn’t know what they want or doesn’t know how to build the solution they need.”

Having all the right ingredients

Continuing the notion that emotional intelligence and empathy amplifies technical knowledge, Smith and Kanal added that the concept of ‘technical’ skills can be expanded to any domain expertise in the organization.

“When we think of technical, we often think of someone in a text editor typing away at some code,” said Kanal. “In reality, every practice across the tech industry – whether scrum master, talent manager, or accountant – has domain knowledge in what they are doing; that’s your ‘technical knowledge’.”

When building up a good team, it’s not just about looking for individuals with both technical and human skills, but also looking for team members who anchor either side. Smith explained that Rangle works to make its developers cross-functional, meaning they are not just concerned with writing code but also paying attention to the quality of their code, the process for the client relationship, and paying attention to client, product, and design challenges.

Regardless of specific team setup, the key focus is to ensure there’s a balance on all sides, since having both generalists and specialists helps to “level everybody up,” according to Smith.

“It’s like having a good recipe,” said Smith. “If you have good ingredients in the right mix, you come up with a really nice dish.”

Photo via Burst.

One reply on “Great developers go beyond code”