Engineering Paths Software Engineer 2
Page-eng-paths
Cancel

Software Engineer 2 (Individual Contributor Path)

Years of experience (guideline)

Software Engineer 1 Software Engineer 2 Software Engineer 3

0 to 2

2 to 5

4 to 6

Scope of action

Software Engineer 1 Software Engineer 2 Software Engineer 3

Story / Task

Story / Task

Epic / Project

Role Description

Software Engineer 1

An early-career engineer who is building proficiency in one focus area (BE/FE/Data/DevOps) and learning team practices while delivering well-defined tasks with guidance. They use pairing sessions to understand the codebase, accept guidance on grooming tasks, and deliver small PRs to maintain short feedback loops. Their focus is on developing solid foundations and forming working relationships with teammates.

Software Engineer 2

A developing engineer with solid technical understanding of one product area who consistently delivers well-defined tasks on time and on target. They understand the product and how customers use it, participate in troubleshooting, and proactively pair with teammates to learn best practices. They are beginning to contribute to team discussions and understand how critical issues are investigated.

Software Engineer 3

An experienced engineer and expert in one product area who drives team-level planning and communication while delivering on larger tasks independently. They evaluate scope to right-size solutions, break down and estimate large initiatives, and participate in improving engineering best practices. They contribute to design docs, mentor through code review, and help resolve issues in their area of expertise.

Scope of knowledge (Breadth and Depth)

Software Engineer 1
  • Learning the codebase for 1 product / key component.
  • Building proficiency in primary focus area (BE/FE/Data/or DevOps).
Software Engineer 2
  • Solid technical understanding of the codebase for 1 product / key component.
  • Proficient in primary focus area (BE/FE/Data/or DevOps).
Software Engineer 3
  • Solid technical understanding of 1 product / key component.
  • Expert in one technology on one part of our stack.
  • Strong proficiency in primary focus area (BE/FE/Data/or DevOps).

reference: Products and key components (internal link)

Responsibilities

Software Engineer 1
  • Uses pairing sessions and asks questions to learn about our codebase, product, and best practices.
  • Accepts guidance on grooming small tasks.
  • Delivers small PRs to maintain a short feedback loop.
  • Observes technical discussions and learns how to tackle technical problems.
Software Engineer 2
  • Understands the product and ways that our customers use it.
  • Is able to understand, discuss, and come to a solution, sometimes with the help of others.
  • Participates in troubleshooting issues in their area of focus.
  • Proactive in pairing with other team members to learn the team best practices.
  • Completes well-defined tasks, consistently delivering on time and on target, given a clear plan and segmented stories.
  • Understand how critical outages and high-impact issues are investigated. Join those calls as a listener when available.
Software Engineer 3
  • Solid understanding of the product and ways that our customers use it. Evaluates scope to right-size a solution based on this understanding.
  • Consistently delivers on time and on target, even on larger tasks when given a clear definition.
  • Comfortable troubleshooting issues in their area of focus.
  • Regularly participates in team-level planning and drives some team-level communication.
  • Able to break down and estimate large initiatives.
  • Writes code in a style consistent with the codebase, creates tests for their work.
  • Participates in improving engineering best practices.
  • During critical outages or high-impact issue investigations, participate in group calls if in your area of focus. Help come to a solution when it is in your area of expertise.

Communication and leadership

Software Engineer 1
  • Effective in communicating status to the team. Raises blockers and possible change of deadlines.
  • Exhibits Beyond’s core values and engineering principles. Focuses on understanding and living these values.
  • Demonstrates interest and willingness to learn and try new things.
  • Treats all feedback (positive and critical) as a gift. Continuously seeks feedback and areas to improve.
  • Takes initiative to seek out opportunities to learn new skills.
  • Asks for help when blocked (1 hour rule: try 1 hour to solve a problem, otherwise ask for help).
  • Solicits feedback from others and is eager to find ways to improve.
  • Forms working releationships with their team members.
Software Engineer 2
  • Solicits feedback from others and is eager to find ways to improve.
  • Finds the right balance between reaching out for help and finding answers autonomously.
  • Communicates assumptions and gets clarification on tasks up front to minimize the need for rework.
  • Creates PRs that clearly articulate why the change is being made and what impact it will have.
Software Engineer 3
  • Gives timely, helpful feedback to peers and managers.
  • Understands how their work fits into the larger project and identifies problems with requirements.
  • Proactively and thoughtfully communicates with team in regards to questions, assumptions, blockers, and changes of estimated timeline.
  • Participates in team events, both within engineering and the broader team at Beyond.
  • Contributes to design docs and Tettra articles.
  • During critical outages or when there is a high-impact issue, clearly communicate the status and high-level impact in the appropriate public channels for visibility and awareness.

Competencies focus

Software Engineer 1 Software Engineer 2 Software Engineer 3
  • Career Development.
  • Growth Mindset.
  • Deliver Results.
  • Growth Mindset.
  • Deliver Results.
  • Inclusion.

reference: Individual Contributor competencies (internal link)

Checkpoints for reaching this level

Software Engineer 1
  • Has learned CS fundamentals.
  • Has become proficient in at least one modern frontend or backend language and framework.
Software Engineer 2
  • Has owned development, deployment, and improvements of multiple product features.
  • Has paired with teammates on a regular cadence (once every one or two weeks is recommended) for 12+ months.
  • Has created Jira tasks to track their work.
Software Engineer 3
  • Has owned development, deployment, and improvements of multiple product features.
  • Has paired with teammates on a regular cadence (once every one or two weeks is recommended) for 12+ months.
  • Has reviewed other engineers’ contributions through pairing or PRs weekly for 6+ months.
  • Has broken a Jira epic down into smaller pieces.

Trending Tags