My transition from an engineer to PM was an accident. I was working on enabling customers with our software product while the product manager moved on to a different opportunity. I sensed a need to fill and at the same, I have worked on software development before shifting to customer enabling. I jumped at this chance to be involved in product management tasks including gathering requirements, prioritizing features, product marketing, and working with the engineers.
I loved the whole process of managing the product through multiple sprint releases and loved to get direct feedback from customers. I used to travel to workshops and customer sites to even train them on the latest product features and felt a “high” every time the customer provided feedback that a particular feature helped solved a problem, they were facing. Those moments validated my belief that the next step in my career is to transition to a product manager.
My example is something that worked for me and that doesn’t mean that’s the only way to transition to a product manager from an engineer. There is no one formula and in fact, there are five different ways to switch or transition from an engineer to a product manager.
- Volunteer Route
- Transition Route
- Education Route
- Interview Route
- Innovation Route
Let’s look at each of these transition routes in detail and check which fits you best.
As an engineer, you get to attend meetings with your product manager. This might a 1:1 or you could be attending sprint planning sessions together. If you are a project lead then you might also be pulled into staff update meetings, where the product manager will present the feature prioritization plans and customer feedback. A product manager dons several hats in the organization and would be grateful to get any help that comes his or her way. The best way to volunteer to help is not just to provide a blanket statement to the PM such as, “Let me know if I can help with your work” or “I like to volunteer my time to help you”. Instead, identify a particular task such as meeting with some customers or converting user feedback to stories and volunteer to own that particular task. Once you volunteer for a particular task, plan out the activities involved for the task. Schedule a weekly 1:1 with your PM to sync with him to provide updates and also get feedback on your output. Start connecting with marketing and sales to check on their inputs and if the output matches their expectations. When you deliver on such tasks, you earn the trust from management on your product manager role and they will help you transition to a PM role whenever the opportunity opens up. The opportunity also broadens your horizon to think beyond the code and start looking at product features such as market fit, customer feedback, user stories, product decisions and of course the execution. Keep looking out for opportunities within the organization for PM roles and once you see a requisition fit, update your resume with the PM tasks and contact the hiring manager.
The best way to switch to product management is to transition in the same company from an engineering role to a product management role. The volunteering tasks you did should help you ease on to the transition. Even if you don’t get a volunteer opportunity, it’s still relatively easy to switch to a PM within the same company rather than apply to an outside company with no PM experience. Networking within the company is important to find out more about new positions along with scouring the internal job boards. Geta 1:2 with the hiring manager and ask about the product features, customers and the expectations for the PM for that product. As an engineer, you should already be exposed to some of the PM tasks such as feature prioritization, product sprints, and user stories. Talk to your current PM on his job responsibilities and how he goes about managing the product roadmap and his calendar. Apply the learnings to the new requisition and impress the hiring manager by drawing out a plan on how you apply to the same process to the new job. Hiring managers love initiatives and if you have a good performance appraisal from your current job, then most managers would be willing to provide you a chance with the new job. If you don’t get the opportunity then you can always fall back on the volunteering route to acquire more PM skills and try again.
Getting an MBA is a longer route that you can take towards product management. MBA isn’t required for PM though many PM jobs do ask for an MBA as a qualification. MBA opens up a lot of career opportunities for you and being a PM is one of them. You will work on many projects during the course of an MBA through which you will learn about problem-solving, talking to customers, metrics, pricing, A/B testing, product vision, and forecasting financial models. These skills are critical to being a good PM and hence an MBA can help you get there.
This is by far the hardest and most innovative route to becoming a product PM. Become the PM you want to be, by developing your own product and selling it to customers. You are pushed to becoming a PM ASAP since you are the one-man show behind coming up with an idea, validating the idea, designing the product, finding a market fit, getting the first customers and iterating the product for release. These are hard problems to solve but if you take this route, then you will be rewarded with a wonderful experience in developing a product and the skills you acquire would rival an MBA without the tuition fees. There are several examples of one-person startups and indiehacker has a lot of such examples. Review the different products that people have built before and see if you can either emulate a similar product or develop a new solution that would solve a problem for a customer. Once you hone in on the problem you can start managing the product. This route can also turn up surprises such as your product becoming a hit and you go on to become an entrepreneur. Even if the product fails you still come out as a success since you have acquired valuable PM skills that you can add to your resume and employers really love entrepreneurs for PM roles.
You can also try applying for a PM job in different companies outside. Update your LinkedIn profile and resume and add how your managed products, helped with product execution, user stories for sprint planning. Expand your job search profile to include search terms such as technical product manager, Product manager and program manager. Keep reaching out to your linked network and recruiters to get more eyes on your profile and get callbacks from recruiters. Once you get a call back from recruiters, prepare yourself for the external interview process which will be harder than transitioning within the same company. There are many resources to help you prepare for product management interviews and I have listed off a couple of resources that are really helpful and vetted by many PM interviewees, who have landed their dream PM jobs.
Learn about STAR principles. STAR stands for
Any PM question should be answered with the STAR framework in mind. Think about a similar situation that occurred at your work and frame the situation to the interviewers. Then describe the task that you were given and how it’s similar to the situation described by the interviewer. Talk about the action you performed. Stress the activities you performed to solve the situation with a lot of “I” in the answer. Finally, explain the results achieved and the outcome of the success. This will go a long way in helping you crack the PM interview.
Review the books below that will help you explain and review the STAR skills
- Decode and Conquer
- Swipe to Unlock
- Cracking the PM Interview
Brush up on your coding skills and solve the problem from Leetcode and the book (Cracking the Coding Interview) to prepare for the interviews. Not all companies include coding rounds in PM interview but FAANG companies do include them.
System Design Interview:
Another important aspect of the PM interview is system design. Most engineers have a tough time with system design interviews and you should prepare by designing some systems such as Amazon sales engine, or Facebook feed before attending the interview. Review the link, How to approach a system design interview to get an excellent primer on system design interviews.
The main steps for system design include
Step1: Clarify the requirements and outline the assumptions and constraints
Never jump into a solution when a problem is given by the interviewer. For example, if the interviewer asks you to design Facebook Messenger, then don’t jump into talking about the need for a chat server or storing the data. Design questions don’t have one solution and hence ask questions to clarify the requirements. Questions include
- Who is going to use it?
- How are they going to use it?
- How many users are there?
- What does the system do?
- What are the inputs and outputs of the system?
- How much data do we expect to handle?
- How many requests per second do we expect?
- What is the expected read to write ratio?
Step 2: Estimations
Now that you have the requirements and constraints, you can do some estimations to decide the scale of the system, storage needed and the network bandwidth to be consumed. You can define an API to be expected from the system and also the database and data models used by the system
Step3: High-Level Design of the system
Outline a high-level design with all important components such as application servers, load balancers, databases, and file storage. Explain each part of your design and how the data flows between the endpoints to the servers and back in your design.
Step 4: Design core components
Dive into details for each core component. For example, if you were asked to design a URL shortening service, discuss:
- Generating and storing a hash of the full URL
- MD5 and Base62
- Hash collisions
- SQL or NoSQL
- Database schema
- Translating a hashed URL to the full URL
- Database lookup
- API and object-oriented design
Step 5: Identify and address bottlenecks
Address constraints and bottlenecks such as point of failures in the system and mitigation steps. Check if there are replicas or backups for the data. Check if we are monitoring the performance of the systems. Design mitigations if some of the servers shut down. Talk about redundant design and backup up.
For example, do you need the following to address scalability issues?
- Load balancer
- Horizontal scaling
- Database sharding
Once you have these preparation steps completed, you should be ready to ace your PM interview and successfully transition from an engineer to a PM. Good luck!