Technical Program Manager Role is comparatively new in the software industry. Earlier, there were project/program managers. While those roles are still there, industry has realized that a project manager’s impact on software projects can differ significantly depending the technical strength. Your ability in the ‘T’ of TPM can make a difference of hundreds of thousands of dollars in yearly salary. So, the natural question arises how a PM can acquire and strengthen this ‘T’ in a TPM role.

Below are some tips on how to keep your saw sharp as a ‘technical’ program manager:

  • Accept TPM label

  • Learn Technical Domain of your Project

  • Participate in Technical Design

  • Learn General Technical Concepts:

  • Enroll in Technical Training

  • Certifications

  • Join Technical Forums

  • Hang Around w/Engineers

  • Give Tech Talks in partnership with Engineers

  • Stay updated on Technical Trends

Accept TPM label: It is difficult to precisely define Technical in the TPM role. If you have been associated with Software industry in any capacity, you have some idea on how things work. You may have taken some coding/IT  classes in college or you may be self-taught. Every TPM role requires a different level of ‘Technical’ expertise. Some TPM roles are so technical, that it is required that TPM has been in an engineer earlier and there are other roles where very little technical knowledge is a prerequisite. Unless, you have strong aversion to technology, it in beneficial to accept the TPM label. Branding yourself as a non-technical PM will limit your career and opportunities.

Learn Technical Domain of your Project: Software projects may vary significantly. Identify the technical domain of your project and try to read up on it as fast and as much as possible. You may only need to have enough understanding to ask probing questions and make sure that technology team continues working towards business objectives. You may start from Googling/watching YouTube Videos about the technical concepts and go from there.

Participate in Technical Design: Depending on your knowledge, inclination, bandwidth etc. it is recommended that a TPM gets involved in architectural and technical discussions. If you are new to this, you can simply be a fly on the wall and listen to the conversations. Many engineers tend to over engineer the solution. You can keep them focused by asking how a certain design decision ties to business value. You can ask basic questions on how the design in consideration contributes towards Performance, Scalability, Capacity, Availability, Reliability, Recoverability, Maintainability, Serviceability, Security, Regulatory, Manageability, Data, Integrity, Usability, Interoperability etc.

Learn General Technical Concepts: There are many general concepts that every TPM should be aware of these days:

  • Cloud Basics – Different types of Cloud, Iaas, Pass, SaaS solutions. Scalability, Load balancing, Cloud Databases etc.
  • Cloud Native Concepts – Microservices, Containers, Isolation, API designs, Logs as a service, Caching, Continuous Deployment, Deployment Pipelines, Kubernetes etc.
  • Database Concepts –Relationtional (SQL) and NoSQL databases, basic SQL commands. Knowledge of Tables, Views, Indexes, JOINS, Transactions, Locks etc.
  • API Design– What are API? Differences in Public and Private APIs. Rest APIs and Security, Reliability, Performance of APIs. API upgrades, Postman usage etc.
  • Security – Security in general and especially in the Cloud is an important topic. Various kinds of security breaches like Denial of Service Attacks, Phishing, Spoofing etc.
  • Analytics and Reporting – This another vast area where dipping your fingers may be helpful. Basic data warehousing concepts like Start Schema, Cubes, DataMarts, ETL (Extract, Transfer Load), Operational and Analytical Reporting, Dashboards, Tableau, Excel, MicroStrategy and similar reporting tools.
  • Code Repositories: GitHub, GitLab, Code Merge, Code Conflicts etc.
  • Streaming Platforms/Eventing Platforms: Kafka, SQS are a good start.

Enroll in Technical Trainings: There are multiple options available to get technical trainings, these include training websites like Pluralsight, Lynda, LinkedIn bootcamps, continuing education courses etc. Between in person/offline, sync/asynch you will find something that will work for you.

Certifications: Depending on the projects that you support, you may acquire few basic technical certifications. This will add to your technical credibility, give edge over peer TPMs and improve your resume. An AWS Associate Architect certification may be a good place to start.

Join Technical Forums: Most companies have technical forums/channels like Design Review Committees, Schema Advice groups, Architectural Review Boards etc. The more you can join the better!

Hang Around w/Engineers: We are defined by who we hang around with. You will be surprised how much you can learn and absorb from the environment just by hanging with technical folks. From understanding the lingo to being aware of small technical decisions, you will be in the know of many things which you may otherwise miss.

Give Tech Talks in partnership with Engineers: This is a great way to learn and showcase your technical abilities. Partner with engineers to give technical talks. Even if you play second fiddle to them here, they will appreciate your initiative, setup and presentation skills.

Stay updated on Technical Trends: There are multiple technology magazines, websites and research firms like Techcrunch.com, CIO.com Forrester, Gartner etc. that you can subscribe to stay up to date on technical trends. This knowledge will come very handy in your conversations with technology Leadership.

Technical Strength is critical in TPM role. It is better that you over involve yourself in technical side of things and asked to step off by engineering counterparts rather than being labeled non-technical or not interested in technical aspects of the project. In performance reviews of TPMs, technical ability is one of the primary areas of evaluation. Stay involved, stay deep and keep learning!