Engineering
To create the engineering career path, we looked at the different stages in the lifecycle of a feature. We felt that this was a much better approach to outline all the responsibilities and areas of impact for our engineering team than just the company's values.

Architect

Idea

Basic

  • Understand requirements shared by the team

Intermediate

  • Work with business teams to prioritise the right features
  • Refine requirements so we are building the right features for both existing and future customers

Senior

  • Work with business teams to define feature areas
  • Suggest new areas based on customer knowledge

User experience

Basic

  • Consider all user touch points and areas of impact
  • Ask the right questions to understand what has to be built

Intermediate

  • Improve the user experience through discussions

Senior

  • Define the user experience flow for large feature areas and products

Technical architecture

Basic

  • Think about what is needed to build this capability
  • Document the technical architecture
  • Get feedback from other team members

Intermediate

  • Review architecture of junior team members
  • Find elegant solutions to complex problems
  • Reduce complexity and promote reuse

Senior

  • Be comfortable in architecting large systems and products
  • Use the right tech stacks or SaaS solutions for a quick and future-proof solution

Build

Development

Basic

  • Build features and fix bugs following standard coding practices

Intermediate

  • Identify ways to reuse code and create components so we add only what is needed
  • Build features faster with cleaner code

Advanced

  • Take on large complex projects and build them elegantly

Feedback

Basic

  • Share regular progress with product and business teams
  • Make changes as needed based on the feedback

Intermediate

  • Do a demo with relevant teams for early feedback
  • Share previews with customers for their feedback

Advanced

  • Do detailed customer interactions to identify issues and opportunities before extensive development

Testing

Basic

  • Add or update automated tests for the feature
  • Ensure feature and adjacent areas are tested thoroughly

Intermediate

  • Create a thorough test plan for the feature

Advanced

  • Create a testing framework that continuously tests and identifies problems before they happen

Deploy

Deployment

Basic

  • Work with the team to deploy the feature on time

Intermediate

  • Create a deployment and migration plan for complex features
  • Collaborate with business teams to identify the right time and approach to deployment

Advanced

  • Orchestrate the roll-out of complex and interconnected systems
  • Ensure there is no downtime, data loss, or other negative impact from any deployment

Communication

Basic

  • Inform relevant teams about the changes with video and screenshots

Intermediate

  • Work with business teams to communicate benefits to existing and potential customers
  • Update documentation and public references as needed
  • Update training and on-boarding material

Advanced

  • Create a sense of excitement about new capabilities and improvements within the company and with customers
  • Conduct online and offline sessions to ensure customers are aware of the features and use them the right way

Validation

Basic

  • Add relevant metrics and create dashboards

Intermediate

  • Review metrics regularly to see if features are used well
  • Get regular feedback from business teams about the usability and effectiveness of feature

Advanced

  • Spot patterns of poor or excellent usability from metrics
  • Interact regularly with customers to understand how our products can be improved