My experience with both roles

As I was finishing my work towards my software engineering certificate in 2016, my title shifted to technical project director and I started taking on more management roles on a range of projects. I tried out the role for about two years, and while I continued to build apps and websites during this time, my focus shifted by necessity towards management during a portion of each day. While I had previously been focused primarily on front-end web development and on building Drupal sites, my role grew to include managing budgets, scheduling meetings, and leading teams of content writers, web developers, and quality assurance specialists. In short, my focus was less on any specific thing I was building and more on shepherding the deliverables to the finish line and on making sure the overall products met the needs of the client.

Ultimately, I decided that I gravitated more towards making things than management, and that the logistical and budgetary aspects of management roles diverted too much time away from the app and web development that colleagues and clients still relied on me for. So while I have since switched back to a technical lead role on my current projects, I enjoyed my time as a technical project director and can speak to the similarities and differences between the two roles.

What is the distinction?

While the distinction between technical project director and technical lead can vary across projects and organizations, the technical project director is primarily concerned with delivering a successful product and communicating with clients, while the technical lead stays focused on growing the components of a given website, course, or application, and on managing the work of any other developers on the team.

The technical project director

Let’s say that a team is developing an online course for a client. The technical project director will either be the primary contact or one of the primary contacts with the client, and will schedule meetings and calls. They also may write the initial proposal to a client, manage timeline and budget, and check in on timelines. Their primary role is by necessity “high-level,” meaning that it focuses on big-picture concerns rather than technical details and coding.

The technical project director would usually handle the following:

  • figure out how much budget to allocate to particular roles and tasks
  • determine the objective and agenda of meetings
  • figure out who should be at each meeting
  • establish a place where project resources are stored
  • help developers establish a workflow and system of communication
  • check in with devs on the progress of particular tasks
  • work with clients, designers, and developers to finalize designs
  • setting deadlines for content writing staff, designers, developers, and QA staff

The technical lead

The technical lead typically manages budget less but may still keep track of how much time developers and designers are spending on particular tasks. As a technical lead, I often would work in between technical project directors and other technical staff, communicating with the technical project director(s) about overall goals and timelines, and then talking with tech staff about how those break down into smaller tasks.

A technical would usually handle the following:

  • make recommendations on what modules or plugins to try on a given project
  • make the call on when a given request calls for an already-built plugin or new custom code
  • determine and manage the process for deploying a set of changes to a live website or production-level app
  • take the lead on writing a custom code solution
  • inform the technical project director about the status of particular tasks
  • coordinate the work of other developers
  • keep the team current on app and web development best practices

Where both roles intersect

Depending on team size and the roles and skill sets within that team, the technical lead may also have to be the technical project director. I have been on projects where it has been my role to check on budget as well as complete the primary coding work. So depending on the tech lead’s skill set, he/she may share coding or other “boots-on-the-ground” technical roles. That said, tech leads can also restrict themselves to the “high level” aspects of the project — fielding client requests, checking on designs before they go to developers, assisting with quality assurance, and entering requests into a tracking system - and leave the coding to the developers.

These are some roles that tech leads and technical project directors may both share:

  • lead or co-lead teams of developers
  • determine the best tech solution for a project based on feedback from vendors
  • check hours spent on particular tasks against budget and timeline
  • inform designers on the necessary content of design specs file formats their designs would need to be in
  • controlling the level of change on a project by determining which client requests are within the scope of a given project
  • Help to prepare clients to use and/or maintain the app or website
  • Check what has been built against the assignment specs

Tools to explore

For each role, it definitely helps to learn project management and quality assurance tools, such as the following:

  • Pivotal Tracker
  • Trello
  • Monday.com
  • Asana
  • DoneDone
  • Rally
  • Microsoft Excel
  • Microsoft SharePoint

Both technical project director and technical lead roles are terrific for someone who likes to work closely with people and gravitates towards organization and time management. If your role is primarily that of a coder, you may want to try managing a project to get a sense of this other perspective and see how you like the role. For now, I have decided that a technical lead role is a better fit for me, and my experiences in both roles have in the long run made me a more effective developer.