The Successful Software Manager
上QQ阅读APP看书,第一时间看更新

Skill 1 – Flexibility and adaptability

Let's start with flexibility and adaptability. There is an important difference between being flexible and being adaptable. To be a successful manager, I believe you need to have the ability to be both, as they go hand-in-hand, and you will need a combination of both in order to make a meaningful and positive impact on your team, project, or both.

Every developer will already think that they're flexible, on some level. This line of thinking grows from their own experiences where they have:

  • Delivered something a little bit faster when requested to do so by the Project Manager
  • Successfully bent logic to allow more permutations
  • Made a calculation in a completely different way after a code review
  • Allowed for a different exception handling method, even though it may not be used immediately

These are all things an experienced developer will have done throughout their career – some more willingly and happily than others!

Most developers will also think that they're already adaptable, on some level. I worked with a consultant developer once who was constantly asked by the team manager to be responsible for unit testing, and only unit testing. This consultant developer didn't actually do any design or coding at all for the entire project! Kudos to him, not once did he complain about it, even though he was clearly frustrated. He had become the "unit test guy," whose task on this particular occasion was important to the overall project, but to him, personally, was very monotonous.

The key distinction between being flexible and adaptable is that being flexible is a reactive and responsive skill, while being adaptable is proactive, affirmative, and actionable. Both are important, and they work well together.

It's also important to note that being flexible and adaptable are not the same as being versatile. To be versatile is to be like a utility player who can perform in different positions on the pitch. That is a quality and skill in itself, but it's not as relevant in our context.

If an urgent new requirement and change request comes in, then flexibility is about having the capacity within your project's contingency or your team's capacity to accept and accommodate this new requirement, without negatively impacting the project. On a personal level, you're also being flexible if, for example, you're booked for a meeting at 9 a.m., but it's rescheduled at the last minute to a less convenient time for you, and you still attend.

If you must deliver a critical change request without delaying the go-live date, and your project contingency has already been exhausted, what do you do? Well, if you're being adaptable in that situation, then you take corrective action and reallocate your resources and even deprioritize other requirements. You take proactive measures to meet the situation.

When I volunteered for an international development charity called Voluntary Service Overseas (VSO), the top quality they looked for in candidates during the assessment process was flexibility. The selected volunteers may be sent to a variety of developing countries, which may not be known at the selection stage. They may be working with any type of partner organization, ranging from a remote farming village community to the Ministry of Health, which was the case for me. In this case, you could be working in an isolated and difficult-to-reach place, or even dense urban cities. The challenges are varied and unpredictable. Hence, flexibility is vital in the anticipation that expectations will need to be constantly adjusted and even reset.

The extension to flexibility is adaptability. For example, your local community may not speak English, or whatever your native language is, but communicating with them is vital to both your day-to-day living, such as buying food, as well as the success of your project. So, you have to adapt by learning their language and customs, and even resorting to signing gestures if required! You take action to find a way.

A simple but effective technique for a manager to liven up an otherwise dull and laborious meeting is by introducing the positive element of surprise. This could be a simple interactive quiz with prizes to encourage attendees to participate and share their creative ideas – the crazier, the better!

When you are the manager, you absolutely need both flexibility and adaptability. You need the flexibility to understand each situation and constantly draw on your empathy to appreciate things from the other stakeholder's perspective. And you need the adaptability to act in the required role and make the necessary intervention, which may not be your usual role or choice. Moreover, when you are flexible and adaptable, your team will follow and amplify the impact of this key skill.