As Software Engineering Managers Through Leadership, our full-time job at a high level is learning about and understanding every single member of our team: their strength, weaknesses, and personality. And then coach them to improve their weaknesses, help them leverage their strengths, and shield them from the unnecessary stress from upstream politics.
This approach will pave the way for each engineer to deliver their best work, resulting in a robust, synergistic, fulfilled, and productive engineering team.
Engineering teams don’t work in a vacuum, though. One of the other teams they interact with the most is the Product Management team. The relationship quality between these two teams and their interaction can significantly affect how well the engineering team performs.
Think about other relationships, like a good marriage, a coach and their team, or a doctor and their patients. It’s the same with Product Managers and Engineering teams:
These relationships work well when both sides understand and respect each other's roles.
Let’s delve deeper into this relationship dynamic since I don’t know how to write a short intro 🙂. Relationships are also successful when:
- Each individual/group commits 100% rather than a 50/50 split.
- There is trust between each other.
- People in the relationship can negotiate with each other.
All three points are essential and equally hard to achieve. For example, finding someone you can negotiate with is challenging. It requires individuals willing to communicate their thoughts and desires honestly. It also demands the humility to appreciate others’ perspectives and the confidence to stand by yours.
A study by Google called Project Aristotle talks about what makes a team effective. From my own experience, I agree with what they found: “A team’s effectiveness depends on how the team works together.” I wrote at length about this topic here.
The tips ahead try to do more than streamline project timelines. They attempt to unlock a better Product and Engineering collaboration by adopting a culture of respect, open conversations, and ownership:
TIP 1: Cultivate a Partnership
Building a trusting, robust, and respectful partnership with the Engineering team is the first step towards successful collaboration.
Here’s how we can achieve that:
- This partnership is about making things together. Protect, promote, and respect the engineering team like it’s your team. Give them the credit when things go well, take part of the blame when things go wrong. Have their back, and they’ll have yours.
- Transparent, honest, and regular communication is crucial. Connecting with someone is hard if you’re not being fully truthful. Don’t fear being fully honest, even in this world of political correctness
One of the classic communication breakdowns is committing the team to deadlines without their knowledge and agreement. Or not being open to feedback and suggestions on a feature request.
- Practicing common relationship values like listening, validating, caring, empathizing, sacrificing, and respecting can go a long way in nurturing this partnership.
- Embedding yourself with the team by joining their routines can build trust and enhance collaboration: Attend stand-ups, tech check-ins, demos, and team-building sessions. Invite them to your meetings, roadmap planning, and outings. Building trust requires consistency, time, and effort.
- Extreme ownership: Own the outcome along with the engineering team. Did you miss a deadline? The easiest thing to do is to blame the engineering team. But if you adopt the concepts of ownership and have a partnership relationship with the engineering team, and you understand them and trust them and vice versa, you own the fact that you missed the deadline along with them. And the more this happens, the fewer deadlines you miss.
Tip 2: Understand Your Engineering Team’s Identity
This advice applies to Product and Engineering Managers equally.
Like optimizing workouts by understanding muscle fibers, effective collaboration comes from understanding your engineering team’s unique identity.
In workouts, aligning efforts with muscle fiber directions enhances results. Similarly, aligning with your engineering team’s unique identity can optimize collaboration. Here’s how:
- Individual Uniqueness: Every engineer is unique. To tailor your approach, get to know their skills, interests, and work preferences.
- Team Dynamics: Understand the team’s collective identity, including communication styles, decision-making processes, and conflict-resolution mechanisms. Learn the team’s pace to set realistic timelines and expectations.
- Needs and Aspirations: Discover what motivates the team and address these needs to enhance collaboration.
- Feedback Channels: Establish open channels for feedback to foster a culture of trust and continuous improvement.
By understanding your engineering team’s identity, you align your strategies with their natural ‘fiber,’ promoting smoother collaboration and better project outcomes.
Tip 3: Request, Don’t Dictate
Encourage problem-solving by requesting outcomes rather than dictating methods.
Only tell engineers how to do things if help is requested or necessary.
People, especially engineers, love solving problems and being challenged. Include them in decision-making, and they’ll be more motivated to deliver.
Tip 4: Present a Thoughtful Roadmap
A well-thought-out roadmap aligns the team with higher organizational goals, making the work meaningful.
Roadmaps should connect to a larger company’s purpose and strategy, which helps grow and align the engineering team’s careers and purpose to the company’s strategy.
Work with the Engineering Manager to allocate room for innovation and address tech debt (Engineers LOVE those tasks!), ensuring the roadmap is exciting and fulfilling for the team while bringing value to the customers and company.
Tip 5: Product Development Approaches
Being open to discussing and experimenting with different product development approaches can lead to better outcomes. Based on skills and availability, the engineering team can suggest the best approach to take for a specific project.
- Some projects fit the approach of a quick and fast Proof of Concept. Release and fail fast.
- Other projects require thoroughly researching the idea with stakeholders and real customers before writing any code.
Sometimes, the customer is the real genius when deciding what constitutes a successful feature.
Being open to different approaches can yield amazing results.
Tip 6: Be Decisive
Making decisions when needed, even if they’re not perfect, keeps the momentum going.
Have a bias towards action to unblock the engineering team. It’s better to start with something and improve later rather than wait for the perfect solution.
Tip 7: Embrace a Founder’s Mindset
This tip might be my favorite advice to any Product manager out there.
Imagine you’re the founder of the product you’re managing, not the company you’re working for. When you step into the shoes of a founder, you think and act differently. You become more invested, more critical, and more innovative.
Here are some actionable steps a founder would take to improve their product:
- Communication and Continuous Improvement:
- Encourage an environment of constant feedback from both customers and team members.
- Regularly use and test the product to identify areas of improvement.
- Iterate on product features based on user feedback and data analytics.
- Communication with the engineering team:
- Foster a culture where engineers feel comfortable sharing ideas and feedback, leading to more innovative solutions. Make yourself available to the engineering team.
- Share the bigger picture with them and how their contributions align with the overall vision of the product.
- Recognize and celebrate the team’s achievements, and learn from failures together.
- Challenge the engineering team to think creatively and push the boundaries while respecting their expertise and opinions. Allow them to challenge your product requirements and roadmap.
- Market Understanding:
- Stay updated on market trends, competitors, and emerging technologies, and adjust your product roadmap based on market dynamics to stay competitive.
- Understand the cost impacting your product and work on pricing strategies to ensure profitability while delivering value.
- Documentation and Training:
- Help improve documentation to ensure it’s comprehensive and user-friendly and organize training sessions for users and team members to better utilize the product.
- Marketing and Promotion:
- Work closely with the marketing team to develop effective promotion strategies.
- Community Building:
- Foster a community around your product for user support, feedback, and advocacy.
- Engage in forums, social media, and other platforms to build a loyal user base.
- Long-term Vision:
- Ensure that every feature or update aligns with the long-term strategic goals of the product.
The quality of the Product and Engineering collaboration and relationship is a significant factor in the quality of the delivered products.
Here are the key takeaways:
- Build a strong partnership based on open communication, trust and mutual respect.
- Understand the unique identity of your engineering team.
- Encourage problem-solving by requesting outcomes, not dictating methods.
- Present a well-thought-out roadmap that aligns with organizational goals.
- Explore Various Development Approaches.
- Be decisive to keep the momentum going.
- Adopt a founder’s mindset by embracing the broader responsibilities and proactive attitude of a founder to drive product success and enrich team interaction.
Thank you so much for reading!