How to Work With Engineers: A Guide for Product Managers

In the dynamic environment of product development, the relationship between product managers (PMs) and engineers is crucial for the success of any project. This detailed guide aims to bridge the gap between Product Managers and engineers, offering both insights into encouraging effective collaboration and practical tools to streamline this process.

If you are a video person then do watch this 1.5 hour Masterclass on How to work with engineers as a Product Manager?

In this session, we discuss the following aspects of working with engineers as a product manager.

1. SDLC – Software Development Life Cycle

2. SCRUM, SPRINT – How most tech teams work

3. ESTIMATING Development Time.

4. Best Practices for Working with Engineers

5. Building a Relationship with Engineering Managers

6. Book Recommendations.

Understanding Technology Basics:

A PM doesn’t need to be an expert coder but must grasp the fundamentals of the project’s technology. This foundational knowledge enables meaningful dialogues about what can be realistically achieved within technological constraints, thereby streamlining decision-making processes. Early understanding of engineering constraints is crucial to avoid investing in a design that may not be feasible.

If you want to know about more basics of technology for product managers then do check this out –

To become a Technical Product Manager, do check out our Technology for Product & Business Folks 6 week intensive bootcamp

Valuing Different Problem-Solving Approaches:

Engineers and Product Managers often approach problem-solving from fundamentally different perspectives due to their unique roles and expertise. Engineers tend to view problems through a lens of system capabilities and scalability, focusing on the technical feasibility and optimization of solutions. On the other hand, Product Managers prioritize understanding users’ needs, aiming to ensure that solutions are closely aligned with customer requirements and market opportunities.

This divergence in approaches can sometimes lead to conflicts or differing viewpoints on how to address challenges. However, it’s crucial to acknowledge and value these distinct perspectives. Recognizing the importance of both the engineering viewpoint, which brings to light considerations of system design and scalability, and the product management perspective, centered on user needs and market fit, is essential for creating balanced and effective solutions.

By appreciating the responsibilities, challenges, and the art behind engineering, while also understanding the strategic vision of product management, teams can harness creativity and innovation. This synergy allows for the development of robust solutions that not only meet technical standards but also resonate deeply with users, effectively translating ideas into reality.

Crafting Clear Messages:

Clear communication is key. Utilizing diagrams, flowcharts, or user stories can translate complex requirements into tangible, understandable goals, ensuring alignment and efficiency across teams. Maintaining regular and clear communication helps ensure that designs are implemented as intended, fostering a close relationship with the engineering team.

Example 1: User Interface Redesign

  • Good Practice: For a UI redesign project, the PM used mock-ups and interactive prototypes to show the engineering team exactly what was needed. Regular brainstorming sessions were held for feedback.
  • Result: The redesign was implemented smoothly, with the final product closely matching the initial vision, enhancing user satisfaction.
  • Bad Practice: Another PM sent out a vague, text-only description of a similar UI redesign without visual aids or follow-up discussions.
  • Result: The engineering team’s output missed key elements, requiring several costly and time-consuming revisions.

Example 2: Adding a New Feature

  • Good Practice: Before adding a new chat feature, the PM presented detailed user stories and flowcharts in a kick-off meeting, clearly outlining the expected user flow and technical requirements.
  • Result: The feature was developed efficiently, aligning well with user expectations and integrating seamlessly with existing functionalities.
  • Bad Practice: A PM requested a new analytics dashboard via email, without detailing how it should work or its purpose, expecting the engineering team to fill in the blanks.
  • Result: The developed dashboard lacked essential features and required significant rework to meet actual needs, delaying the project

Regular Check-Ins:

Frequent meetings provide a platform for airing challenges, brainstorming, and dynamically adjusting strategies to meet evolving project demands. Proximity and immediate collaboration during the implementation phase can significantly streamline the resolution of issues.

Example 1: Feature Development Sprint

  • Good Practice: The PM scheduled weekly check-ins with the development team during a sprint to create a new feature. These meetings allowed the team to discuss progress, identify blockers, and brainstorm solutions together.
  • Result: Issues were addressed quickly, keeping the project on schedule. The feature met user needs effectively upon launch.

Example 3: Long-term Product Roadmap Planning

  • Bad Practice: The PM decided against regular check-ins during a long-term roadmap planning phase, preferring to rely on email updates.
  • Result: Lack of immediate feedback and collaborative problem-solving led to misaligned priorities and a roadmap that did not fully account for technical feasibility or market trends.

Leveraging Collaboration Tools:

Product Managers and Engineers should leverage collaboration tools to enhance communication, streamline workflows, and ensure everyone is aligned on goals and progress. These tools facilitate real-time updates, allow for efficient management of tasks and deadlines, and provide a central repository for project documentation. By improving transparency and accessibility of information, collaboration tools help teams to quickly address challenges, make informed decisions, and drive projects forward effectively, ultimately leading to more successful outcomes.

Project Management Tools: 

Project management tools are software applications designed to assist individuals, teams, and organizations in organizing, tracking, and managing their projects efficiently. These tools facilitate planning, scheduling, resource allocation, and communication among team members, thereby enhancing collaboration and productivity. 

Problem: A team is struggling to keep track of their tasks, deadlines, and project milestones. As a result, deadlines are missed, and the project is falling behind schedule.

Solution: The Product Manager decides to implement a project management tool like Jira. They organize tasks into sprints, assign responsibilities, and set deadlines, making it easier for the team to visualize their workload and progress.

Benefit: This organization leads to improved time management, clearer communication of expectations, and timely completion of tasks. The team becomes more aligned and can effectively track and meet project milestones.

3 types of PM tools, and 100% free resources to learn them

Code Collaboration and the Role of Git/GitHub: 

GitHub is a cloud-based platform where you can store, share, and work together with others to write code

Problem: The development team frequently encounters code conflicts and overwrites each other’s work, leading to delays and frustration.

Solution: The Product Manager encourages the team to use Git with GitHub for version control and collaboration. They introduce branching strategies and pull requests to manage changes and facilitate code reviews.

Benefit: This approach prevents code conflicts, ensures high-quality code through reviews, and keeps the master branch stable. The team works more cohesively and efficiently, with a clear history of changes and contributions.

Understanding CI/CD: 

In software engineering, CI/CD or CICD is the combined practice of continuous integration and continuous delivery or, less often, continuous deployment.

Problem: The software release process is manual, error-prone, and time-consuming, causing delays in feature deployment and increased risk of bugs in production.

Solution: The Product Manager integrates CI/CD tools like Jenkins into the development process. This automates the build, test, and deployment phases, ensuring that new code changes are seamlessly integrated and deployed.

Benefit: Automation significantly reduces the risk of human error, speeds up the release cycle, and ensures a stable and reliable deployment process. The team can deliver features faster and with greater confidence.

For non-technical Product Managers, mastering the intricacies of Git/GitHub and understanding CI/CD processes may not be strictly necessary. However, gaining a basic familiarity with these tools and concepts can significantly enhance collaboration with engineering teams.

Real-Time Communication: 

Problem: Miscommunications and delays in responses are causing project delays. Team members are often unaware of updates, leading to repeated work and inefficiencies.

Solution: The Product Manager introduces a real-time communication platform like Slack for the team. They set up project-specific channels, integrate notifications from other tools, and encourage prompt updates and discussions.

Benefit: This leads to immediate problem-solving, keeps everyone updated on the project status, and fosters a culture of open communication. The team can quickly address challenges and stay aligned on goals and progress, enhancing overall productivity.

Encouraging Knowledge Sharing

Encouraging knowledge sharing between Product Managers and Engineers is crucial for building a unified team that can navigate challenges effectively. It ensures everyone has access to the information needed to make informed decisions, enhances the onboarding of new team members, and fosters an environment of continuous learning and improvement. Moreover, recognizing achievements and supporting personal growth contribute to a culture of respect and motivation, leading to innovative solutions and a strong sense of camaraderie. This collaborative approach not only boosts team morale but also drives the successful execution of projects.

Documentation: 

Tools like Confluence or Notion should be leveraged for creating a centralized repository of project-related documents, technical guides, and updates. This fosters an environment where information is readily available, facilitating onboarding and cross-functional understanding.

Celebrating Achievements: 

Recognizing the engineering team’s milestones and efforts publicly cultivates a culture of respect and appreciation, motivating the team and highlighting the value of their technical contributions.

Supporting Personal Growth: 

Providing opportunities for engineers to expand their skills, take on challenging projects, or participate in cross-functional teams not only aids in their personal development but also enriches the team’s collective skill set.

Effective Resolution: 

When conflicts arise, focus on the shared vision and product goals. Embrace differing viewpoints as catalysts for innovation, working towards compromises that serve the project’s best interests.

Final Thoughts

Mastering collaboration between PMs and engineers is a blend of strategic empathy, clear communication, and the judicious use of tools. 

If you want to master the art of collaboration between PMs and engineers then do watch this masterclass 

By understanding and valuing each other’s roles, employing technology to bridge communication gaps, and nurturing a culture of mutual respect and continuous improvement, PMs and engineers can create a partnership that drives product success.

Remember, the most impactful products are the result of teams that seamlessly integrate diverse talents, celebrating each contribution while continually pushing the boundaries of what’s possible.