Navigating the journey: from Quality Testing to Technical Program Management
January 3 / GlobalClarissa is helping to change how people, food, and things move safely throughout cities after transitioning at Uber from her career in Quality Testing to her current role as a Sr. Technical Program Manager in Brazil. “Surprisingly, it wasn’t a 180-degree turn, but rather an enhancement of my experience which required a more strategic and holistic, vs. tactical perspective,” shares Clarissa in her own words below.
“Imagine a train traveling through a complex and ever-changing landscape. The train is carrying passengers from all walks of life, and it’s important that everyone reaches their destination safely and on time. The conductor is responsible for ensuring that the train stays on track, navigates any obstacles, and communicates with passengers. This is the role of a Senior Technical Program Manager (TPM) at Uber.
Uber values diversity of ideas, identities, ethnicity, experience, and education – which puts the train in the right direction. Putting ourselves in the shoes of the people who connect in our marketplace helps us build better products that positively impact our communities and partners, together. Curiosity about how our products affect the lives of our customers is the fuel that drives testing, and asking great questions is the key to great testing. Encouraging critical thinking in groups, and listening to different perspectives, backgrounds, life experiences, education, and work experiences about what we envision, design, and build is what makes us stronger and more connected— with each other and with the people who use our platform. My current role as a Technical Program Manager is to manage each aspect of this train, which is constantly in motion, evolving, and changing. However, I have not always been a TPM.
I actually started my career in the testing and quality field 10 years ago. My work at the time included asking what-if questions when creating new tests, diving into code to understand how it worked behind the scenes, assessing the quality in all different aspects, identifying risks, and finding process improvements to meet release dates. I loved seeing the constant impact of the products we delivered.
My previous quality testing experience put me in customers’ shoes and therefore, enabled me to go deep into any development challenges I uncovered. We were involved in all technical aspects, including different technologies, frameworks, and continuous deployment processes, and all business aspects, including a customer’s impact. On the team, each of us had different knowledge, hunches, expectations, assumptions, and opinions, which helped us to think out of the box and challenge the product.
I remember the first mistake that I made in a corporate environment, which was accidentally removing testing records from a database, affecting my entire team. I was new to the team, and the industry with only 2 projects in my belt, and was absolutely petrified. A more senior coworker helped me clean up my mess, and I’ll never forget his reaction. He said, “It’s always interesting to see how new people handle their first mistake. We’ve all been there.” It was such a relief! I have taken it with me to this day. It is tremendously important to be kind at scale. In other words, no matter how senior you are, you should always help others be comfortable. Mistakes are inevitable and every question is valuable.
Later on that same team, my manager asked me to run a list of test cases every day. When I asked him about any automation efforts, he told me “Oh no – we don’t have time to automate these, you need to run them every day.” I took the initiative and used my time in between projects to start automating and sharing the impact. Testing is an exploratory process that informs, confirms, or uncovers requirements or problems. Start with a hypothesis, answer two or more questions, and then get to work. Deliver the program, and measure the outcome. In this case, my manager wanted those test cases run every day (we got a new build every day), but what he actually needed was to make sure the networking features exposed in the UI continued to work as expected.
Then, I discovered the Technical Program Manager role at Uber. My quality background—my curiosity, my desire for constant learning, my ability to ask the right questions, and my experience in establishing new processes and mechanisms—were all transferable skills that could impact the product in a positive way. Surprisingly, it wasn’t a totally different route, but rather an enhancement of my experience into a more strategic than tactical perspective.
Meaningful experiences and connections that create nontraditional learning opportunities with real impact are what connect us. Being able to zoom in and ask why to explore possibilities and gather information, and then zoom out and ask how to narrow them down and make decisions about priorities. It’s another great way to make a real impact on the organization.
Our customers don’t just want software, they want their real-world problems solved. A lot of TPMs have held a variety of roles in the past, but we are all united by our goal of solving these tough technical problems by thinking about the people who will be using the new features. By moving into TPM, I’m still working on interesting problems, but now I’m also having an even greater impact by combining processes, technical expertise, and product sense.
By applying a bit (or a lot!) of structure, managing stakeholders, and considering scale and risks, TPMs create an environment that enables communication and progress. Our diversity helps us to understand problems and propose unique solutions. This is what truly moves us forward - our previous experiences shaping our actions and making our product more well-balanced as a result.”
Posted by Stephani Domako
Come reimagine with us
Related articles
Most popular
Uber, Unplugged: insights from 6 transit leaders on the future of how we move
Continuous deployment for large monorepos
Enabling Infinite Retention for Upsert Tables in Apache Pinot
Pinot for Low-Latency Offline Table Analytics
Products
Company