Member-only story
Leadership and Software Delivery in Engineering Teams
The product department should act as a service organization that provides feedback and information to programmers without managing their work.
Programmers should have the final say in deciding which features to build.
Communicate the project’s status to stakeholders, identify and manage risks, delegate tasks to the team, and encourage them to ship the product.
Along the way, we need to motivate the team, ensure the quality and reliability of the shipped product, and delegate tasks to the team and upwards.
Other team members can suggest changes, which the leader can accept or reject based on their quality and usefulness. As an engineering leader, it can be challenging to balance the competing priorities of maintaining smooth communication and following the chain of command while also trying to foster a sense of trust and understanding with the team.
On the one hand, it’s important to take calculated risks and be mindful of the hierarchy within the organization. This inner conflict can be daunting, but it drives the manager to become a more effective leader and advocate for their team.
Rather than micromanaging, managers should empower their team members to build the product faster and better by allowing them to make decisions.