Oftentimes, product managers wonder how technical they should be in order to be effective. One school of thought suggests that product managers should be more versed in customer and business speak and not worry so much about technical skills. Another school of thought suggests that they absolutely be technical.
There is no right answer. It depends.
Product managers do a number of things in order to launch products. Starting from ideation, discovery, validation to execution and launch. At various points in their journey, they also interact with the engineering stakeholders.
I have seen product managers with no technical skills and also many who migrate from technical roles. The real answer is the level of technical proficiency depends on the type of product (or feature area) being managed and the specific role you have.
Why is it important to have any technical skills at all?
- Better collaboration with engineering: During execution, you will be in discussions with engineering stakeholders a lot. From grooming, to data analysis, to problem solving, there are many avenues to collaborate. A good technical sense will help you have a better collaboration with them and they in turn will respect you as well. You will be able to ask better and more relevant questions. Remember, your questions should be grounded in how the product experience is impacted by technology choices. As a product manager, the actual architecture choices matter less than the user impact. So if my engineer tells me that they will choose X framework for the front end development, I will want to know the pros and cons, especially as they relate to experience, performance, security etc.
- Improved decision making: As a product manager, you will be called to make a decision based on certain constraints your engineering will come up with. All software products have constraints. That’s just the physics of software (quoting my former boss). As a product manager, you have to make decisions on which constraints can you live with. In most cases, engineering will come up with options, but will let the product manager make the final call. A good understanding of the technicalities and how they impact product experience will help you to make better decisions.
- Understand tradeoffs: Once I asked my engineering to show a total record count on top of a page that showed a list of records e.g list of customers and their details. As I search and filtered the list, the list would change but I wanted to see the total number of records returned as well. My engineering said they can do so, but it will require another database call which will slow down the page. This was a constraint based on the architecture on which the legacy app was built. As a product manager, I want the count but not at the expense of slow response. That’s the kind of tradeoff discussion that you will run into. Having an understanding of such issues will help have a better discussion and a better solution.
What are the core technical areas that a product manager should potentially know?
Let’s deep dive into what technical skills we are talking about and which are important to know about.
We will not be discussing product skills which is the primary set of skills for every product manager. We are mainly discussing the level of technical proficiency. Barring a few cases, a product manager does not explicitly need to be skilled in any technical area. So long as they are good with product skills, they will largely be able to thrive and grow their product.
Depending on your situation, a little bit of technical proficiency will definitely give you the added edge. It certainly will not harm.
Below is a list of technical topics that a product manager will run into as part of their role. Since my experience has largely been in B2B, I will stick to this domain.
Please note these are general categories and by no means a complete list.
A general caveat that I will repeat again. If your primary product is in one of these technical areas, then you have to be an expert. For example, you are a product manager for a cybersecurity company, then you have to know everything about security. Or if you are a product manager that makes databases, then you have to know about database technology and data structures. Or if your product caters to developers then you need to know about APIs in detail.
Here is a general list of technical topics that a typical B2B product manager will run into:
- Databases, Analytics and SQL
- Big Data
- Cloud Computing
- Architecture/Tech stack/ Frameworks
- Security/ Cybersecurity
- Development environment/ SDLC/CI-CD
Each topic is large enough by itself and beyond the scope of this article. Let’s start with a brief overview of each. You can look at some resources at the end of this article if you want to be familiar.
Databases, analytics, and SQL (Databases)
Common terms: Data Analytics, SQL Query, Tables, Joins, RDBMS, relational integrity, normality, cardinality, indexing
All apps have databases to store data and these databases need to be designed. Your DB modeler will do the implementation of the database model based on the requirement you put together. For example, a customer can select one product per order or multiple products per order will lead to different data model design. Your job as a product manager is to be clear in your requirements. Having an understanding of data modeling will help you understand how objects such as customer record, user record, contact record, order record, etc are related to each other. At the very least, your specifications will clearly state the business relationships between these objects. That way you are not in a situation that a data modeler assumes something that they should not have.
Once the data model is implemented, then engineering has to make sure they queries perform. You should mention the expected volumes so they can design the database and the related indexes accordingly. For example, order placed every second is a different design decision vs order placed every hour.
Databases queries are also used for reporting purposes. What kind of reports would your user want from your database? If you know upfront, then the right indexes can be created for better performance. Caveat: If you are a product manager for a database product e.g. Amazon Dynamo or Big Query or SQL Server or Oracle RDMS, then you have to be the expert on database technologies.
The other aspect about analytics is your own ability to analyze data. You may be required to analyze customer data, usage data and do cohort analysis etc. Your proficiency in SQL will be a huge advantage. You will not have to dependent on engineers to help you pull data and provide you with queries. If you can do them on your own, it gives you power. If there is one skill to learn as a B2B product manager, it would be data analysis using SQL. A basic or intermediate proficiency is sufficient.
Common terms : API Management, Public API, Private API, API Performance, API documentation, API versioning
SAAS is largely built on APIs. And now with AI services proliferating like ChatGPT, more and more APIs will be consumed in your app. Building and managing API is a fairly technical topic and I don’t think you need to know the details. But having a basic understanding of how API works, what APIs are available will certainly help.
For example, let’s say you have a field called company name in your application and you want the name to autofill as user is typing (like search in Google). Certain vendors like Clearbit have APIs that allow you do that. Your engineering may or may not know but with your knowledge about public APIs you can enhance the user experience.
Most of the time your product will be utilizing internal APIs. When I work with engineers, I look at re-usability of API across my application. For example, in my application we want to fetch the total order value of a customer to date. An API was built. Later, we were designing a mobile interface and wanted to add the same order value information on the mobile app screen. The API was already there and was re-used. No need to reinvent the wheel.
Some products are fully API based. Think of AWS or GCS or Twilio. The end user for these apps are actually developers. So if your product is targeted towards developers then your proficiency in API need to be at expert level.
Common terms : Structured, unstructured, Hadoop
Big data was a big buzzword a few years ago but is fairly mainstream. If your core product leverages Big data then a basic understanding can be helpful. Especially, if you are a platform product manager.
Common terms : Supervised, Unsupervised, Training data, Reinforced learning
As of this writing Artificial Intelligence and Machine Learning are the rage. Everyone is talking about it. If your product mandate is to add AI or Generative AI, then you need to get a good understanding of how these technologies work. Keep your eye on the user pain points and the jobs to be done. How the AI gets applied is based on your product sense.
A good understanding of how AI works will certainly help you. Especially, when it comes to understanding the training data, the inherent biases, the quality of AI output so that you can fine tune your product to become better.
Common terms: Cloud deployment, AWS, GCS, Azure, Public/Private/Hybrid cloud, Vertical and Horizontal Scaling, Containerization, Virtualization, Cloud services, Caching, Kubernetes, Serverless, Load balancers, Web servers, Application servers
All SAAS is built on the cloud. Cloud infrastructure has been maturing at a very rapid rate over the past 5-6 years. There are many deployment types from public, private, hybrid models. Engineering and Architecture teams will decide the right infrastructure or vendor for your SAAS app and how the building blocks are to be stitched together.
If you are platform product manager or you are responsible for cloud management, then you need to have expert level proficiency. Front end app product managers don’t need as much knowledge. Unless you are a product manager in a cloud infrastructure product company.
Architecture/Tech stack/ Frameworks
Common terms : HTML, CSS, JS, Bootstrap, React, Node.js, Message queues, Libraries, run time environments, Integrations with 3rd party vendors, Deliverability (for emails), Omni channel notifications
Your SAAS application is built on a number of technologies and is developed using many frameworks. Having a basic understanding should be sufficient. If you are a platform product manager, then you need to know a bit more about the tech stack as it will impact the product requirements.
You will hear a lot about dependencies. X is dependent on Y. If no Y, then no X can be built. As a product manager, you will need to include Y in your backlog to get your X.
Common terms: MFA, 2FA etc
Security is a big concern, especially from hackers. One keeps hearing about hacking of data or breaches. This is always an area of investment for all SAAS. There could be dedicated teams responsible for security. Backend and platform product managers should have a good understanding of how security is being implemented.
Development environment/ SDLC/CI-CD
Common terms: Continuous development, Automated testing, versioning, CI-CD
There is a process and chain of events that happens when a developer writes a piece of code and making it all the way to the production servers. There has been a lot of development recently in this areas as it related to automation. Platform and cloud product managers should have a good understanding of this process.
One area I recommend all product managers to be familiar with is automation testing. Manual QA takes a long time and is error prone. Automation testing is valuable and saves a lot of wastage from regression issues. Encourage your engineering to invest in test automation. It takes time to build automation and requires you as a product manager to specify which tests should be automated. For example, you know that your users do a particular job frequently and you cannot afford any breakage. Automated test that runs after every build ensures that critical functionality is never broken.
There are many other technical topics that I have not included such as Blockchain, LLM, hardware, wearables, health tech, semiconductors etc. They certainly maybe relevant to your product, so you should be aware of these.
You should also be familiar with your internal CRM systems. Almost everyone uses CRM like Salesforce to manage customer data and interactions. You should be able to use CRM to view customer information, create reports and extract data for analysis. For example, say you want a list of all customers and their ARR who signed up in the last quarter for Product X and Y. This is something your CRM should have.
So, do I need to know each of the above?
Short answer: No
Your level of proficiency will depend on the type of product or feature you manage and your level. Let’s try to organize by feature area that is in the sphere of influence of a particular product manager.
- Front End App – This product manager is managing a business user facing application. The front end is used by users in sales, marketing, finance, HR etc. The front end could be a system of record application such as CRM, system of engagement such as email marketing, or system of analysis such as dashboards, reporting or analytical tools.Based on the domain of your product, you may need additional technical proficiency. For example, if you are a product manager for marketing tools, then you should have a good understanding of email deliverability. Or if you are a product manager for reporting, then understanding of databases and performance will be important.
- Backend/ platform – This product manager is responsible for the backend parts of the application or they are responsible for the platform. They make sure that the front end requirements are translated into backend requirements for databases, servers and APIs. The platform product manager work closely with Architecture and Engineering teams
- Mobile App – The mobile product manager is building mobile interfaces as a standalone app or as an extension of the desktop app. These product managers should have a good understanding of the various mobile platforms, their limitations and capabilities.
- Cloud Management – Specifically in SAAS, there are product managers who are responsible for managing the cloud deployments, especially if your product is being offered on multiple types of deployments. This product manager is responsible for ensuring effective and efficient cloud deployments without runaway costs. (The costs incurred to manage the cloud is a direct cost and impacts contribution margin.)
- API – Many products are sold on API basis. Good examples are AWS, Twilio, GCS. The API product managers’s main user is the developer. Their end result is used by developers who then build applications on top of the APIs. API product managers absolutely need to understand the details behind the APIs being built and specifications required.
What if I am a growth product manager?
To answer this is a bit challenging as it all depends on the scope of your growth. At the very least, you should have basic analytics skill to understand data. Beyond that, even if you do not have basic skills in other technical areas, it should not hinder you from growing the business. Unless your product is one of the areas e.g. a security product.
In the table below, each technical area is evaluated for proficiency requirement for each type of product manager along the following spectrum
- Basic – Basic understanding of the technical topic that allows a good discussion with engineering
- Intermediate – The product manager has a solid understanding of the technical area and can make decisions
- Expert – Sufficient knowledge that a product manager can create a presentation by themselves.
How do I learn these technical skills?
There are millions of resources out there on Youtube, Linkedin and hundreds of technical blogs. There are many paid courses you can take to become an expert. Find one that suits your purpose.
Here are some resources that are a good starting point.