Technical Skills
You are developing a deep expertise in a core language and / or technology and gaining awareness of others.
You understand and make well-reasoned design decisions and trade-offs in your solution area.
You arrive at the required implementation given periodic input from peers. You mentor and code review those developers less experienced than you. You also provide recommendations on approaches to take.
You are the go-to person in your area(s) of the solution.
You are able to work effectively in areas outside your core areas with infrequent guidance.
You are able to help others in their debugging / problem solving, or debug complex problems on your own.
You are able, with guidance, to non-functionally test and optimise your area of the solution.
You are influencing (or making when smaller scale) important project technical decisions.
Soft Skills
You are capable of prioritising tasks: you focus on business value and technical risk-reduction, and you consciously avoid getting caught up in gold-plating. You seek guidance from others and collaboratively solve problems.
You identify relevant areas for questioning. Through this practice and also via a general awareness, you identify problems and appreciate the effort required to resolve them.
You are developing techniques for presenting information. You are able to present to small groups of clients, you are able to present at a level that is understood by you audience, i.e not completely technically focused.
You are involved and contribute to team-level technical discussions.
You enjoy working in diverse and inclusive teams, recognising that they generate the most innovative solutions and ideas. This belief manifests itself in your desire to participate in a genuinely inclusive team environment where everyone feels welcome, heard and valued, no matter what their background. You act as a role model in actively encouraging everyone to value difference, and you’re quick to challenge any behaviours which damage this.
You can persuade others in straightforward situations, having taken on board other people’s perspectives, towards a positive outcome.
You are fully competent in your own area of expertise.
You manage your own time to meet agreed targets, and can develop plans for specific pieces of work.
Getting Code Live
You are capable of estimating to complete a well-scoped task and have a good knowledge of the architecture and existing code and technologies.
You can communicate these estimates to other - non-technical - stakeholders.
You can install and configure a new personal development environment for yourself and others.
You are developing techniques to improve quality.
Impact
Feature Ownership
You are the expert in one or more features on your primary project.
You are present when any of them goes live for the first time, and whenever there are significant subsequent changes. You consider how your feature will be supported after go-live and collaborate with other teams to ensure their smooth transition to live service.
You are capable of working with non-technical stakeholders to fully understand a project’s requirements.
Technical Assessment and Adoption
You propose new tools (or changes to existing ones) which help you and your colleagues get your work done more efficiently (e.g. automation tools, testing frameworks, collaboration tools).
Business Awareness
You fully understand the business cases and functional / non-functional (e.g. performance, security, accessibility) requirements supported by your feature(s).
You are capable of leading demos and technical discussions with both internal and external stakeholders (both technical and non-technical).
You demonstrate your awareness of business value by proposing new features or approaches to your client and internal stakeholders.
Helping Your Colleagues
You identify areas where common templates, starter-kits, shared-libraries or approaches could deliver efficiencies and improve quality, and you contribute to their development. This may result in blog posts, (internal) open source projects, lunchtime brown-bag sessions, etc.
You will have some Graduate or Apprentice Reviewees, giving them career guidance and advice as well as performing end of year review tasks.
You can identify when code you are working on could be open-sourced (internally or externally) and seek approval to do so.
Winning New Work
You plan your personal development to ensure you have the right skills for the roles you want.
Team Leadership
You lead small, co-located teams of 3-4 on small-scale and tightly-scoped pieces of work (either isolated or as part of a larger delivery).
Advocacy and Ambassadorship
You are a recognised go-to person in the wider team for one or more technologies / tools. They come to you for advice.