Best Practices for Software Developers

PlusPlus’ Marko Gargenta explains why not all software developers should be managers and what it takes to lead a successful team.

Attracting and retaining tech talent has always been a challenge. In the current climate, it has become much more difficult. Nearly 75% of digital workers expect to leave their current role soon, with career advancement being the main driver for 63% of those considering moving on.

This data highlights a major issue that companies will lose valuable tech talent, but it also suggests that employers who can support career advancement are more likely to retain staff.

Many organizations pride themselves on their ability to develop talent internally and, certainly in growing companies, there is usually significant opportunity to learn new skills by changing roles.

But there are pitfalls in simply giving top talent different, supposedly more important responsibilities. This is especially true when that change actually means the end of the job they were good at and the need to learn a whole new set of skills.

Look at professional athletes. Few of the biggest stars in the world, in any sport, automatically become great coaches. And in journalism, what makes a great reporter doesn’t necessarily make someone a great editor.

It’s the same in software development. Successful software developers do not automatically make successful managers. In fact, very often the very thing that made a high performing actor so successful in his last role might just get in his way in the new position. This is because what made a great developer – technical prowess – is no longer the main attribute of a good manager.

Of course, having the right understanding is important when leading a team of tech specialists, but simply being the best at creating new products or fixing complex bugs isn’t going to inspire a variety of personalities.

This is because they will have their own motivations, preferences, strengths and weaknesses, all of which need to be addressed and managed in the right way in order to achieve the best performance from individuals and the collective team.

What it takes to manage developers

This is before we look at how these people work and how their roles influence how best to manage or lead them.

To do this, managers need to understand the types of people in their organization. Everyone can be unique, but there will be certain characteristics, defined by their roles, that can help to better understand how to lead them.

For example, if we consider programming disciplines, systems, user interface/experience, and database programmers will all have different ways of thinking about problems and solutions.

Or a manager may have a team of both permanent employees and contractors, each with their own concerns and approaches.

Plus, there could be both cowboys, rushing in at the very last minute of a project to save the day, and farmers, just getting down to the task at hand. Both will be needed to successfully manufacture a product and both will cater to different types of management.

Challenges in Building Software Development Teams

Of course, to get to this point, managers must have built a team in the first place. And while every organization is different, there are a number of common challenges that anyone who has worked in a technical function will experience. Specifically, recruitment, onboarding and knowledge sharing.

We have already noted the great upheaval that talent attraction and retention is going through and it is important to note that while many people are willing to move, the competition is such that no employer should think they will be easy to recruit the right staff.

This is especially true for engineering teams which often hire as one of the fastest growing functions in an organization. Many managers make the mistake of assuming that recruiters, whether external or internal, can handle the entire process. But if candidates are to be properly assessed, their leaders and even potential colleagues must be heavily involved.

For one thing, a hiring function that needs to serve the entire company is unlikely to have deep knowledge or experience in reviewing someone’s ability to code. On the other hand, while they can run company-wide tests to check for cultural fit, the intricacies of small teams will only truly be understood by the people who are actually part of that team.

Seeking opinions and ideas from existing team members can help create an assessment process that is fair, balanced, repeatable, and more likely to identify candidates who will quickly blend in with other employees.

Skip the integration at your own risk

Once a candidate has been chosen, they must be integrated. Although it is one term, it is actually two processes.

First, there is the part led by human resources. Employee orientation can include all of the documents, processes, and compliance checklists needed to turn a candidate into a legal part of the company.

Second, and more important from a productivity and engagement perspective, is functional onboarding, which aims to get newcomers up to speed as quickly as possible. It’s about having a welcoming culture and having immediate access to the right equipment and services.

Yet it’s consistently surprising how many organizations spend tens of thousands of dollars and many hours attracting and recruiting new employees, but only spend a fraction of that on onboarding.

Employers can’t assume that signing a contract means they can ease off. They need to ensure that the onboarding process is smooth and reflects the business.

If they don’t, they could lose those new employees they spent so many resources acquiring in the first place. A study found that employees who had a negative onboarding experience for new hires are twice as likely to seek new opportunities soon, while one in five new hires are unlikely to recommend an employer to a friend. or to a member of his family after his integration.

There is also another problem with integration – how it can create organizational drag. This is where adding new bodies slows down production, as everything becomes exponentially more complex.

While growing companies need to recruit new employees to maintain progress, if they don’t have clear processes and a culture in place to get people up to speed as quickly as possible, they may actually suffer a downturn. of productivity.

Create an environment of shared understanding

It all comes down to the issue of knowledge sharing. Communication and collaboration are essential to having a successful team, and they are as valuable for managers as they are for team members.

Leaders need to listen, while creating an environment that prioritizes knowledge sharing. This is especially true in the increasingly remote working world that many find themselves in. This goes beyond just sharing information within a team, but also extends to how teams communicate with other functions, departments, and business units.

Some managers may feel that they risk communicating too much. In today’s environment this is not possible, but it is important to remember that listening is as much a part of communication as speaking.

What can be a risk is over-communicating less valuable information. Everyone has a unique perspective or knowledge that is not readily available to others – leaders need to find ways to access this understanding and share it with relevant people within the organization.

This is where knowing the team members, their preferences and their ease in communicating comes in. There’s no point pushing an introvert to give a company-wide presentation when they might be more comfortable, and therefore more effective, in sharing their understanding. in small groups or one-on-one.

Succeed in 2022 and beyond

This is a challenge for technical organizations right now. Companies must be able to leverage technology to succeed in today’s markets and engineering teams are under pressure to help achieve this goal.

In this environment, managers must be extremely focused on supporting their employees to be effective, which puts the focus on these leaders and how they guide, develop and motivate their teams.

From recruiting and onboarding to individual orientation and how knowledge is disseminated across the organization, managers are in the driver’s seat to help software development teams operate.

By Marko Gargenta

Marko Gargenta is the CEO of PlusPlus, a productivity platform for technical teams.

Don’t miss out on the knowledge you need to succeed. Sign up for the brief dailySilicon Republic’s must-have science and technology news digest.

Gordon K. Morehouse