This is the third post in the series of creating high performing teams [HPTs]. Just to recap a little bit, in the first post I wrote about the most important 3Ps ( people, process and product) and prioritisation for engineering managers. The second post was about people. I wrote about how important it is to be kind, respectful, building trust and recognising the great contributions. These are not mandatory to read but would be good to get the full context.
In this post, I am writing about the rest of the two Ps- Process and Product. As the title goes, these are very much important after you make sure you have set up the right team.
A lot of us, including managers(/leaders), engineers and developers have an allergic reaction to the processes. Or at least I had it when I was a junior engineer and an individual contributor. As I took over the leadership role, I started realising the importance of the process. I plan to elaborate that here with why, how and where to add processes. I am only relating these to the knowledge industry but some of these things can very well be extended to others.
To clear any confusion I am in full support of the Agile value “Individuals and Interactions over processes and tools”. This writeup is more about once you have the individuals and interactions taken care of.
Why add process?
As I wrote in the first post, the process is important for two primary reasons:
1. It brings in discipline
2. It helps you scale up easily.
Discipline — one of the very misunderstood traits of any craftsmanship. For us to deliver any impactful result we need to be competent. I really love the definition of competence from the book Management 3.0, which goes as Competence = skill + discipline. Going a little verbose — You can not be a great craftsman just by having the skills, you also need to hone the skills and do it regularly.
A high performing team needs to be very competent. Competence for the team consists of the same two critical factors. For a high performing team, you need to look at things holistically, ignore the exceptions and make sure the collective team is disciplined just enough to get the best in class work done without any hiccups.
Scaling up — this is the second reason for adding the process. Let me paint an example, today you are managing 1 or 2 scrum teams of 6 engineers each (around 6 to 12 engineers). The teams are doing great and you know all the details of the project. Now, as part of the growth, you were asked to lead two more scrum teams and there is no one to help for providing management support. Suddenly the time that you spend with each team is reduced and the level of details that you can look into has drastically become shallow.
One of the challenges that you may face in the above situation is- How to make sure the first two teams are running smoothly without any disruptions? How can you make sure the new teams are the priority now and the first two teams are autonomous.
The right level of the process will help a manager here. Having a process in place for all the recurring things would help you tap into the team for health checks regularly and don’t need to be plugged in all the time. In short, as a manager you can focus on your critical priorities of hiring, forming the teams and empowering them to make progress.
How to add process?
Now that we have talked about why (and hopefully you appreciate it), we shall now move to how to add the process. To be honest, there are no set guidelines on how to set up the process but some techniques I can think of are more agile-based. In this fast-changing world, we all need to be lean and agile and based on that, I have used Scrum a lot over the years and it helps in putting together a good amount of process in place to help the team continuously improve. You may choose a different approach/framework but having a well-tested framework will help.
Do make sure you automate the process as much as possible, like having set reminders on slack/messenger, calendar invites, notifications from your ticketing system like Jira, etc. All these will help you strengthen your process and bring in more discipline.
Last but not least — Don’t just add the process, explain why and make your people responsible for the process. Unless and until your team gets the sense of responsibility of the process, it will not be followed.
Where to add process?
“Do just enough.” Adding process to all the recurring things helps. As a manager, you may want to leave room for your team to innovate. So do leave some room for time without any process. Example from my current role is Unstructured Time. (10% time to do something of your interest). We deliberately decided to add no process to it. Similarly, the hackathons that happen are kept out of any set process.
The third P is the product. Sometimes it is also called technology for a technology company. It is the third not because it is of low importance but as per my first post, for an engineering manager, if the people and processes are taken care of, the awesome product/great results will just happen.
Nonetheless, it is very important for a leader to know the tech that her team is working on
Why knowing the product/tech?
There are a few reasons as follows
- To feel what the team is going through / talk the same language to all your stakeholders. This has multiple benefits like —
- being able to empathize with the team members in your interactions with them,
- making sure you are taking the same language as they do,
- to be able to understand what they are working on,
- the complexity of the work,
- able to recognise
2. To be able to guesstimate (or help guesstimate) if and when needed. This is a tricky one. I wouldn’t suggest doing this completely on your own. At least take the team leads to doing this exercise. You can always delegate but having your point of view will help in negotiating and prioritisation conversations
3. To be able to challenge the team to perform better over time.
4. If you are interested and if need be you can roll up the sleeves and contribute. Contribution can be in many ways, requirements gathering, designing, coding, testing or bug fixing. As simple as asking questions to help would also be great. It is important to make sure the team builds reusable components as much as possible. Avoid building “Pink Unicorns”.
How to keep ourselves latest on product and technology?
As an engineering leader, it is essential to be on top of the latest technology trends and bring in the outside best practices in technology and in processes.
Keep reading interesting blogs and articles on technology in your area. Make a list and bookmark it.
There are many good articles written on this but this in particular I like. This one has a list of great reads for engineering leaders.
A couple of closing thoughts for the product and process combined.
- Always think about up levelling the game. Think and plan for scale. Example if you have one project — have a thought on how you can handle 10 of similar size.
- Design thinking and considering big pictures/patterns. This will help you avoid to build a pink unicorn mentioned earlier.
- Make sure the team buys into it.
I wish you all a great success in creating HPTs and make life better for everyone around.
Happy new year 2021 to you and your loved ones!!!