The “T” in TPM is very crucial and differentiates TPMs from other types of program managers. TPMs work with subject matter experts on a daily basis and it is important for them to be able to understand and converse with them easily. Being technical adept also helps build credibility with engineering teams. TPMs drive technical execution which will suffer if a TPM is lacking on the technical axis.
If you come from an engineering background, it is often easier to transition into a TPM role. The audience for this article are primarily folks who are coming from non-technical backgrounds, hold non-technical roles in the tech industry or haven’t utilized their tech education in their past experience. Many of you requested me to post about this topic. So here are some ways aspiring or rookie TPMs can strengthen their technical expertise. Keep in mind that you have to put in a lot of hard work building the “T”. I can assure you that it will pay off. I have mentored many aspiring TPMs who have made the transition successfully.
There are many online sources like LinkedIn where you can learn some basics about new technical areas. If you are in the software industry, take a programming course like Python to understand the fundamentals or learn about SQL. You can also take specialized courses on AI or Machine Learning. Some courses can be good for building conceptual knowledge without having to learn programming. If you intend to stay in your current field, get advice on which courses are best from your technical peers. Some other resources that you can take advantage of are Programming Interviews Exposed, Decode and Conquer, Cracking the PM career, Machine Learning by Andrew Ng, Designing Data Intensive Applications.
Learn from technical peers
Sometimes, learning can happen best by connecting 1:1 with a peer. Engineers are often excited to share their technical knowledge with someone who is willing to learn. Ask them to explain/draw the system workflow or architecture. Ask questions if you don’t understand something. Talk to multiple folks such as engineers, TPMs or architects so that you get a different perspective from each.
Understand system design
It is important to understand the end to end system design as it is a key part of TPM interviews. Furthermore, as you TPM an engineering program, having the knowledge of how the system works will help you do your job better.
What is System Design?
Systems design is the process of defining the architecture, product design, modules, interfaces, and data for a system to satisfy specified requirements. Systems design could be seen as the application of systems theory to product development .
There are a couple of ways you can strengthen your technical judgement on designing good systems.
Dig into the systems in your existing company even if you are not in a technical role. For example, if you are a business analyst in a financial institution, learn about how the different components work together to form the end to end system to enable 1000s of parallel transactions. Or if you are a design program manager in Ads technology, explore more about the Ads ecosystem, where does your company fall into it, how does ad bidding happen etc. Starting in an area with which you have some familiarity will help you connect the dots.
Practice system design problems that are outside of your domain. Here’s a good System Design 101 article on how to structure your system design thinking. You will find many questions on Glassdoor that you can use as a way to build your muscle. Generally with any system design, you have to make sure you have thought through all the different use cases, edge cases, privacy, security, data flow etc. Watch this Basic system design video course and practice these top 10 system design interview questions
Practice mock tests/interviews
Once you have done taking courses or practicing design questions, seek help from a technical peer/friend and ask them to conduct a mock interview with you. Doing this will help you formulate your answers verbally, demonstrate your thought process and even practice drawing things out on a whiteboard. System design questions are generally open ended, so there isn’t a wrong answer. But it is important that you get comfortable in breaking down any design question and building a solution that is robust.
Building on your technical expertise is a continuous process. Even after you transition into a TPM role or have been a TPM for some years, there will always be times when you change industry and need to learn new domains. I hope this writeup can serve as a starting point for you. The above is by no means 100% complete and I will share more resources/ideas as I come across them. I hope to bring on guest writers who can share their journey and tactical steps with you as well.