Software Engineer Leveling Matrix

Software Engineering Attributes



L1 – Software Engineer I L2 – Software Engineer II L3 – Software Engineer III L4 – Staff Software Engineer L5 – Senior Staff Software Engineer L6 – Principal Engineer L7 – Senior Principal Engineer
Software Design & Implementation

Quality

  • Maintainability
  • Code style
  • Documentation
  • Automated testing
  • Ease of integration
  • Rarity of defects
  • Writes consistently good and maintainable code, and needs little syntax/convention feedback.
  • Consumes documentation and only asks teammates when documentation and effort don't yield results; produces basic documentation.
  • Understands the basics of writing automated unit & functional tests.
  • Consistently authors good test cases and achieves good test coverage with the help of their team.
  • Writes most code without obvious bugs; knows how to avoid common problems.
  • Writes consistently great code requiring no syntax/convention feedback.
  • Often adds new and relevant documentation to existing repositories of knowledge.
  • Understands the organizational value of great documentation and spends time to maintain, update and extend existing repositories of knowledge.
  • Advises the rest of the team on quality of code, tests & documentation.
  • Identifies & pragmatically applies better code practices or tooling.
  • Creates & structures documentation for large code projects concisely & consistently.
  • Advises their team and other teams on best practices for code, test & documentation quality.
  • Considers (and proposes, when appropriate) new programming language & platform choices for the organization.
  • Leads efforts to improve documentation & code skills sharing across teams.
  • Makes the organization more effective through smart & pragmatic application of non-cutting-edge but useful code tools & patterns.


Architecture

  • Composition & decoupling
  • Code interface design
  • Technical debt
  • Data locality
  • Data formats
  • Performance
  • Some architectural design/approach feedback may be necessary, but understands and applies feedback consistently.
  • Is comfortable with the basics of code interface design; is learning to be more intentional.
  • Understands and can usually recognize technical debt; can pay it down when advised.
  • Has some experience with data formats, performance & locality; is learning quickly.
  • Strong architectural design & approach experience; only the most complex designs refined with senior teammates.
  • Good intuition for code interface design; looks for opportunities to learn from other projects & teams.
  • Understands and consistently recognizes technical debt; looks for opportunities to negotiate and pay it down incrementally, sometimes with prompting.
  • Much more comfortable with multiple data formats & their tradeoffs; can anticipate most performance issues and make use of existing patterns to solve them.
  • Deep architectural & design pattern experience; consults for teammates on more difficult designs, and sets up new projects to ensure architectural success.
  • Understands and plans with technical debt in mind; negotiates to pay it down incrementally and consistently, advises and prompts other teammates on technical debt.
  • Can solve nearly all performance and data issues within the context of their team by applying experience & knowledge sharing.
  • Works with Architecture team regularly to define & refine cross-team architectural approaches with extensive experience & sharing.
  • Understands technical debt as a long-term budgeting and risk management tool; articulates when to incur more and when to pay it down.
  • Guides organizational adoption of new data formats, data stores, and patterns for performance & data locality; consults regularly across teams on similar issues.
  • Sometimes employs prototyping for exploration of designs.
  • Succeeds by introducing simpler and time-tested approaches to technical problems to several teams.
  • Fuses organizational strategy with technical architecture, including cross-team design & code sharing.
  • Uses prototyping as a primary tool for rigorous design exploration.



Running Systems

  • Logging & metrics
  • Profiling & debugging
  • Monitoring & alerting
  • Failsafe design
  • Live production spelunking
  • Uses out-of-the-box tools to instrument and monitor systems; works well with the monitoring philosophy espoused by their team.
  • Can do basic code profiling alone and optimize obvious offenders.
  • Understands the basics of failsafe design; can implement with minimal prompting.
  • Has some comfort working with live production systems, but may rely on teammates before taking actions.
  • Customizes out-of-the-box tools, may create small custom tools to instrument and monitor systems.
  • Helps tune and change the monitoring philosophy on their team.
  • Can do multi-application and multi-layer profiling alone and optimize almost all offenders.
  • Strong understanding of failsafe design and regularly implements and occasionally mentors others on it.
  • Unqualified comfort working with live production systems, debugging issues and taking careful actions with protections against destruction.
  • Creates new tools when necessary (and avoids doing so when not) to instrument and monitor systems; defines, realigns and understands cross-functional and cross-org implications of team's monitoring philosophy.
  • Acts as a primary mentor on running systems for the rest of their team.
  • Can solve any profiling challenge at any layer of the stack, down to bits on disk/in RAM and up to multi-region clusters of data.
  • Seeks out running systems mentorship opportunities across teams.





Team Collaboration & Advice

Project & Team Scope

  • Size & number of projects
  • Regular participation scope across teams
  • Is a member of one or two small or medium projects at a time.
  • Works mostly with their own team.
  • Usually leads one or two medium or large projects at a time.
  • Recognized for occasional participation in cross-team relationships and projects.
  • Acts as an ambassador and proactive connector for their team with other teams.
  • Usually leads at least one major project and sometimes several medium projects on their team.
  • Sometimes leads cross-team projects and plays a significant role in major organizational initiatives.
  • Relied upon to keep complex projects on-track and sustainably implemented.
  • Works between and across teams almost as much as with their own.
  • Participates in major projects and initiatives within and between teams, including working groups.
  • Sometimes called in to mitigate large risks or solve tricky problems.
  • Significant contributor to Architecture team and leader of working group efforts across the organization.
  • Consults on numerous medium & large projects across the organization & actively connects different teams & systems.
  • Leads major strategic technical initiatives across many or all teams.

Technical Collaboration

  • Communication of deeply technical subjects
  • Ability to disagree accurately & constructively
  • Reaching conclusions & committing
  • Communicates accurately about all technical subjects in their work—both speaking/writing and listening/understanding; spends more time learning than explaining.
  • Can disagree and understand disagreement constructively and non-defensively.
  • Fully embraces team solutions and commits to delivery without issue.
  • Leads technical explanations when appropriate; knows when to listen and give space to teammates.
  • Approaches disagreement with inquisitiveness, empathy and the goal of a stronger solution; models this behavior for teammates; consistently disarms conflict.
  • Guides team toward a decision, clarifies and gets buy-in, and holds self & teammates accountable for decision.
  • Facilitates technical discussions between teammates; has deep familiarity with technical topics under discussion at all levels.
  • Proactively seeks out gaps in technical understanding, especially cross-functional, and works with a variety of teammates to fill the gaps.



Communication & Empathy

  • Clear, concise communication
  • Kindness, approachability and non-aggressive style
  • Modifying communication based on listener's perspective
  • Insight into listener's challenges & goals
  • Ability to communicate technical subjects to a non-technical audience
  • Communicates concisely, effectively & clearly.
  • May sometimes need minimal coaching on communication skills, but overall a strong speaker and listener.
  • Coaching on communication skills is rare and exceptional; very strong speaker and listener.
  • Can usually explain technical subjects to non-technical teammates.
  • Can explain deeply technical subjects to non-technical teammates with ease.

  • Often takes the lead to communicate technical topics to technical & non-technical directors and business leaders.




L1 – Software Engineer I L2 – Software Engineer II L3 – Software Engineer III L4 – Staff Software Engineer L5 – Senior Staff Software Engineer L6 – Principal Engineer L7 – Senior Principal Engineer

Ownership & Accountability

Productivity, Time & Task Management

  • How much they can get done
  • Ability to accurately estimate work tasks
  • Effective prioritization of tasks & communication
  • Timely completion of work
  • Full and thorough completion of all commitments
  • Accomplishes tasks within an acceptable time frame.
  • Can estimate work tasks with help from teammates & manager.
  • Understands & acts in accordance with given priority of work tasks.
  • Consistently delivers work tasks based on prior commitments and task definition to fulfill the specification of work.
  • Maintains a strongly consistent personal velocity of work tasks.
  • Estimates work tasks accurately in most cases, with minimal oversight.
  • Understands, negotiates & applies work priorities correctly.
  • Knows when to conclude conversations, meetings, and pre-work tasks in order to complete work on time.
  • Accomplishes nearly all work tasks in a timely manner; and raises an alarm early when tasks are off schedule.
  • Thoroughly vets work requirements and helps refine them to fulfill the intent of the requirements.
  • Leverages own abilities and practices to mentor and improve the productivity of the entire team.
  • Successfully manages cross-team commitments and work completion.
  • Improves productivity of teammates across multiple teams.



Project Accountability

  • Finding & filling gaps to complete projects
  • Effective communication with project stakeholders
  • Aiding others to reach project completion
  • Avoids surprising stakeholders whenever project expectations change; communicates changes early and often.
  • Consistently communicates with project stakeholders about expectations.
  • Proactively finds gaps in project plans and works with stakeholders to specify them.
  • Effectively communicates project status and expectation changes without prompting.
  • May occasionally help teammates overcome obstacles and complete project work.
  • Consistently helps teammates overcome obstacles and complete project work.
  • Enables and improves cross-team collaboration by helping individual teammates and working with stakeholders.
  • Works with organizational leaders to improve project accountability across many or all teams.


Production Support

  • Availability & responsiveness to production issues
  • Appropriate & complete communication during production issues
  • Effective escalation and management of production issues
  • Thorough task & communication follow-ups for production issues
  • Participation in RCAs and follow-up work
  • Participates in team on-call or escalation procedures and can resolve basic issues.
  • Communicates effectively to team about production issues.
  • Escalates issues appropriately.
  • Takes good notes about production issues.
  • Participates in follow-up retrospectives and completes assigned work as requested.
  • Can comfortably and effectively resolve issues outside of their immediate scope of experience.
  • Proactively identifies risks for production issues and works with stakeholders to resolve.
  • Leads definition & refinement of team on-call or escalation procedures.
  • Can resolve nearly all issues escalated within their team.
  • Communicates about production issues effectively with public & leadership.
  • Acts as primary owner of production issues and thoroughly oversees them to completion.
  • Leads RCAs, definition & assignment of follow-up work.




Autonomy & Self-Starting

  • Ability to self-train on new projects & technologies
  • Resourcefulness in finding own answers
  • Awareness of the balance between consulting teammates and making progress
  • Dives into new projects & technologies with curiosity and a drive to understand.
  • Maintains a healthy amount of urgency and consistency in their work.
  • Makes effective use of existing documentation, examples and other resources to gain a solid understanding before relying on teammates.
  • Knows how to ask good questions of their teammates and does so after trying options on their own.
  • Has awareness of rabbit holes and doesn't burn too much time on their own before consulting teammates.
  • Gains adequate understanding of projects that lack good documentation or usage examples through systematic learning, triage and discussions.
  • Contributes knowledge back to projects to enable self-starting of other teammates.
  • Very rarely falls down rabbit holes.
  • Achieves expert-level knowledge of new systems & technologies through rigorous learning, curious testing and prior experience.
  • Takes primary responsibility for improving projects to enable self-starting by other teammates.
  • Avoids rabbit holes through self-discipline, awareness and resourcefulness.






L1 – Software Engineer I L2 – Software Engineer II L3 – Software Engineer III L4 – Staff Software Engineer L5 – Senior Staff Software Engineer L6 – Principal Engineer L7 – Senior Principal Engineer

Brand & Relationships

Product & Business Team Relationships

  • Integration into product & business team operations
  • Quality & depth of relationships with product & business stakeholders
  • Understands how product & business teams adjacent to theirs operate.
  • Builds & maintains a friendly relationship and open channel of communication with product team counterparts.
  • Works proactively with product counterparts to build strong relationships within and across teams.
  • Knows and understands business stakeholders’ motivations as it affects their team.
  • Takes primary responsibility for relationships with product & business stakeholders within and across teams to better plan for and position their own team.
  • Thinks about inter-team relationships strategically and work constantly to improve them.
  • Establishes strong relationships with product and business stakeholders across the organization to facilitate their own cross-team scope.



Engineering Team Relationships

  • Involvement in engineering strategy
  • Representing own team within engineering org
  • Quality of relationships with engineering leaders
  • Understands team & organizational engineering strategy and how they apply to their role & team.
  • Works to represent self & team positively within the organization.
  • May seek out relationships with engineering leaders for mentorship or broader context.
  • Informs team engineering strategy by working with their manager.
  • Actively participates in execution and some planning of organizational engineering strategy.
  • Seeks out relationships with engineering leaders to build understanding of organizational strategy.
  • Decides & collaborates on team engineering strategy with manager & teammates.
  • Sometimes involves self in organizational engineering strategy.
  • Seeks to build strong relationships with engineering leaders across the organization.
  • Effective relationship builder throughout the engineering organization.
  • Often involved in strategic organizational plans.
  • Very effective relationship builder among most or all engineering leaders, regardless of function or relative team relationship.
  • Proactively involved in and often leads strategic organizational decisions and plans.
  • Unquestionably strong relationships with all engineering leaders in the organization.
  • Represents role model strategic engineering values and expertise.
  • Creates & effectively manages many organizational strategy plans.

External Representation

  • Thoughtfulness in positively connecting self and team back to the brand (company, team, self)
  • Prominence & results from external representation of company
  • Always represents self, team & company positively to external audiences.
  • Thinks about how external communication affects the brand and plans accordingly, sometimes with help from teammates or leaders.
  • Not generally expected, but certainly encouraged to represent company & team externally (e.g. blog posts, meetup group talks, conference speaking).
  • Might be more proactive in seeking out external representation opportunities.
  • Contributes some external blog posts.
  • Contributes & solicits blog post opportunities from teammates.
  • Consistently represents self, team & company through excellent blog posts.
  • Sometimes represents self, team & company with external speaking engagements.
  • Consistently represents self, team & company with external speaking engagements.
  • May participate in industry working groups on behalf of company.
  • Acts as primary contact for any relevant industry working groups to represent company.
  • Known among some industry groups for reputation at company.
  • Well-known among industry groups for reputation at company.
  • Regularly cited & invited as an expert within industry conferences for expertise relevant to company.


L1 – Software Engineer I L2 – Software Engineer II L3 – Software Engineer III L4 – Staff Software Engineer L5 – Senior Staff Software Engineer L6 – Principal Engineer L7 – Senior Principal Engineer

Innovation

Contributing to Product Enhancements

  • Contributions to the product roadmap 
  • Creating new abilities for the product team
  • Understands drivers behind product roadmap items as it affects their team.
  • Sometimes participates in roadmap feedback with product team.
  • Looks for opportunities to simplify product & technical design.
  • Regularly participates in the creation of the team roadmap & ensuing feedback.
  • Builds a reputation for simplifying product & technical design through proactive conversations.
  • Often helps refine roadmaps across teams based on technical strategy & constraints.
  • Helps to define & create new product abilities by changing technical strategy or constraints.
  • Proactively seeks to create or redefine roadmaps with product & business counterparts.
  • Widely respected for important contributions to product roadmaps across the organization.

Driving Efficiency of Systems & Practices

  • Opportunities for customer-impacting performance improvements
  • Continuous improvement of development, team and organizational practices to gain speed through efficiency
  • Takes responsibility for customer-impacting performance of systems on which they work.
  • Sometimes thinks about team practices; may suggest improvements to team or manager.
  • Seeks to understand and vet performance characteristics of new and old systems; shares methods & knowledge.
  • Regularly observes team practices & processes and suggests improvements to team or manager.
  • Consistently pursues improvements to performance, starting with the impact to customers.
  • Thinks critically about team practices & processes and regularly discusses improvements with leads & manager.
  • Observes organizational practices & processes and sometimes collaborates across teams to improve them.
  • Applies cross-team experience to provide consistent and replicable performance improvements for customers.
  • Regularly discusses, tweaks and seeks feedback on organizational practices & processes.
  • Takes ownership & responsibility for organizational practices & processes and their continuous improvement.


Collaborating on Patents

  • Surfacing patent opportunities
  • Submitting patent applications
  • Protecting the brand via patent pre-clearance for innovations
  • Understands company patent strategy and may surface patent opportunities to team & manager.
  • Collaborates on patent applications if asked.
  • Understands outside patent clearance guidelines before writing new software.
  • Often thinks about and surfaces patent opportunities to team & manager.
  • Regularly surfaces patent opportunities & risks to manager & Patents team.
  • Surfaces cross-team patent opportunities & risks to Patents team.
  • Ensures participation from team members in idea disclosure and review processes.
  • Works with Patents team to find ways to accomplish goals with minimized risk with respect to outside patents.
  • Works with Patents team to ensure company protectable subject matter is identified during collaborations with third parties.

  • Takes primary responsibility for organizational patent opportunities & risks.
  • Works proactively with Patents team to understand & refine strategy.
  • Provides opinions & due diligence relating to purchasable patent portfolios when asked.



L1 – Software Engineer I L2 – Software Engineer II L3 – Software Engineer III L4 – Staff Software Engineer L5 – Senior Staff Software Engineer L6 – Principal Engineer L7 – Senior Principal Engineer

Vision

Technical Strategy Mapping

  • Ability to articulate a vision for the future of a technical context
  • Articulates a coherent future vision for a component or components that they own within a larger system.
  • Articulates a coherent future vision for whole systems and several components for which they have responsibility.
  • Articulates a coherent future vision for many systems tended by their team.
  • Often assists teammates with building and articulating visions for their responsibility areas.
  • Articulates a coherent future vision for systems that span teams, or many systems across teams.
  • Helps define the model of what good & appropriate technical visions comprise.

  • Takes primary responsibility for building & articulating organization-level technical visions.
  • Owns the definition & communication of models describing good technical visions.

Integrity & Ethics

Fiscal Responsibility

  • Spend carefully and only when it's in service of team & company goals
  • Ensure timely & accurate accounting of business expenses
  • Understand cost impact of tools, applications & services
  • Understand financial drivers of the business
  • Spends carefully and only when it's in service of team & company goals.
  • Ensures timely & accurate accounting of all business expenses.
  • Understands relevant financial drivers behind projects or business initiatives.
  • Seeks out and understands overall cost impact of components for which they have responsibility.
  • Proactively takes responsibility for cost management of team-owned systems & resources.
  • Looks for opportunities to increase cost efficiency of team-owned systems & resources.




Privacy & Security

  • Understanding and applying privacy & security principles
  • Handling user data appropriately
  • Reporting privacy & security concerns
  • Understands basic security & privacy principles; always applies them to daily work.
  • Understands the importance & gravity of handling user data and does so responsibly without exception.
  • Immediately reports privacy or security concerns to manager or Privacy/Security teams.

  • Works proactively with Privacy & Security teams to help refine technical strategy based on those constraints.





Honesty & Accuracy

  • Realistic work estimates
  • Humility about lack of knowledge or experience
  • Understands and always tries to give consistent and honest work estimates.
  • Usually understands the limitations of their own knowledge and retains humility about their experiences.
  • Almost always understands the limitations of their own knowledge and retains humility about their experiences.
  • Always understands the limitations of their own knowledge and retains humility about their experiences.
  • Encourages humility in others through coaching.




Leadership

Mentorship & Guidance

  • Effectively mentoring and guiding teammates one-on-one
  • Understanding the balance between giving answers and providing opportunities to learn
  • Seeking out mentorship from teammates in particular areas
  • Growing teammates to build redundancy or replacement
  • Knows when to seek out mentorship to grow their own experience.
  • Sometimes mentors teammates one-on-one with or without prompting.
  • Always treats mentored teammates with respect and kindness, regardless of their experience.
  • Proactively mentors teammates one-on-one without prompting.
  • Seeks out opportunities to train other teammates with their knowledge & skills to create team redundancy and backfill ability.
  • Often mentors teammates across teams based on experience & expertise.
  • Takes full responsibility for their own succession on their team, including planning, coaching, mentorship & training.
  • Serves as a role model for mentorship within the engineering organization.
  • Proactively seeks out mentoring relationships.
  • Helps improve mentors.


Broadcasting & Knowledge Sharing

  • Comfort speaking on technical subjects to groups of engineers
  • Seek out opportunities to share unique expert knowledge or experiences with broad groups of teammates
  • Share knowledge externally via the company technical blog
  • Feels comfortable explaining technical subjects to their own team.
  • May broadcast to broader engineering groups through Tech Talks or the company technical blog.
  • Feels comfortable explaining technical subjects and receiving feedback across teams, whether formally (Tech Talks) or informally.
  • Contributes to the company technical blog on a regular basis.
  • May seek out speaking opportunities at local user groups or conferences.
  • Likely seeks out speaking opportunities at local user groups or conferences.

  • Habitually seeks out opportunities to share pragmatic experience and expert knowledge with teammates and external engineers via Tech Talks, local user groups and conference speaking engagements.
  • May speak externally on cross-functional topics to more diverse non-technical audiences.

Influence & Alignment

  • Persuading and getting alignment across diverse groups of teammates to accomplish a goal
  • Understanding the balance and power of making quick decisions with incomplete information
  • Can persuade some direct teammates based on the merits of a technical approach.
  • Makes well-informed technical decisions with all or nearly all of the information required.
  • Balanced with good listening, can persuade their entire team of particular tactical approaches to problems.
  • Regularly achieves strong alignment with their own team.
  • Sometimes persuades other team leads of a new approach based on sound tactical or strategic reasoning.
  • Regularly influences multiple teams to align around a cross-team goal.
  • Can deal with some information ambiguity in decision making, but may make most decisions based on solid evidence.
  • Consistently works at a strategic level, influencing technical & non-technical decisions to achieve cross-team alignment on major near-term goals.
  • Successfully shapes organizational strategy with long-term considerations from technical architecture.
  • Can persuade teammates at a tactical level with a lot of information, or the entire organization with limited information and sound, relevant experience.
  • Strongest technical influencers in the organization, with widely held respect and very forward-thinking plans.