Skills to Make Working With Engineers Easier "Product people - Product managers, product designers, UX designers, UX researchers, Business analysts, developers, makers & entrepreneurs May 05 2020 True hard skills, product management, Product Management Skills, programming skills, software engineering, Mind the Product Mind the Product Ltd 928 Product Management 3.712

Skills to Make Working With Engineers Easier

BY ON

I believe that product managers should take the time to discuss new product hypotheses and planned features with the engineers they work with. It helps them to be able to plan a project roadmap as precisely as possible. I’ve also found that there are a number of hard skills which product managers can learn which can benefit their product skills.

I came into product management after a career as a physicist and a hardware engineer. I now work at Russian multinational Yandex to develop digital products and services alongside engineers and other product people. I work with back-end developers and I find we can implement new product features more easily if I can predict and plan with programmers those technical features which our users will never see.

Pros and Cons of Working With Engineering

We have two main goals:

  1. To keep the digital service evolving by bringing out new product features for the customer
  2. To make the service as reliable as possible so that the user experience is smooth and enjoyable

This means that our feature backlog contains both product and technical tasks. Some technical tasks may be solved when product tasks are implemented, but this means that the feature may be delivered much later than the business expected.

How can this be rectified? I try to see the technical aspects of any feature and use them for scoring, such as E (Ease) in ICE scoring model. Of course, it’s impossible to foresee all potential technical problems so I also discuss all new product ideas with my engineering colleagues. They help me to modify the original ideas to make them simpler and more efficient. We find that when we build a new backlog and figure out our deadlines, our combined estimates are usually much closer to reality than our separate technical and project estimates.

But I’ve found that it pays not to be too involved! I think digging deep into the technical parts of all the new features can shift your product perspective. You need to be involved just enough to see in advance which technical teams and services will be involved in the product implementations, so you can estimate deadlines closely enough.

How I Plan the Backlog

In my experience, some hard digital skills can help you and your teams to implement new product features and services faster and more efficiently. Saying that, I prefer to first plan and create an MVP and then run it for a while to see how the customer and the business interact with it. I can then polish the service depending on all new requirements and observations. I find it saves a lot of time for programmers which they can use on other features or on making the service more reliable. But as the product manager, it means that I need to maintain the service for some time, so I need to know some basic programming.

Image: Shutterstock

What to Learn

SQL

I find that I need to be able to work with collected data and make some quick data-driven decisions. I can use SQL to prove my point, see how people use our features, and so score new ideas.

APIs and working with Terminal

Most of our digital services are based on APIs, where some part of the service asks another part to execute a specific code with provided data and get a result. You can play with APIs and estimate feature performance. I find that usually new ideas emerge during these tests. I suggest checking how data transfer protocols (like http) work, what POST and GET requests are, and how to use curl in your terminal.

Python, Jupyter Notebook and Basic Packages to Work With Data

Simple manipulation with data can save you time. You can work with app reviews, and plot essential data. I suggest installing Anaconda, Python3, and playing a bit with lessons in Python programming and data visualizations. I found useful packages to be Pandas (playing with tables), NumPy (manipulating data), and Matplotlib (plotting data).

Instruments for Data Visualization

I find it’s super useful to control the health of your service. How many people are online compared to a week ago? Has revenue changed today compared to yesterday? How many negative reviews have you received today in the App Store?  There are many more questions which may be specific to your service. You can plot all interesting product details on the dashboards and spot the problem even before some technical alerts will go off. There are many tools to plot dashboards, like Splunk or Grafana. Just check which is mostly used by your engineers and try to use it for your metrics.

Basic Website Creation Packages Such as Flask

Flask is a Python package that helps you to build simple websites. There are lots of tutorials on YouTube you can follow to build some sample websites. I’ve used it to help me understand basic interactions between the front-end and back-end, and later to build simple interfaces to check how the MVP performs.

Tips for Product Managers

  1. If you are a product manager, try to spend time with engineers. Your colleagues have a lot of insights into the product.
  2. While planning and scoring product tasks, think about technical complications. This will make your deadlines more realistic.
  3. Research which instruments and tools are used within your team or company and spend some time to research them at a basic level. It will help you save time when you want to check logs, plot data or request an API.