“Do I need to know how to code?” is probably one of the most common questions aspiring product managers ask. People wonder how technical they need to be to crack their next PM interview.
Alas, even in the industry itself, there’s no consensus. One camp believes PMs just need to empathize with users and don’t need technical aptitude. Others believe a PM without tech skills is like a construction manager who doesn’t know how to build a house.
Moreover, different settings require different skill sets. This has led to the emergence of a somewhat distinctive role: technical product manager (TPM). In this case, it should be self-explanatory — yes, you need to have strong technical skills to be considered a technical product manager.
But what for those aiming for a more general PM role? Is it time to sign up for a bootcamp? Let’s find out.
Table of contents
- Benefits of having technical skills as a product manager
- Technical skills product managers should have
- To be technical or not to be technical…
Benefits of having technical skills as a product manager
First of all, having technical skills can never hurt. Some might argue that a lack of technical acumen can be advantageous because a PM needn’t get bogged down in nitty-gritty details — they have bigger-picture concerns to focus on.
I’d say that as long as you have some common sense and don’t try to be smarter than your dev team, you can only benefit from gaining some tech knowledge.
After all, product managers operate at the intersection of business, user experience, and technology. Not understanding one of those elements would make being a product manager quite difficult.
Some benefits of having a decent technical understanding include:
- A deeper understanding of the product. You’ll be able to better understand all the strong and weak points of your product, as well as what’s possible and what’s not
- Better understanding of tradeoffs. You’ll be able to make better decisions if you understand long-term technical consequences
- Stronger bond with the team. Building a good relationship with the team is hard if you can’t understand their struggles and problems. The ability to truly empathize with the team goes a long way
- Improved communication skills. Members of the team will be more likely to discuss their problems, challenges, and objections with you if they know you’ll be able to understand them
Technical skills product managers should have
Let’s get it straight: it’s rare for a PM to have technical skills on a level similar to a developer — unless they were once a developer themselves. Nor should they — after all, they were hired for different reasons.
That said, there are a few technical concepts worth understanding if you’re a product manager:
- Software development lifecycle (SDLC)
- Programming basics
- Git workflow
- DevOps/cloud basics
- Quality assurance
Software development life cycle (SDLC)
The software development lifecycle (SDLC) is the most important technical concept for product managers to learn. You must understand how the software is actually made; you can’t treat the development process as some sort of a black box where you give the ticket to the team and get back a done feature.
Understanding the SDLC will help you better track progress and understand the current state. It’ll also allow you to work with the team to adjust the lifecycle to strike a perfect tradeoff between expected quality and speed.
Make sure you understand what happens with each task step by step. You should have a basic understanding of:
- Unit testing
- Code review
- Git workflow
- Quality assurance
- Bug fixing
- Test automation
- Dev/staging/production environments
To learn more, take this one-hour course on the phases of the software development lifecycle from Udemy.
There are some programming concepts you must understand as a product manager. These include:
- Difference between frontend and backend
- How APIs work
- What are services/microservices
- What’s a programming language? How do they differ?
- What’s a library? What’s a framework? What’s an SDK?
- Unit testing
Without understanding programming basics, it’ll be almost impossible to understand the developers’ work, let alone have any meaningful conversations with them.
When it comes to coding itself, knowing how to code helps, but you don’t need it. If you enjoy programming, by all means, take it up as a hobby — it will pay off immensely. But don’t force yourself to do so.
As a PM, other skills and competencies have a higher impact on your performance and career than your ability to code.
If you want to hone your programming skills without plunging into the deep end, check out this “pre-programming” course from Udemy.
Ever wonder how it’s possible for hundreds of people to work on a single product without interrupting each other?
It’s all thanks to Git, a distributed version control system. Git allows developers to create endless “copies” of the main codebase, work on those copies, and then combine these copies with the original code or even other copies.
Learning some Git basics will help you understand:
- Day-to-day developer jargon, such as “branch,” “merge,” “commit,” etc.
- How versions are created and why developers recommend version 3.4.10 instead of 3.5 or 3.4.1, for example
- How things like “rollback” work
- Common software development challenges, such as the problem of maintaining too many feature branches
Atlassian has a robust collection of Git tutorials if you’d like to learn more about workflow management using this powerful tool.
SQL stands for Structured Query Language, although I’ve yet to hear someone use the full name. In simple terms, SQL allows you to talk with a database.
While it can be used for various purposes — such as adding, removing, and modifying entries in the database — PMs mostly use SQL to analyze data.
Understanding SQL allows you to easily filter through the whole database, pull the data that meets your specific criteria, and analyze it. It’s a fundamental skill for data-driven product management.
Although there are various analytics tools available, knowing SQL is still beneficial because:
- Sometimes it is simply easier to query a database than to struggle with an analytics tool
- SQL helps to configure these analytics tools
- Tools have their limitations
Looking to brush up on your SQL skills? Try this complete SQL bootcamp from Udemy. Or, if you’re just beginning your SQL journey, this introductory course from W3Schools is a great place to start for PMs.
Understanding DevOps — and, specifically, cloud — helps you see the bigger picture behind the software.
In the past, we used to build and launch big, monolithic products. Everything that was needed was coded into one big chunk with software.
Modern software is getting more and more distributed. There are dozens, sometimes more than a hundred separate services that cooperate to achieve an outcome.
Understanding the basics of modern software architecture will not only increase your appreciation of the software, it’ll also greatly improve your day-to-day fluency.
Phrases such as the following will no longer sound like a foreign language:
- “Azure is down”
- “Our instances don’t scale fast enough”
- “We can’t connect to the API gateway”
- “Loadbalancer should solve that”
- “We need DB replicas”
- “We’d like to use ElasticSearch. We estimate it’s going to cost $3000/mo, WDYT?”
- “We can’t release. The pipeline is down”
If you want to become more proficient in the area of cloud/DevOps, Amazon has you covered. Check out its cloud practitioner certification program.
Quality assurance (QA)
Quality assurance (QA) is a more sophisticated practice than you might expect. After all, QAs aren’t paid $60–80K per year just to randomly click through the app and hunt for bugs.
The QA process often starts with preparing a test plan, noting very specific test cases, building test scenarios based on that, and running them in an organized, almost scientific fashion.
Not to mention test automation, which involves programming bots to perform and report on tests for us.
Learning the language of QA will help you understand how the quality standards are set and kept in the product you are managing and will allow you to participate in these conversations.
The International Software Testing Qualifications Board (ISTQB) offers a great QA tester certification program. Udemy also has a software testing bootcamp that covers QA testing.
To be technical or not to be technical…
You need to be technical, period. There, I said it.
While you don’t have to be a programmer or software architect, you need more technical expertise than just the basics. You can’t just take a five-hour course and call it a day.
Although there’s a point of diminishing returns when it comes to technical knowledge for product managers, it’s farther away than you might think.
Subscribe to our product management newsletter
Get articles like this to your inbox
In the end, how can you work at the intersection of business, technology, and user experience if you understand only the bare minimum about one of those key elements?
Featured image source: IconScout
LogRocket generates product insights that lead to meaningful action
LogRocket identifies friction points in the user experience so you can make informed decisions about product and design changes that must happen to hit your goals.
With LogRocket, you can understand the scope of the issues affecting your product and prioritize the changes that need to be made. LogRocket simplifies workflows by allowing Engineering and Design teams to work from the same data as you, eliminating any confusion about what needs to be done.
Get your teams on the same page — try LogRocket today.