Team Roles

Hero image for Team Roles

Teams are arranged according to project needs. As a consequence, developers are not assigned to work with the same team members or in the same position all the time. On the contrary, team members often have to rotate between teams and switch roles.

To work efficiently as a team, it’s essential to have a clear set of responsibilities for each role.

Developer

  • Write clean and maintainable code
  • Write proper documentation for their code
  • Write clean and maintainable tests for their code
  • Being analytical about the task at hand. Tasks that do not make sense or need more clarifications must be flagged and brought up to the Team Lead and / or Product Manager.
  • Understand the whole design of the application being developed
  • Participate meaningfully in technical decisions
  • Perform research to solve issues
  • Participate meaningfully in code reviews

Team Lead

Team leads have to combine the same responsibilities as developers but also an additional set of responsibilities:

  • Assign user stories to developers
  • Participate in the definition of user stories
  • Finalize and decide on technical implementation
  • Lead code reviews efforts
  • Merge pull requests
  • Manage prioritization and planning choices of user stories in accordance with the schedule of deliverables defined by the Product Manager
  • Assist the Product Manager with communication with external stakeholders which require technical knowledge
  • Plan and delegate the role of Release Manager to a team member

Engineering Lead

Engineering Leads are senior engineering team members overseeing several projects who have both development and people management responsibilities:

  • Oversee and guide Team Leads in the technical decisions and delivery for their assigned projects
  • Perform regular one-on-ones and performance reviews with their assigned developers
  • Participate in the recruitment process
  • Instigate curiosity and continuous learning in the area they are expert in
  • Facilitate and ensure that developers follow the company engineering processes
  • Provide insights and reports to the CTO about the projects and developers performance

Engineering Leads are hands-on in their projects and expected to participate in all development activities with a primary focus on code reviews. As servant leaders, they ensure that the squads deliver the best products efficiently.

Product Manager

Responsibilities of Product Managers (PM) boil down to product vision, planning and QC i.e. having a clear view of what the product should be, planning how it will be built and making sure that what has been built reflects the original vision and requirements.

  • Define and ensure schedule of deliverables
  • Define milestones and / or epics
  • Define user stories
  • Define acceptance criteria for user stories
  • Perform quality controls of the work delivered by developers. QC is performed on the staging / beta environment once the code has been approved by Team Leads and deployed
  • Manage communication with external stakeholders including not only the Client but also all other third parties

UX/UI Designer

  • Deliver UX and UI according to the task’s requirements
  • Keep organized and neat the source files for the UX/UI. All source files must be shared and accessible by the whole team
  • Perform market, competitor and user research to find inspiration and solve issues
  • Being analytical about the task at hand. Tasks that do not make sense or need more clarifications must be flagged and brought up to the Team Lead and / or Product Manager.
  • Understand the whole purpose of the application being developed
  • Participate meaningfully in design review sessions