Skip to content
This repository has been archived by the owner on Aug 16, 2021. It is now read-only.

SLambrakis/engineering-performance-framework

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

22 Commits
 
 
 
 
 
 

Repository files navigation

Engineering performance framework

This is the framework we use to assess the performance of engineers every 6 months. For each role it is split into the same 4 categories: People, Delivery, Innovation and Initiative & Influence. Each category is scored on a 1-3 scale. The requirements for 2 and 3 are listed explicitly, and a score of 1 indicates not consistently meeting what is required to score 2.

Much like the software we write, this framework will never be perfect or finished - we should keep improving it as we use it.


Associate Developer

👩‍👨 People

Level 2 Level 3
  • Proactively identifies opportunities to work with others.
  • Shows curiosity in others and their work.
  • Regularly collaborates with their team on their work.
  • Engages with departmental activities which uphold our departmental or engineering culture.

🚚 Delivery

Level 2 Level 3
  • Delivers small tasks independently.
  • Takes on bigger pieces of work with support.
  • Takes on PR feedback and improves their work.
  • Seeks advice from more senior engineers when they are blocked.
  • Breaks down large problems into deliverable tasks.
  • Reliably delivers incremental changes with frequency. Can work mostly independently and unblocks their work when necessary by proactively reaching out to stakeholders, gathering data or provoking decisions/discussions.
  • Provides support to other engineers.
  • Reviews PRs with helpful comments.

💡 Innovation

Level 2 Level 3
  • Finds creative and effective solutions in their own work.
  • Contributes ideas for solutions and process improvements in team discussions, and is able to build on the ideas of others.
  • Actively exploring new approaches in their own work.

✨ Initiative and Influence

Level 2 Level 3
  • Contributes ideas in team discussions.
  • Occasionally demos their work to the team or stream.
  • Seeks to actively understand what they are being asked to do, and why.
  • Focuses their learning and development plans to align with team goals.
  • Gives useful feedback to their colleagues.
  • Regularly seizes opportunities such as demos or sponsor meetings, to communicate what they have been working on.
  • Makes data-backed suggestions on what the team should be doing next.
  • Takes opportunities to learn about wider department work through involvement in cross-team discussions. Represents the team occasionally but is likely to refer more complex issues to others.

Software Developer

👩‍👨 People

Level 2 Level 3
  • Each quarter provides some mentoring or guidance to colleagues (e.g. mentoring, constructive PR reviews or discussing approaches online or offline).
  • Always willing to help others.
  • Demonstrates inclusive behaviours as part of their everyday work.
  • Regularly provides mentoring and guidance to colleagues and has become known for this.
  • Undertakes departmental activities which uphold our departmental or engineering culture.
  • Ensures the opinions of others in their team are heard and that decisions are made by consensus.
  • Participates in some activity which aims to improve the inclusivity of our department.

🚚 Delivery

Level 2 Level 3
  • Breaks down large problems into deliverable tasks.
  • Delivers incremental changes frequently, reliably and with consistently good quality (e.g readable code which adheres to team standards).
  • Takes responsibility of their code from local testing to supporting it in production.
  • Requires occasional support from peers depending on the task, technology and prior experience.
  • Regularly reviews team PRs.
  • Attempts to unblock themselves first before seeking help.
  • Identifies problems to solve and engages the team in scoping and prioritising their delivery.
  • Delivers outcomes ahead of schedule.
  • Evaluates multiple options to solve technical problems and is trusted by the team to implement their recommended solution.
  • Regularly reviews team PRs providing helpful comments (e.g. constructive criticism / alternative approaches). Occasionally reviews PRs from outside their immediate team with the same consideration.
  • Helps to unblock their peers or shares responsibility for their tasks, in order to meet the team delivery goals.

💡 Innovation

Level 2 Level 3
  • Critically evaluates innovative concepts and ideas presented by others. Suggests and helps to implement process improvements and engineering best practice.
  • Regularly introduces new technical approaches when appropriate, which are adopted by the team, and make the team more effective. Keeps up to date with evolving best practice in their field.

✨ Initiative and Influence

Level 2 Level 3
  • Aligns what they are working on to their team’s goals.
  • Regularly gives useful feedback to more senior colleagues.
  • Seeks to fully understand the end goal of the tasks they pick up, and is mindful of this throughout the delivery lifecycle.
  • Provides input into architectural design choices.
  • Regularly demos their work to the stream.
  • Encourages their colleagues to do their best work.
  • Regularly gives feedback to the team on improving their ways of working, and to team leads each quarter. Helps to implement some of these improvements by being an advocate for them.
  • Regularly demos their work to the team, stream or stakeholders, and contextualises the impact of that work.
  • Supports the team leads in making architectural design decisions (e.g. by writing options papers or architecture decision records).
  • Represents the team in cross-team discussions and involves others when appropriate by sharing challenges and progress.

Senior Developer

👩‍👨 People

Level 2 Level 3
  • Actively seeks to share knowledge with their colleagues, choosing communication method/styles that are appropriate to them and the situation.
  • Makes a positive contribution to the inclusivity, atmosphere and culture of the department.
  • Regularly advises or mentors others in a way that accelerates their personal development.
  • Seeks to share knowledge beyond their team where useful/relevant (e.g delegates learning opportunities).
  • Consistently communicates the intention and outcomes from their work, leaving their work in a state where others can easily pick it up (e.g produces well worded requirements, PRs, documentation, etc). Encourages this behaviour in others.
  • Engages with departmental activities which improve our company or engineering culture and inclusivity.
  • Proactively encourages others to share their opinions and insight. Manages their own input to discussions to ensure they do not overly influence decisions.
  • Coaches and mentors their colleagues to perform better, be happy, motivated and fulfilled in the work they undertake.

🚚 Delivery

Level 2 Level 3
  • Delivers reliably and with consistently good quality code (e.g. well tested and readable) which defines team standards.
  • Takes responsibility of their code from local testing to supporting it in production.
  • Regularly reviews team PRs providing helpful comments, constructive criticism or suggested alternative approaches.
  • Demonstrates understanding that delivery goes beyond their individual contribution. (E.g. encourages others to improve their own delivery; manages dependencies on other projects and teams; balances short-term delivery with longer term objectives of own and other teams).
  • Committed to meeting their team’s objective and key results. (E.g. adapts delivery approach to meet the needs of the team, unblocks obstacles and supports the team in delivering its goals).
  • Regularly takes on more difficult tasks which require input from various teams or disciplines.
  • Plays a leading role in planning technical strategy for the team, or shaping the team’s delivery plans.
  • Makes their team successful in meeting their objectives and key results.
  • Balances risks to ensure team delivery.
  • Monitors system and delivery pipeline health to ensure quality of service and team productivity.
  • Brings the team or multiple teams together to maintain delivery pace and quality during periods of change and uncertainty.
  • Communicates and documents their work thoroughly.

💡 Innovation

Level 2 Level 3
  • Identifies opportunities for their team to improve their processes or introduce new technologies, and follows through to ensure the intended benefit is realised.
  • Leads by example to promote and encourage a culture of continuous improvement within their team.
  • Performs detailed R&D on new technologies and architecture patterns, and frames and shares the results accordingly.
  • Ensures that all members of the team are brought on board with new solutions, processes and technologies.

✨ Initiative and Influence

Level 2 Level 3
  • Drives work activities to meet team goals, helping to define tasks, business outcomes, technical quality & OKRs.
  • Helps keep the team focused on their long-term goals and values.
  • Gives regular feedback to the team and engineering manager and actively seeks to make improvements based on team and personal feedback.
  • Works with other Senior and Lead engineers to determine the technical architecture within the stream.
  • Shares what they have learnt by tackling difficult technical and people problems.
  • Regularly involved in cross-team discussions and uses their experience to influence outcomes (e.g. communicates own team’s context to improve shared understanding.)
  • Demonstrably moves the team’s key result scores as a result of the work they undertake.
  • Demonstrates how the team can learn and improve from failures.
  • Always ensures plans and outcomes are well communicated to stakeholders and the wider business as appropriate (e.g. presents at Huddle Round Ups.)
  • Leads work with other teams to solve cross-team challenges. Understands concerns of other teams and works to balance delivery across boundaries in order to deliver the best outcome overall.

Lead Developer

👩‍👨 People

Level 2 Level 3
  • Constantly uses their knowledge and experience to raise the capabilities of their colleagues.
  • Leads by example with the quality of their communication through appropriate means (e.g. exemplary requirements, PRs, documentation and presentations that could be understood with little context in the future.)
  • Promotes a culture of respect that influences team processes - leading to effective decision-making and empowerment of others.
  • Identifies potential structural improvements to knowledge sharing, communication or culture of the department and acts on this to deliver improvements across the department.
  • Encourages all staff to perform better, be happy, motivated and fulfilled in the work they undertake.

🚚 Delivery

Level 2 Level 3
  • Plays a strategic role in the stream’s technical decision making.
  • Produces high quality code which defines stream standards, and inspires other engineers’ delivery.
  • Provides feedback on important PRs and team’s solution design sessions.
  • Fosters a culture of continuous improvement and high delivery momentum across the stream.
  • Balances short term goals and long term needs.
  • Focuses on high impact and high value work.
  • Demonstrates understanding that delivery is more than just their individual contribution. (E.g. Delegates learning opportunities; encourages others to improve their own delivery; manages dependencies on other projects and teams).
  • Committed to meeting their team’s objective and key results.
  • Helps to unblock obstacles and supports the team in delivering its goals.
  • Takes responsibility of their code from local testing to supporting it in production.
  • Lead Developers make successful delivery outcomes happen, for example by either:
    • Tech leading a significant engineering project which requires coordination with many other teams and disciplines within GNM.
    • Turning around the delivery trajectory of a struggling team.
    • Strategically contributing to the department’s technical and organisational decision making.

💡 Innovation

Level 2 Level 3
  • Identifies systemic problems and opportunities beyond the scope of one team, promotes and considers them with others and evaluates potential solutions. Seeks to find the 80/20 solution that delivers the greatest portion of value for the least effort/cost.
  • Introduces new approaches that have an impact on most teams within the department.

✨ Initiative and Influence

Level 2 Level 3
  • Hosts department-wide forums where knowledge and experiences are shared.
  • Provides a solid voice of technical authority when there is uncertainty that’s stalling engineering progress.
  • Helps teams determine the right objectives and goals, and find an appropriate balance of health and maintenance alongside their delivery.
  • Helps teams find technical solutions that are cohesive and fit within the department’s vision and culture.
  • Actively works to help engineering teams be set up to succeed.
  • Demonstrates how the department can manage failure, fail fast, and learn and improve from such failures.
  • Presents at conferences or hosts external meet-ups that champion Guardian Digital solutions, culture and values.
  • Enables software to be produced that can be used by, or benefits external communities.
  • Ensures we don’t encounter unmitigatable or unforeseen technical problems.

About

The Guardian Engineering performance framework

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published