Skip to content

Tech Lead (TL) project role description

CivicActions technical team leaders are known as "Tech Leads" (TL). The Tech Lead is responsible for the technical direction of the project. Tech Leads are involved in the entire project life cycle from estimating new business proposals and architecting solutions to leading development teams to work on the highest priorities and ensuring successful project completion. Our Tech Leads work in tandem with a project leadership team responsible for managing the project's overall progress and budget, which may include Design Lead, Project Managers, Scrum Masters, Engagement Managers, and/or Product Managers.

General responsibilities

A TL's role definition and responsibilities will vary by project. Responsibilities can also be shared amongst other team members including engineers, project managers, product owners, designers, and associate technical leads. They will include items from these lists:

Key

  • Responsible: "Those who do the work to complete the task."
  • Accountable: "The one ultimately answerable for the correct and thorough completion of the deliverable or task, the one who ensures the prerequisites of - the task are met and who delegates the work to those responsible."
  • Support: "Helps get the task done or contributes to it".

Business development

The TL supports:

  • Reviewing RFP and appendices
  • Filling out analysis documentation
  • Estimating the proposed solution
  • Development of project roadmaps
  • High-level technical solutioning
  • Requirements clarification

Planning

The TL is responsible for release management, planning, and communication.

The TL is accountable for:

  • Knowing, understanding, and communicating to the team the project contract scope, expectations, boundaries, and knowledge gaps surrounding:
    • project timeline
    • budgets
    • roles and responsibilities
    • partners and supporting entities
    • functional requirements
    • design requirements
    • accessibility requirements
    • performance requirements
    • security requirements
    • technical landscape.
  • Ensuring continuous delivery
  • Leading project-wide technical discovery to understand an initiative's functional, technical, testing, security, performance, and accessibility requirements in collaboration with service design and UX discovery efforts

The TL supports:

  • The Product Owner (PO) and Project Manager (PM) in defining development priorities and identifying high value work
  • Ticket refinement
  • Epic story creation
  • Ticket backlog prioritization

People

The TL is responsible for:

  • Onboarding engineers: project technical background, technical goals and active initiatives, team structure and personnel, project tools, environments, repositories, development workflows, CI/CD processes
  • Offboarding engineers: removing admin access to sites/services/servers, updating any documentation, transferring tickets/knowledge, and so on
  • Nurturing a project engineering team culture which values care, balance, openness, and honors client and partner culture and values (follow the platinum rule: treat others as they want to be treated).
  • Fostering collaboration within and across teams and valuing listening and empathy

The TL is accountable for guiding all high-level technical discussions with the project team, partner teams, client, additional stakeholders, partners, and third parties.

The TL supports individual professional development.

Risk management

The TL is accountable for:

  • Triaging current and potential technical risks
  • Developing and communicating risk mitigation strategies for major technical risks

The TL supports the team:

  • In gaining a broad understanding of what constitutes a risk - estimation (budget/timeline), security, performance, accessibility, usability, complexity (quality/maintenance) etc.
  • In identifying, communicating, and managing risks and blockers to engineering success
  • In identifying and surfacing issues around best practices

Development

The TL is responsible for:

  • Facilitation of implementation and release of a stable sustainable product at the end of each sprint which meets stakeholder requirements, passes quality standards (e.g. functionality, code quality, security, performance, accessibility), and conforms to established best practices
  • Facilitation of establishment and implementation of development operations, processes, tools, and schedules surrounding local development, code workflows and promotion, automation, and environment usage
  • Technical architecture
  • Ensuring design and coding standard compliance
  • Applying continuous learning within project engineering teams, CivicActions engineering team, and relevant practice areas
  • Leading code review processes
  • Keeping project engineering documentation thorough and current to the extent that the project can be handed off to a new engineering team
  • Ensuring Agile best practices are followed within the engineering team

The TL supports:

  • Establishing and implementing continuous integration tools and processes
  • Security compliance documentation

Operations

@todo Needs review. The TL is accountable for:

  • Coordinating on-call support depending on the project
  • Coordinating and delivering RCA

The TL supports:

  • Establishing and implementing site reliability, load testing, and related policy and procedures
  • Disaster recovery policy and procedure

Ticket work

The TL is accountable for:

  • Facilitating standards around implementation plans, estimates, and testing steps on tickets and holding the team accountable to these
  • Ticket risk assessment

The TL supports:

  • The project team in removing ticket blockers.
  • Facilitating standards around ticket creation.
  • Ticket prioritization.
  • Assignment of tickets when applicable.
  • The Project Manager reviewing tickets for proper formatting (implementation plans, estimates, user stories) and ensures that tickets appropriately document the issue and the resolution.

Design

The TL supports:

  • Developing order of operations to support design and engineering collaboration
  • Engineering and design teams to design technically feasible and practical solutions

Responsibilities not expected

  • Knowing everything about a project: knowledge is shared among all project participants.
  • Coding everything: the Tech Lead's primary responsibilities are around leading and supporting the engineering team, not the engineering itself.
  • Primary organizational contact with the Product Owner: that is part of the Project Manager's role.
  • Final authority on development and ticket backlog priorities: that is part of the Product Owner's role.
  • Availability and support outside of established working hours, unless mutually agreed upon as a project responsibility.

Skills

  • Building, leading, and managing project engineering teams.
  • Coaching and mentoring engineers.
  • Complex problem solving.
  • Risk analysis and management.
  • Estimating level of effort.
  • Technical prioritization.
  • Managing competing priorities, parallel work streams.
  • Executive functioning — organizational and planning skills applied to self and team.
  • Time management for self and team.
  • Communicating technical subjects to technical and non-technical audiences.
  • Presenting to audiences.
  • Familiar with common technical tools, their appropriate applications and strengths and weaknesses.
  • Familiar with best practices of chosen technical stack.
  • Relationship building.
  • Conflict resolution.
  • Qualities: Motivating, self-directed, bias towards action, self and team awareness,
  • Values: Collaboration, listening, empathy, perseverance, resilience, adaptability, transparency, attention to detail, ownership, accountability.

Experience

  • Gathering, defining, and translating technical requirements.
  • Architecting best-of-breed technical solutions based on requirements.
  • Roadmapping technical solutions.
  • Implementing and continuously improving engineering processes.
  • Implementing complex development tasks.
  • Managing and integrating codebases on large teams.
  • Reviewing code with an eye for best practices, efficiency, performance, and security.
  • Testing and debugging code.
  • Release management.
  • Agile methodology and best practices.
  • Exposure to a variety of projects of varying team sizes and durations.
  • Remote-based work.

Technical leadership project roles at CivicActions

Any of the following technical leadership roles may be employed on a project team depending on the size, scope, and duration of the effort. Responsibilities, skills, and experience required for each role will vary based on the scope of the role and adjacent project roles and will reflect that listed above to varying degrees.

Technical Lead (TL)

Technical Lead is the de facto role for a project engineering lead, commonly responsible for leading a team of engineers and responsible for the technical direction of a project (or a single project engineering team on projects with multiple engineering teams)

Associate Technical Lead (ATL)

The Associate Technical Lead project role is the first step for an engineer to grow into a Technical Lead as part of their professional development. The ATL supports the TL on the project team with a mutually-agreed upon division of responsibilities. A common division of labor is for the ATL to focus on internal team activities (including code reviews, code management, ticket refinement, etc.) so the TL can support more external activities (including meetings, stakeholder support, communications, coordination with other teams, etc.). The ATL project role is commonly an internally-identified project role whereas the other technical leadership project roles may be defined in the contract.

FAQs

Is a TL an individual on the project or a project role?

This is a project role, which means that:

  • One individual could perform one role on one project and another role on another project (e.g. a TL on project A could also be a frontend engineer on project B).
  • Multiple roles on a project could be shared by the same person (e.g. the TL could also be the Lead Engineer). This is the norm for many small and medium projects.

How does one become a TL?

  • An individual could be hired to fulfil the project role.
  • An individual could show interest and experience and volunteer for the project role.
  • An individual who has experience can be asked to take on the project role.
  • An individual can first step into the Associate Technical Lead project role and work towards gaining experience with the different responsibilities before they take on the TL project role.

What are some personal OKRs that I can use to gain experience to become a TL or as an ATL?

Objectives and key results (OKRs) should target various responsibilities listed above with specific key results. Examples:

  • Getting involved in sales and business development.
    • Completed 1-3 project scorecards.
    • Participated in 1-3 project proposals.
  • Leading development initiatives.
    • Map out the implementation for 3-5 features end to end.
    • Peer review all tickets for 3-5 epics.
    • New developers are up and running within 2 business days.

Are TLs always backend engineers at heart? What about Frontend and DevSecOps engineers?

The TL project role is one type of growth path to consider. Any engineer is welcome to work towards the TL project role. An engineer who is interested in TL should identify if they can take on the responsibilities or have gaps and work towards closing those gaps.

Should the ability to perform these responsibilities not be expected of any engineer who has attained "some" level of experience on projects?

Yes. Ultimately this project role (an individual or multiple team members) is given the ownership of those expectations in formal documentation.


This page was last updated on November 3, 2023.