How lack of project structure destroys strong driven teams
Some of this felt trivial to write, however, I've fallen victim to these mistakes so I wanted to share my experiences and insights on avoiding these pitfalls.
In this post, I'll focus specifically on engineering teams and share strategies for keeping them aligned on project goals, leading to delivering value in a timely manner.
Teams that struggle with proper planning, alignment on project goals, establishing ownership of tasks, building "super projects" and having a clear road map will experience burnout, scope creep, and lack of trust among one another. It can become toxic. Folks who worked together for years can feel pinned against each other.
These missteps ultimately lead to “super projects”, projects that are all inclusive or all or nothing that escalate without clear boundaries, ultimately failing to deliver on time and leaving both the team and stakeholders frustrated.
Over time these mistakes detract the teams culture.
Project inception & requirements
Projects can start in myriad of ways, but one thing remains constant the team has identified a need for a feature or set of features that help it's users.
Whether building off an existing feature or conducting user research to establish new requirements, the team must agree on a clear plan for delivering on these goals.
It's important in this phase to make sure everyone is aligned on what the business goals are and what the feature values are to achieve these goals.
Start keeping a record of requirements. It's easy for people to feel on the same page at first but without a written list that everyone has agreed to this is where you you can lose alignment.
Project planning
With the list you've compiled, you need to start planning. These features should directly reflect the goals identified in the project inception phase. This enables the team to evaluate each item and verify that it aligns with user needs. Comb and sort your list of features based on value and priority.
Breaking down tasks into smaller tasks and subtasks
A key part of effective planning is breaking the project down into smaller tasks or subtasks, setting clear expectations from the start. This can seem trivial but is critical to the success of any project.
We should carefully assign effort and value to each task to create a realistic and transparent project road map establishing a clear vision of what the team wants to build and an understanding of the work required to achieve it. The value and effort assignment can also help us avoid snacking and allow us to decide what tasks should be done for our v0 or MVP verses what might be best to come later.
It is crucial to create these lists, especially of effort and value as we want leadership to be able to understand what it takes for us to solve the problem and be able to accurately defend the time it will take to create as well as scope that timing more precisely.
Your goal is always to avoid "super projects", large projects that are actually epics but can and should be broken down into smaller, more manageable chunks.
Accountability & ownership
We need to assign ownership to tasks and subtasks, grouping them into smaller chunks. If you're on a team of senior engineers each person should own a chunk. This allows that person to be responsible for the final calls on decision making for that part of the project. It makes someone accountable for the task at hand and allows you to be more successful disagreeing and committing to the owner of that task. This ownership creates a sense of trust between team members and assigns value to their worth as an active member of the team.
If no one has ownership of a task or feature, this is where bikeshedding tends to occur. Trust in team members will be lost.
A good method is to assign ownership is to use the RACI principles.
Team rituals
Sometimes you have large projects and you want to skip your team rituals because you want more heads down time, if your team finds itself in this situation your team has lost the plot and did not plan the project effectively.
Team ritual time is where the team grows together as a unit especially for remote teams. It's important to maintain team culture and bonding experiences. You can't build team empathy without these ritutals. If you lose your team rituals you have lost your way.
Being reactive
This itself could be a blog post. The team has to believe in what they're building and avoid pivoting to another initiatives unless the value add clearly outweighs the current initiative. Being reactive is typically a toxic trait and again, copying something from a competitor can often be seen as "snacking".
Following these steps will serve as a guide to keeping your team on track and aligned.