API product management is a new role both start ups and enterprises alike are looking to fill in order to build and manage a new API platform. How do you identify and hire rock-stars?
Given APIs are very developer-centric, you should not just aim to find the best PMs out there, but identify those passionate about APIs and helping developers. In no particular order, here is our list of API PM interview questions:
1. What’s your favorite developer onboarding? Why is it your favorite?
A good product manager has a good eye for picking up on small design decisions added to popular API products and devtools and also the reason why they were added. Onboarding is one of the most important flows for any API product since many times, no value is received by the user until the API is integrated. Push the candidate on why a particular product’s onboarding flow is successful and what improvements would you make to it.
2. If you need to choose a single north star metric, what would it be for an API product?
An experienced API product manager may have seen the consequences of aligning the product org on top of the funnel metrics like page views and sign ups without considering product engagement and retention. Great north star metrics for an API product could be weekly active tokens or time to first hello world.
3. How would you prioritize your feature road map?
A bad answer would be simply following what the sales organization says is important. Due to misalignments, sales goals can be too short-term relative to the product vision. Look for a candidate who takes a research oriented approach leveraging multiple inputs such as market trends, both qualitative and quantitative feedback from prospects and existing customers, current sales priorities, and bug squashing.
4. How do you handle API feature deprecation?
Unlike a consumer application, API products require careful planning when breaking any functionality. Almost always, the best answer is to not introduce any breaking changes and never remove a field. For example, your API response has a single JSON field called name, and you wanted to split it up into first_name, last_name, and username. Then, the the correct way would be to add the new fields while maintaining the old field going forward.
There are rare situations such as fixing security vulnerabilities or sunsetting an entire product where breaking changes are required. You should follow up with the candidate on how to handle such scenarios. This may include sending personalized emails to developers who accessed the API with specific details on which version they were using and when they last accessed the deprecated API. Other strategies include brownouts where functionality is turned off for short durations during off hours such as 1pm on a Sunday.
5. Why is API versioning important? How do you version an API?
Without versioning, any change can be considered a breaking change and breaks the idea of working on a common contract. Look for PMs that have strong opinions on how to version and the differences between URL based versioning vs. leveraging HTTP headers. They should also be open to other ideas since versioning is very opinionated. The PM should be familiar with the benefits of SemVer and ways to communicate both non-breaking changes vs a complete overhaul of the API.
6. Tell me about time when you handled a major bug our outage?
This is always a good question since the PM can be at the front lines of a major issue and must act rationally and keep communication lines open. How did the PM let customers know of the incident? Did they only let enterprise customers know without caring about those on a free trial? Did they just send a generic email blast or did they leverage data to target those affected by the API bug or outage and how each customer was affected.
7. How would you segment a developer community?
There are many ways to segment a developer community for marketing, cohort analysis, and other analytics. A key thing to look for is developer-centric attributes beyond typical company demographics like company size. An API product manager should not only be familiar with common programming languages, but also how they are used in business. For example, Java and .NET are popular in more traditional enterprises whereas Node.js is popular with the React and Single Page App community.
8. What are some best practices for creating developer documentation
Out of date and disorganized documentation is the bane of existence for any product manager or developer relations manager for a developer community. Here, you’re looking for ways to automate some of the generation of documentation while staying customer-centric. Are they familiar with tools like OpenAPI spec and Postman Collections? Do they prefer documentation to be written in open tooling like Markdown or in a specific helpdesk software like Zendesk?
How do they handle duplicate information that may exist in GitHub README.md, API reference, and developer docs located on the company’s domain. Are there different types of documentation with a a target persona in mind?
9. How do you know if customers are receiving value from your APIs?
This is a more generic question of the which KPIs would you track? questions. A good PM will discuss the importance of leveraging analytics to measure the usage of the APIs and also which endpoints are driving revenue. The endpoints that are not generating revenue or maintenance costs are too high should be deprecated or tweaked to better solve a real business use case. Does the PM already have a wishlist of key metrics they want to be tracking once they start employment? What are ways to promote the API to increase usage?
10. How would you model a typical [eCommerce, Payment, etc] API?
Data modeling is one of the core expertise a product manager brings to the table. He or she should keep the customer in mind when creating new endpoints and how data can be joined or queries. One of the best ways to do this is via an example design exercise such as design an eCommerce API where:
- Items can be created/listed
- The price of an item can be edited
- A bid or order can be placed on an item.
- A geo-local search can be performed to find items near the end-user
The goal here is to see how the candidate will model the data, what endpoints will be created, what the API responds with. Depending on the role, you can also dig further on how this will be modeled in a SQL or noSQL database.