Product Manager vs. Project Manager vs. Technical Program Manager
In just one decade, the Singapore tech scene has seen a tremendous explosion. From being generally a regional sales and delivery center back in 2010, Singapore has now evolved into a concentration of tech startups and innovation in the region.
Back in 2010, a product manager role in tech is hardly a need. Startups back then were so small that the CEO and the engineers have the mental bandwidth to drive the product roadmap. As such, there is no clear career path for a product manager in Singapore back then. One might argue that to this day, a PM’s career path remains a thing to be figured out. Yet today, there are more product manager positions in Singapore than there ever was, and positions like VP of Product and Chief Product Officer are growing in popularity.
Project Managers on the other hand, are not foreign in the Singapore context. The position existed for quite some time and most skillsets are transferrable even when the Project Manager comes from a non-technical background.
Yet in light of all these, one position which is mostly endemic in Silicon Valley and Washington (thanks Microsoft) hardly ever made its way to Singapore until recently: the Technical Program Manager. What is a Technical Program Manager?
In order to understand the role of the TPM, it is essential to first understand the role of the Product and the Project Manager.
The product manager is the CEO of the product. He is the one who calls the shots and is entrusted with the success of the product. He works with key stakeholders to identify the OKRs and work their way towards those. The Product Manager thus monitors the key metrics with tools like Google Analytics, Looker, and so forth. In B2B companies, he is also the one who manages the SLAs. He ensures that the product is nowhere near violating business SLAs and that measures have to be in place to protect the business.
Moreover, the product manager defines the product roadmap. He is the one who decides which features are to go out, how to prioritize them, and how to communicate these to the business operations department.
The project manager on the other hand is the champion of the product release. He is the one who ensures that a project is delivered on time and with quality. He works with the product manager, the software engineers, and the QA analysts and makes tradeoff calls in order to hit a deadline. He is also responsible for ensuring that at any point in time, there is enough resource to account for the pipeline of work coming in from product.
Technical Program Manager
Alas! The unicorn. The technical program manager is a very unique role. In general, the need for a TPM varies between companies. As a rule of thumb, the need emerges when the mental real estate required of the product manager and the project manager to ensure a detailed requirement is available and on time delivery becomes a bottleneck.
A technical program manager has the essential software engineering skills to translate a product requirement into technical specs. He is also the bridge between the Project Manager and the Engineers to do an initial set of technical assessment, as well as serving as the bridge between engineers working on different stacks to ensure that the requirements needed on both ends are in place to ensure a smooth product delivery.
Here’s an example of what a TPM does.
Back in Rakuten Viki where I used to work, we were exploring a new codec called AV1, which recently gained tremendous popularity in the video streaming world. AV1 is a codec that cuts the video file size in half so that users with slower internet connection can enjoy the same high definition graphics as those with better speed.¹ Adopting a new technology however comes with a lot of challenges. First, there is no free lunch. AV1 is only supported in newer devices and newer browser versions. Older hardware struggles to play AV1 (if it ever does). The primary reason is that in video playback, a dedicated hardware is needed to ensure a smooth playback. A hardware once shipped, is not easy to replace.² Suffice to say, the problem we had to solve was:
How do we serve the best video stream to the right device and make sure we have the right observability in place to monitor cost and address issues as they come?
To get things moving, the Product Manager and the Project Manager needs to work with the video streaming team, the backend team, the Business Intelligence team, Web, Chromecast, Android, iOS, Roku, and other TV devices teams we support. We had to essentially find out…
- What browser versions support AV1?
- What Android device models support AV1 out of the box?
- What device models, manufacturer, and build is capable of supporting AV1 using software decoding while ensuring the stream is smooth?³
- What analytics should we collect to ensure that we can correctly track the quality of experience of the user?
- How do we know that the device fails to play AV1 with the SLO we have for video playback?
- How do we target the right browsers and devices to play AV1? How do we gracefully degrade to older codecs if the device fails to support AV1?
- How do we account for the amount of storage and streaming cost we incur in playing AV1 as compared to older codecs?
- <the list goes on>
Now these are technical problems that the Product Manager and the Project Manager generally don’t have the skillset nor the mental real estate to figure out. Moreover, in order for the client teams, the video streaming team, and the backend team to come together and have a unified end to end system design in place, there has to be someone who has the software engineering expertise, the product management intuitions, and the project manager’s estimation skills to put all these requirements into the project management system, monitor their progress, unblock the engineers, and translate all these sophisticated technical details for the Project Manager and the Product Manager. This is where the TPM comes in. The technical program manager helps to ensure that the flow of information between the Product Manager, the Project Manager, and the Engineers from different stacks are organized in such a way that the entire business can get the project shipped.
Is the role of the TPM complex? Absolutely. An effective TPM has to have enough skillset as a product manager, a project manager, and a software engineer to drive the project forward.
In Singapore, there are very few TPMs but the need continues to grow as companies like Carousell, Shopee, Grab, and others continue to scale. However, the tech scene in Singapore is not yet ready for them. There is no clear career roadmap to incentivize engineers to take on a TPM position and things will hardly change in the next decade. (Of course, I shall look back and eat my words should I be proven wrong in 2030)
So when do you need a TPM for your business? It’s when the business reaches a state where collaboration between multiple engineering teams and multiple product verticals are essential to grow the business to the next level.
If you enjoyed this article, I’d be happy to connect with you on LinkedIn. I also run a non-profit organization called Big O(n) Development.
¹ I’m making the explanation very simplistic here. There’s more to it than that of course but for the purposes of this article, that explanation should suffice.
² There are nuances to this but let’s not digress.
³ Yes Android is such a headache to deal with. Some devices will tell you they support a particular codec but in actuality, they don’t!