“You are kind of the mini-CEO – with all of the responsibility…but without any of the authority.”
-Josh Elman – Partner at Greylock, former Product Manager at Twitter, Facebook, and LinkedIn
Any “soft” skills or “hard” skills you need as a Product Manager all boil down to one core skill: Empathy.
I worked for 4 months with a fellow Product Manager before ever realizing he used to be a developer. He never mentioned anything technical, at all! What he did do was build by far the best relationships of trust with engineers that I have seen. He “got” them. In return, they respected him, gave him slack, and always put their all into the work they did with him.
“Software is a team sport”
I have been the least technical person on a very technical team and the most technical person on a fairly non-technical team. It all depends on how you work with your teammates’ skills.
Being technical can have its pitfalls:
“When you are an engineer going into product [management] and your engineer says to you, ‘Oh, that’s really hard to do.’ Your first instinct is, ‘Oh? Not for me…I could do that in an afternoon.’ I had to get over that really fast. That is not a productive outcome. Software is a team sport.”
Adam Nash – CEO of Wealthfront and a former Product Manager and Engineer
Now that the soft stuff is out of the way, let’s get down to it.
As always, a good Product person brings it back to outcomes, and Lulu Cheng – Product Manager at Pinterest – lists the goals to consider when deciding which technical skills a PM should focus on:
- “Trace a user issue (or set of issues) back to the underlying problem.”
- “Estimate how long it will take to build A vs. B.”
- “Anticipate implementation challenges with a particular proposal.”
- “Brainstorm potential solutions to technical problems.”
- “Identify opportunities that arise from new technologies.”
The Top 5 Technical Skills Every Product Manager Needs to Know:
1. Data Collection, Extraction and Analysis
- You need to understand what your users are doing to make good product decisions.
- If you do not understand how your data is collected, you cannot determine its integrity.
What to learn
SQL. I hear this touted as a “must-have”- though I have worked with some great PMs who don’t know SQL, they end up asking the SQL-literate for data.
How to learn it
I have personally used the interactive tutorials at W3Schools, and Codecademy’s Learn SQL and SQL: Analyzing Business Metrics interactive courses. After that, ask your engineer to set you up with read-only SQL access to try product questions.
Try creating automated query scripts and tasks in Python.
3rd-Party Analytics Tools
(Mixpanel, Amplitude, Looker, Tableau, Google Analytics, etc.)
There are two key areas every Product Manager should understand regarding analytics tools:
- Understand how each of these tools can help you answer product questions.
- Understand how the underlying tracking is done and how it is interpreted.
As my fellow Product Manager at HourlyNerd, David Connolly, used to quip: “I think we should run an analysis on how much of our analytics we actually trust.”
Amplitude funnel tracking alone is nice…
How to learn it:
Dive into documentation. There are usually simplified tutorials and videos walking you through the main parts, but peek into actual code implementation. Also, ask Support and Sales.
2. Excel (Yes. Really.)
You can get a lot out of SQL and Analytics Dashboards, but a good Pivot Table and even some VBA could make data a lot more flexible, visual, and easier to interpret.
What to learn
Pivot tables are easy to learn and help manipulate complicated data sets. They essentially pump out a dynamic filterable table or chart.
How to learn it: Honestly, Youtube videos and Microsoft’s Support Site. You can even combine your skills and learn how to Create a Pivot Table Using SQL
VBA is the coding language for Excel. It lets you build “Macros” to automate anything in Excel. Pull online data, automate data matching, etc. Helps you with “Don’t repeat yourself.”
3 . Experimentation (A/B Testing)
Product intuition is great, but actually testing ideas with users is essential. Get buy-in or setup experimentation infrastructure for non-technical iteration on products.
What to learn
Need a non-developer solution?
- Unbounce (landing pages – no development needed).
- Optimizely (Change copy/design on your own site without pushing code – can start with a single code snippet).
Need an internal A/B test?
- Determine how to design an experiment and hypothesis.
- Discuss with your developers what to track in your DB and how to divide up your samples.
How to learn it
First: What is A/B, Split, and Multivariate testing?
Then: What is statistical significance (basics)?
(Hint: Use Optimizely’s A/B test sample size calculator)
Finally: How to track an A/B test’s effect on your bottom line using your new Analytics and A/B testing skills
“How can I A/B test if I haven’t built the new feature yet?”
That brings us to #4…
4. Interactive Prototyping
Engineering time is too valuable to be wasted on iterations of products that have not been validated at all.
What to learn
Non-technical: There are plenty of interactive prototyping tools out there for the non-technical person.
- Invision lets you upload mockups from design to make a clickable interactive prototype.
- Proto.io lets you create interactive mobile app prototypes with drag and drop components.
- UserTesting and similar sites let you send in these prototypes and get videos of users answering questions about the site. You should run interviews yourself, too, of course.
Technical: That brings us to #5…
5. Learn *about* Code
“You need to understand what your engineers are saying, even if you have no opinion on the results of the conversations.”
This is hotly contested, but in the end, the necessity for this really depends on two things:
1. “What does your team value?”
Remember: Not everyone on a team needs to have the same skills. You can help each other.
You will want to learn enough to communicate technical details to non-technical stakeholders.
2. “What do your users value?”
Remember: As a Product Manager, you are the voice of the user.
Are your users technical? Some technical understanding is likely necessary to “get” your users.
What to learn
Nowadays, these tools are basic. This simplifies building prototypes, implementing 3rd party tools, or tweaking client-side A/B tests.
How to learn?
Countless courses are available online, but I suggest just starting with W3Schools and Codecademy or going to a weekend bootcamp.
Your Company’s Technology Stack
Understand what languages, frameworks, and architecture your company uses and why.
As Cliff Giley from The Clever PM puts it:
“…Microsoft C#? …Java? …relational…or non-relational databases? Do you know the difference…? A large part of your job as a PM consists of talking with engineers and discussing and assessing options to solve problems – you need to understand what they’re saying, even if you have no opinion on the results of the conversations.”
How to learn
Ask an engineer about the stack and why it was used. Also, try to build a small app in your stack with one of the countless MOOCs or bootcamps to get a basic feel for what your team uses.
If you learn to deal with data from collection to presentation, learn how to experiment, learn how to demonstrate ideas through a prototype, and learn how to speak your developers’ language, you will become a more valuable PM to all of your teams, and – most importantly – to your users.
Remember: “Software is a team sport.”