As the ‘Great Resignation’ wave of pent up job-changing demand continues, many organisations are finding themselves onboarding new software engineers… as well as saying goodbye to others.
As a result of this, teams find a hit to productivity, and as we know from the pandemic lockdowns, onboarding remotely exposes many issues - particularly without the help of social freebies, like being able to informally ask questions ‘by the water cooler’.
Leading technology teams, particularly software engineering, comes with unique challenges driven by the constant demand for innovation, responding to customer feedback and managing change, both internally and externally from the market.
With this in mind, tooling and processes are key to ensuring that teams are productive and able to respond to this fast paced and ever changing environment.
Because of the collaborative nature of the practice of DevOps, software development is actually an act of representation. To do it well the team needs to reflect their real-world users so that teams can understand how their products are made for different users and use cases.
In addition, great teams are strongly correlated with strong management, yet those within the industry know that issues of personality and people management are underrated.
High-performing teams need guidance and protection, particularly from burnout. And given how software has become central to everyday life, it’s right to focus attention on the ethos of the software engineering management practice.
Attracting developer talent
Competitive salary, yes, benefits, yes... Going above and beyond means learning how to leverage culture properly. It’s important to actually deliver, and to also demonstrate a culture that will work for, support, and help talent do their best work. Being able to communicate a culture in the interview process, give examples, and allow a candidate to discover what’s important to them, is key.
For software engineers, and software engineering managers, they need to see how they will be supported in growing and delivering their best work. Do they have the tools, processes, training, budgets - do they have the leeway to concentrate and do deep work? These are key to unlocking this talent.
Your job as a leader
Our job as leaders is to build environments and systems in which people can thrive. We also want to build resilient teams, so they can be happy, productive, and even become new leaders. Leaders must be a realistic but positive cheerleader, to show up for their teams and their business, to hold their values close and embody what they are by living them, and be ready to navigate the choppy seas of business - whatever happens.
Building a distributed tech team (as is likely to remain a norm for the foreseeable) is both art and science. When it comes to the science you’ve likely spent hours selecting programming languages, architectures, and the tools needed to create your product. However assembling a group of people with complementary skills and building them into a successful team is a very different challenge.
Good managers are essential in this project
They are inevitably the glue that holds team members together, overseeing initiatives, ensuring everyone is appropriately challenged, and facilitating collaboration. Securing great skilled doers and managers is essential, which is why having a strong hiring approach matters to corporate success.
You want your business to be a place where all engineers can learn, grow, and be supported in shaping their careers. To support this, I’d recommend an engineering competency matrix, a framework that outlines expectations and growth paths for engineers.
This matrix is a tremendously useful tool in my business: it informs the structure of our job descriptions and our interview processes. It also helps us set expectations with our engineers, and it serves as a basis for goal setting as well as conversations about learning and development.
Importantly, it provides a jumping-off point for more objective performance conversations that are less susceptible to the biases of the engineer’s manager. Overall, it clarifies the vision of an organisation and helps us maintain consistency throughout all stages of hiring and professional development.
Guide by values
Ideally a business should know and have codified what matters to it. Yet it is not at all uncommon for this to be lacking or well out of date. If so, it could be well worth considering the behaviour traits that are valuable to your business for all colleagues to have as professionals.
My business believes that iterative processes contribute to quality work. In the instance of choosing values, the feedback we received was extremely valuable. It surfaced good questions, which led us to tweak our matrix to convey what we intended.
The process also ensured we had codified the values of the organisation, not just those of a few managers, and that the value progression was representative of how our engineers saw their careers growing. This was extremely important in generating confidence that what we had developed represented what we wanted, and that it was well-received.
This can also help ensure that the right behaviours take over from unconscious biases. With software a ubiquitous tool, used by many types of consumers, having diverse teams and consideration of diversity is so much more than a buzzword. It’s both a morally positive act and a smart business decision.
Teams will be more creative, successfully fitted to the users they serve, and mindful of their impact. In a world of constant change, being mindful of thoughts, behaviours, and people matters all helps fit a team together, to the business, to the market, and to the world.