Skip to content

Instantly share code, notes, and snippets.

@hotcoder
Forked from jamtur01/ladder.md
Created February 27, 2021 17:20

Revisions

  1. @jamtur01 jamtur01 revised this gist Oct 21, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion ladder.md
    Original file line number Diff line number Diff line change
    @@ -327,7 +327,7 @@ Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-chang

    The VP of Data is responsible for cultivating and developing Kickstarter’s data-driven products, research, and culture.

    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the VP Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.
    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the VP of Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.

    Day to day the VP of Data will consult on individual research projects, advise others throughout the organization on data questions, suggest broader topics for analysis, and direct decisions around data tools and services.

  2. @jamtur01 jamtur01 revised this gist Oct 21, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion ladder.md
    Original file line number Diff line number Diff line change
    @@ -327,7 +327,7 @@ Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-chang

    The VP of Data is responsible for cultivating and developing Kickstarter’s data-driven products, research, and culture.

    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the Head of Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.
    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the VP Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.

    Day to day the VP of Data will consult on individual research projects, advise others throughout the organization on data questions, suggest broader topics for analysis, and direct decisions around data tools and services.

  3. @jamtur01 jamtur01 revised this gist Oct 21, 2015. 1 changed file with 10 additions and 10 deletions.
    20 changes: 10 additions & 10 deletions ladder.md
    Original file line number Diff line number Diff line change
    @@ -5,8 +5,8 @@ These are the Kickstarter Engineering and Data role definitions for both teams.
    | [Junior Software Engineer](#junioreng) | | |
    | [Software Engineer](#softeng) | [Data Analyst](#datanl) | |
    | [Senior Software Engineer](#snrsofteng) | [Data Scientist](#datasci) | [Engineering Manager](#engmgr) |
    | [Staff Engineer](#staffeng) | [Head of Data](#hod) | [Engineering Director](#engdir) |
    | [Principal Engineer](#prineng) | | [VP of Engineering](#vpe) |
    | [Staff Engineer](#staffeng) | [VP of Data](#vpod) | [Engineering Director](#engdir) |
    | [Principal Engineer](#prineng) | | [CTO](#cto) |

    There are three different paths:

    @@ -312,7 +312,7 @@ systems. These are not written into the general job description but
    understanding of the scope of the responsibility is important for
    understanding the scope of the job.

    ### Other activities
    ## Other activities for Engineering Managers and Directors

    * Mentoring and professional development for the members of their Eng team.
    * 1:1s and semi-annual reviews with team members.
    @@ -323,13 +323,13 @@ understanding the scope of the job.

    Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-change/

    ## <a name="hod"></a>Head of Data
    ## <a name="vpod"></a>VP of Data

    The Head of Data is responsible for cultivating and developing Kickstarter’s data-driven products, research, and culture.
    The VP of Data is responsible for cultivating and developing Kickstarter’s data-driven products, research, and culture.

    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the Head of Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.

    Day to day the Head of Data will consult on individual research projects, advise others throughout the organization on data questions, suggest broader topics for analysis, and direct decisions around data tools and services.
    Day to day the VP of Data will consult on individual research projects, advise others throughout the organization on data questions, suggest broader topics for analysis, and direct decisions around data tools and services.

    They represent Data on the senior team and frequently report topline metrics and research developments to the rest of the company and the board as well. They help vet all reports delivered inside and outside the organization and are the last line of defense when it comes to Bad Data and spurious correlations.

    @@ -423,16 +423,16 @@ The Principal Engineer may act as the reporting manager for a small team
    but is probably not acting as the reporting manager for most or all of
    the team.

    ## <a name="vpe"></a>VP of Engineering
    ## <a name="cto"></a>CTO

    The VP of Engineering is responsible for nurturing the team's culture
    The CTO is responsible for nurturing the team's culture
    and recognizing when to let the team evolve and when to guide its
    growth. They oversee the team's capacity and availability are an
    advocate for steady progress on the product, the infrastructure, and the
    total system health.

    They represent Engineering on the senior team to articulate the
    They represent Engineering and Data on the senior team to articulate the
    capabilities and needs of the department. They are responsible for
    understanding the system's construction and having a sense of
    opportunity and cost. The VPE communicates technical impact in simple,
    opportunity and cost. The CTO communicates technical impact in simple,
    clear terms.
  4. @jamtur01 jamtur01 revised this gist Oct 16, 2015. 1 changed file with 7 additions and 1 deletion.
    8 changes: 7 additions & 1 deletion ladder.md
    Original file line number Diff line number Diff line change
    @@ -325,7 +325,13 @@ Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-chang

    ## <a name="hod"></a>Head of Data

    TBD.
    The Head of Data is responsible for cultivating and developing Kickstarter’s data-driven products, research, and culture.

    A large component of this responsibility is meant to be strategic and less hands on than the work of Data Scientists or Analysts. It should consist mainly of resource planning, project management, and advisement on how best the data team can help the organization achieve its larger goals. Accordingly, the Head of Data will frequently weigh in on how the long term priorities of the organization might benefit from data driven research, products, or developments in the field of data science.

    Day to day the Head of Data will consult on individual research projects, advise others throughout the organization on data questions, suggest broader topics for analysis, and direct decisions around data tools and services.

    They represent Data on the senior team and frequently report topline metrics and research developments to the rest of the company and the board as well. They help vet all reports delivered inside and outside the organization and are the last line of defense when it comes to Bad Data and spurious correlations.

    ## <a name="staffeng"></a>Staff Engineer

  5. @jamtur01 jamtur01 revised this gist Oct 13, 2015. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion ladder.md
    Original file line number Diff line number Diff line change
    @@ -325,7 +325,7 @@ Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-chang

    ## <a name="hod"></a>Head of Data

    TBD - Fred.
    TBD.

    ## <a name="staffeng"></a>Staff Engineer

  6. @jamtur01 jamtur01 revised this gist Oct 13, 2015. 1 changed file with 0 additions and 1 deletion.
    1 change: 0 additions & 1 deletion ladder.md
    Original file line number Diff line number Diff line change
    @@ -7,7 +7,6 @@ These are the Kickstarter Engineering and Data role definitions for both teams.
    | [Senior Software Engineer](#snrsofteng) | [Data Scientist](#datasci) | [Engineering Manager](#engmgr) |
    | [Staff Engineer](#staffeng) | [Head of Data](#hod) | [Engineering Director](#engdir) |
    | [Principal Engineer](#prineng) | | [VP of Engineering](#vpe) |
    {: .table .table-striped .table-bordered}

    There are three different paths:

  7. @jamtur01 jamtur01 created this gist Oct 13, 2015.
    433 changes: 433 additions & 0 deletions ladder.md
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,433 @@
    These are the Kickstarter Engineering and Data role definitions for both teams.

    | Technical | Data | People |
    |-----------------------------------------|----------------------------|------------------------------------|
    | [Junior Software Engineer](#junioreng) | | |
    | [Software Engineer](#softeng) | [Data Analyst](#datanl) | |
    | [Senior Software Engineer](#snrsofteng) | [Data Scientist](#datasci) | [Engineering Manager](#engmgr) |
    | [Staff Engineer](#staffeng) | [Head of Data](#hod) | [Engineering Director](#engdir) |
    | [Principal Engineer](#prineng) | | [VP of Engineering](#vpe) |
    {: .table .table-striped .table-bordered}

    There are three different paths:

    * Technical - These are technical roles that don't generally involve
    people leadership. As you move up they include increasing levels of
    technical leadership and responsibility. Most of the Engineering team
    will fit into these roles.
    * Data - These are the roles within the Data team.
    * People - These roles represent the people leadership and management
    path within Engineering. Given our size there are only a small number
    of roles.

    ## <a name="junioreng"></a>Junior Software Engineer

    Junior Engineers are at the start of their career. Being successful in
    all aspects of this role is the principal criteria for becoming a
    Software Engineer.

    Junior Engineers have a reasonable understanding of core engineering
    concepts. They are focussed on expanding that understanding and growing
    as an engineer. They have a basic understanding of the team’s tools and
    processes and a broad introduction to engineering best practice and
    productivity skills. They have an appreciation and understanding of
    software engineering techniques like testing, source control and agile
    planning and are focussed on learning more about these domains.

    A Junior Engineer is capable of taking small well-scoped components of
    larger projects and features and, with the mentoring and assistance of
    more seniors engineers, completing these tasks in a reasonable time
    frame. Engineers at this level work with more senior members of the
    Engineering team to ensure they make steady progress on tasks that are
    assigned to them. More senior engineers may also help when they are
    blocked.

    Focused on learning about Engineering principles, tools, practises and
    mastering those with a view to being more self-sufficient.

    They are learning how to communicate well and how to deliver feedback to
    peers and their manager. When given a task with unclear requirements
    they are learning how to ask for clarification and how to identify
    underlying assumptions in design and implementation and how to clarify
    them. They understand how their work fits into the larger picture for
    their team, and can work with product and other engineers to help
    identify conflicting requirements. They will start to participate more
    in the technical design process, often with guidance from more senior
    engineers.

    Engineers at this level should be learning how to identify issues and
    learn from them to improve their skills. By the time a Junior Engineer
    is ready to be promoted to Engineer she will have expertise in
    Engineering best practice, tools, techniques and a solid introduction to
    the technologies in their domain.

    ## <a name="softeng"></a>Software Engineer

    There will be engineers in this role with a broad spectrum of
    experience. Being successful in all aspects of the role is the principal
    criteria for becoming a Senior Engineer.

    Engineers display solid understanding of core engineering concepts. They
    are focused on growing as an engineer, learning the team's tools and
    current processes, and developing productivity skills, as well as a
    strong background in Engineering best-practices like testing, source
    control, and agile planning.

    Capable of taking well-scoped component from a larger project and
    completing these tasks in a reasonable time frame. Engineers at this
    level are assumed to be constantly making steady progress on tasks that
    are assigned to them and know when to ask for help when they are
    blocked. They can own their independent small-to-medium features all the
    way through from technical design to launch.

    Software Engineers are focused on learning about a specific component or
    product sub-area and mastering that component.

    They communicate well and are capable of delivering feedback to peers
    and their manager. When given a task with unclear requirements they know
    how to ask for clarification, and ensure that all assumptions are vetted
    before work starts to reduce the need for re-work. They understand how
    their work fits into the larger picture for their team, and use this to
    identify conflicting requirements to their people leader and product
    manager. As Engineers learn they will start to participate more in the
    technical design process, often with guidance from senior engineers.

    Engineers at this level should be improving the speed at which they
    learn from their mistakes. By the time an engineer is ready to be
    promoted to Senior Engineer she will have focused on some technology as
    their expertise and become capable of mentoring interns and new
    engineers in these areas.

    ## <a name="datanl"></a>Data Analyst

    A Data Analyst works across the company in a number of domains and
    subject areas, performing everything from exploratory data analysis to
    business intelligence and product research.

    An essential quality of a Data Analyst is the ability to mix rigorous
    skepticism with a practical approach to research and development.
    Understanding database technology, query languages, and data
    visualization grammars is also crucial: many times the analyst's word is
    treated as gold, so their attention to detail and technical aptitude
    must be par excellence.

    Data Analysts are also excellent communicators and can easily move
    between lay explanations and sophisticated technical treatments of the
    same topic. When research requires visualization or more complex
    analysis, Data Analysts use the right tool for the job and don't get
    lost in the details of using data to tell a story. Often they see the
    bigger picture before their audience will, and leading their colleagues
    to the right decision is of primary concern.

    As Data Analysts mature they will take on more technical projects,
    whether that means applying more complex statistical techniques or
    writing production code. Their role can evolve as their interests in
    different areas develop.

    Eventually Data Analysts can “own” certain areas within the data team
    and can assume responsibility for managing their milestones and
    processes.

    ## <a name="snrsofteng"></a>Senior Software Engineer

    Senior Engineers are responsible for technical leadership in one or more
    Engineering domains. Senior Engineers belong to engineering and product
    teams. They are responsible for maintaining any plan, documentation and
    backlog for these one or more technical domains. They will work with
    other Engineers to burn down the backlog of these domains.

    The Senior Engineer should be seen as a rock-solid engineer who is a
    master of at least one domain. The Senior Engineer is capable of owning
    technical design for projects of moderate complexity, and understands
    the tradeoffs in creating good software in their area. They hold a depth
    of knowledge in systems that enables them to debug those systems
    effectively without issues. In addition to writing consistently
    high-quality code they are aware of industry best practices and trends,
    and have acquired at least one major skill outside of core coding such
    as monitoring, documentation, integration testing, visual design,
    performance optimization.

    The Senior Engineer gets a lot done. They are responsible for complex
    tasks and complete them despite roadblocks, grabbing others for help or
    insight as necessary. The Senior Engineer requires very little oversight
    beyond high-level direction; they can take a complex user story, break
    it down into sub-tasks, and complete their sub-tasks with relative ease.
    The Senior Engineer shows initiative beyond knocking tasks off a list;
    they are able to identify and suggest areas of future work for
    themselves or their teams. They seek evidence to support their ideas and
    start to build cases for these ideas. They deliver products with
    confidence.

    The Senior Engineer has end-to-end responsibility for projects of
    increasing complexity that encompass more than their own development.
    They contribute to the common code bases and standards for the team.
    They understand the business that their code supports and use this
    knowledge to influence their task prioritization. They assist in
    identifying and validating test cases and can identify regression risks
    in their features. In general, they can identify risks in code,
    features, and design, and communicate these to the appropriate parties.

    The Senior Engineer is known outside of their core team as a technology
    leader. They participate extensively in code reviews, and mentor others
    via code reviews and pairing, as well as frequently presenting at team
    meetings. They work effectively with non-tech members of the Kickstarter
    community. They are able to identify problems with requirements and help
    their team course-correct around these issues.

    Recommended reading:
    http://www.kitchensoap.com/2012/10/25/on-being-a-senior-engineer/

    ## <a name="engmgr"></a>Engineering Manager

    The Engineering Manager is the manager of a small to mid-sized team.
    They are comfortable with management practice and are strong project
    managers. As a leader they ensure that they are tracking the team's
    efficiency and quality of work, they assist in regularly adjusting
    processes and timelines to ensure high quality work is delivered.

    The Engineering Manager will spend less time writing code, but there is
    an expectation that they still engage in some technical deliverables
    such as bug fixes and small features, without blocking or slowing down
    the progress of their team. More than writing code, they hold
    responsibility for identifying bottlenecks in the process and roadblocks
    to success for their team and clearing these roadblocks.

    This role is expected to have a large impact on the success of their
    team as a whole. In particular, leaders in this role are capable of
    identifying the most high-value projects and keeping their team focused
    on these projects. As part of keeping the team focused the Engineering
    Manager will partner closely with Product Managers to manage project
    scope and ensure the technical deliverables are met. In addition to
    focusing the team, they are capable of identifying headcount needs for
    the team and planning and recruiting to fill these needs.

    The Engineering Manager is an independent manager. They are comfortable
    managing team members with different skill sets from their own. They
    communicate expectations clearly to all team members and solicit and
    deliver individual feedback frequently. Additionally, they identify
    areas of technical debt, do the cost/benefit analysis for resolving this
    debt and communicate suggested timelines for prioritizing this to the
    Product and Engineering teams.

    ## <a name="datasci"></a>Data Scientist

    Data Scientists assume all the primary responsibilities of a data
    analyst, but frequently employ complex statistical techniques in the
    pursuit of objective truth and reproducible, hypothesis-driven results.
    Put another way, Data Scientists apply the scientific method to their
    day to day work, and help mentor the rest of the data team in these
    techniques.

    In addition, Data Scientists are also responsible for conducting
    research and development on current industry and academic trends
    focusing on new algorithms and models applicable to the company’s core
    business problems. This work can sometimes be highly theoretical, but
    must always be grounded in an appreciation for its technical and product
    feasibility.

    Ideally, Data Scientists are comfortable assessing and developing
    production code and feel at ease understanding its technical performance
    characteristics and consequences. It is conceivable that a Data
    Scientist never deploys, but the results of their work should be heavily
    collaborative with engineering and product development, and will often
    shoulder the responsibility for seeing it implemented properly.

    ### How is this different from an Data Analyst?

    The distinction is partly based on seniority -- Analysts can be promoted
    to Data Scientists, but the role is also focused on particular
    techniques and skillsets grounded in theoretical research and
    literature. Some analysts will never aspire to be a Data Scientist
    simply because their skills and interests are located elsewhere: product
    development, management, infrastructure, etc.

    ## <a name="engdir"></a>Engineering Director

    The Engineering Director is responsible for functional slices of the
    Engineering team. The Engineering Director will typically lead engineers
    across multiple slices.

    The Engineering Director is not generally expected to write code on a
    day-to-day basis. However, the Engineering Director should have a strong
    technical background and spend some of their time researching new
    technologies and staying abreast of trends in the tech industry. They
    will be expected to help debug and triage critical systems, and should
    understand the systems they oversee well enough to perform code reviews
    and help research problems as needed. They should contribute to the
    architecture and design efforts primarily by serving as the
    technically-savvy voice that asks business and product questions of the
    engineers on their teams, ensuring that the code we are writing matches
    the product and business needs and can scale appropriately as those
    needs grow.

    The Engineering Director is primarily concerned with ensuring smooth
    execution of complex deliverables. To that end, they focus on ensuring
    that we continually evaluate and refine our development/infrastructure
    standards and processes to create technology that will deliver sustained
    value to the business. They are responsible for creating high
    performance, high velocity organizations, measuring and iterating on
    processes as we grow and evolve as a business. They are the leaders for
    recruiting, headcount management and planning, career growth and
    training for the organization. As necessary, directors will manage
    vendor relationships and participate in the budgeting process.

    The impact of an Engineering Director should reach across multiple areas
    of the technology organization. They are responsible for creating and
    growing the next generation of leadership and management talent in the
    organization, helping that talent learn how to balance technical and
    people leadership and management. They are obsessed with creating
    high-functioning, engaged and motivated organizations, and they are
    expected to own retention goals in their organization. Additionally
    Engineering Directors are responsible for strategically balancing
    immediate and long-term product/business focused work with technical
    debt and strategic technical development.

    Directors are strong leaders, and set the example for cross-functional
    collaboration both between Engineering and other areas of the company,
    and across Engineering teams. The goal of this collaboration is to
    create both a strategic and tactical roadmap that tackles both business
    needs, efficiencies and revenue as well as fundamental technology
    innovation. This roadmap is jointly owned by the Engineering technical
    leadership (the Senior Engineers and the Principal Engineer) and the
    Engineering Directors.

    The director is a very strong communicator and can simplify technical
    concepts in a way to explain them to non-technical partners, and take
    business direction and explain it to the technology team in a way that
    inspires and guides them. Directors of Engineering help to create a
    positive public presence for Kickstarter Engineering and are capable of
    selling the company to potential candidates.

    Due to their breadth of exposure to both technology and the business
    drivers, Directors are responsible for guiding the planning process for
    their team, helping the team articulate goals that support both business
    initiatives and technology and organizational quality.

    It is important to note that each director may have specific
    responsibilities given their area of oversight. For example, the
    Director of Operations is ultimately responsible for all critical
    infrastructure (databases, servers, etc) and must ensure continued
    support and uptime of these systems. The Director over Back End has
    specific responsibilities for the development and management of backed
    systems. These are not written into the general job description but
    understanding of the scope of the responsibility is important for
    understanding the scope of the job.

    ### Other activities

    * Mentoring and professional development for the members of their Eng team.
    * 1:1s and semi-annual reviews with team members.
    * Administration and people management - approving leave, etc.
    * Engineering team organization - helping or organizing the Engineering meetings, lightning talks, and Hack Days.
    * Helping plan and prioritize Engineering team activities and backlog.
    * Helping develop and communicate policy and process across Engineering.

    Recommended reading: http://fractio.nl/2014/09/19/not-a-promotion-a-career-change/

    ## <a name="hod"></a>Head of Data

    TBD - Fred.

    ## <a name="staffeng"></a>Staff Engineer

    The Staff Engineer has strategic impact over some combination of a large
    team, a very deep technical problem, and/or a long time horizon. The
    problems that the staff engineer is solving are open-ended.

    The Staff Engineer provides considerable high-level technical guidance
    across the team. They can usually anticipate and plan for technical
    problems. They are highly knowledgeable in major parts of our technology
    stack and are the technical owner of significant components of our code
    base. They have a sustained track record of creating improvements in
    business-critical systems around stability, performance, and
    scalability.

    A Staff Engineer is still acting in a very hands-on role, and as such,
    they are a prolific contributor to both core projects at Kickstarter as
    well as side and experimental work. When presented with a complex
    problem, process or existing system they are able to reduce the
    complexity in order to get more done with less work. They provide
    guidance, direction and help colleagues build and produce better
    outcomes.

    The Staff Engineer has strong abilities to influence without requiring
    reporting authority. They facilitate cross-team work and are influential
    beyond their individual group. They are capable of driving groups of
    disparate interests to decisions, and clearly communicating and seeing
    those decisions through to impact. The staff engineer is capable of
    setting short to medium term strategic direction for part of the
    technology stack, identifying areas of critical need based on future
    growth and developing roadmaps to attack those problems.

    The Staff Engineer may act as the leader of technical team but is
    probably not acting as the people manager of fellow engineers.

    ## <a name="prineng"></a>Principal Engineer

    This person acts as the “chief architect” for our business. They have
    significant strategic vision and can take a high-level 3-5 year plan for
    growth at a business level and translate that into a strategic
    technology roadmap. They are deeply technically savvy and their primary
    job is focusing on the architectural and technology needs to grow the
    business over the longer-term horizon.

    This level signifies strategic impact over the team. The Principal
    Engineer deals with very deep technical problems and a long time
    horizon. The problems that the Principal Engineer is solving are very
    open-ended even to the leadership who presented the problem.

    The Principal Engineer is sought-after for technical guidance across the
    team. They have a track record of anticipating technical problems that
    will fall out of major products and designing solutions to overcome
    those problems. They are deeply knowledgeable in major parts of our
    technology stack and are the technical owner of large parts of our code
    base. They have a sustained track record of creating major improvements
    in large business-critical systems around stability, security,
    performance, and scalability.

    A Principal Engineer is still acting in a very hands-on role, and as
    such, they are a prolific contributor to both core projects at
    Kickstarter as well as side and experimental work. When presented with a
    complex problem, process or existing system they are consistently able
    to reduce the complexity in order to get more done with less work. This
    ability to manage and simplify complexity is the hallmark of the
    Principal Engineer; working with this person should leave team members
    feeling like they are going to leave with something significantly better
    than they came into.

    The Principal Engineer has broad impact across Kickstarter tech. They
    create architecture that shapes large parts of our business, and ship
    complex projects including many systems or major pieces of
    infrastructure. The impact of their work is felt across the team in the
    quality of the engineering that we produce, the ways we write code, the
    core libraries that we use, and the underlying design of systems. There
    are multiple obvious large technical contributions that can be pointed
    to as originating from this team member.

    The Principal Engineer has excellent abilities to influence without
    requiring reporting authority to do so. They effectively facilitate
    cross-team work and are influential far beyond their individual group.
    They are capable of driving groups of disparate interests to decisions,
    and clearly communicating and seeing those decisions through to impact.
    The Principal Engineer is capable of setting short, medium and long term
    strategic direction for part of the technology stack, identifying areas
    of critical need based on future growth and developing roadmaps to
    attack those problems.

    The Principal Engineer may act as the reporting manager for a small team
    but is probably not acting as the reporting manager for most or all of
    the team.

    ## <a name="vpe"></a>VP of Engineering

    The VP of Engineering is responsible for nurturing the team's culture
    and recognizing when to let the team evolve and when to guide its
    growth. They oversee the team's capacity and availability are an
    advocate for steady progress on the product, the infrastructure, and the
    total system health.

    They represent Engineering on the senior team to articulate the
    capabilities and needs of the department. They are responsible for
    understanding the system's construction and having a sense of
    opportunity and cost. The VPE communicates technical impact in simple,
    clear terms.