Skip to main content

SWE 2 - Software Engineer II

I plan, design, and deliver software projects autonomously ensuring coordinated rollouts and customer impact.

Scope

You execute against my team’s mission and goals. You expand beyond the project to project scope by up-leveling SWE1s, promoting good code health, practicing operational excellence, and progressing the mission of the team.

scope


Craft

Your focus is primarily on mastering the ability to deliver high quality features that are free of glaring errors and whose code is easily read by others. You maintain and adapt your historical contributions to improve their quality and extensibility. You are able to translate product requirements into code and able to identify areas of the code base that are difficult to develop within.

You are learning how to design and architect solutions for projects that your team works on. You create documentation such that decisions can be communicated clearly and referenced historically, helping others build on your contributions.

ResponsibilityBehaviors
Technical
  • I expand my knowledge beyond the project scope and learn about each system or area of code my team owns.
  • I write succinct maintainable code and documentation with a bias for simplicity and ensuring readability for my peers.
  • I can work independently on any development task, delivering code to the customer on time.
Scoping & Estimation
  • I scope and implement project-level solutions in collaboration with project leads.
Quality
  • I consistently follow best practices and identify gaps in or lack of best practices.
  • I advocate to reduce tech debt in areas that are tough to develop in or deliver changes on time within.
Operational Excellence
  • I can debug effectively within my team’s domain on most areas we own.
  • I use tools to make data driven decisions, instrumenting code for future system monitoring and diagnostics.
  • I am dependable during on-call rotations and generally resolve issues independently.
Design
  • I write project proposals that further my team’s mission.
  • I translate product designs into written technical specs.
  • I contribute to well written RFCs for my Guild.

Communication and Collaboration

You contribute to planning meetings for your team with Product, Design, and Software by ensuring that the features your team takes on are impactful to the end customer. You communicate options on how your team could deliver projects to Product weighing the tradeoffs between quality and velocity against the deliverable.

You represent your team well through the Guilds, Tech Talks, Product demos, and written communications. You communicate both wins and concerns candidly and in a timely manner to your manager or team lead and always detail your communications with data.

ResponsibilityBehaviors
Autonomy
  • When learning a new area I seek input from colleagues with area expertise.
  • I proactively ask for feedback from my manager and peers, receive it openly, and incorporate it where necessary.
Accountability
  • I Identify and advocate for meaningful improvements or alternative options on projects or during project planning to help deliver high quality and on time.
  • I provide estimates on my work that are generally accurate and can be broken down into sub-deliverables.
Data Driven
  • I seek data to better understand how members interact with the product and reflect on my own use of WHOOP.
  • I communicate clearly with analyzed evidence rather than with unproven assumptions.
Clarity
  • I draw attention to blockers quickly, clarify requirements, and share my concerns constructively.
  • I am beginning to understand how to translate technical topics to non-technical audiences.
  • I leverage my 1:1 meeting with my manager to discuss issues and work with them to set clear resolutions.
Drives Consensus
  • I trust my teammates and always assume good intent, allowing me to disagree but still commit.

Coaching

You begin to coach the SWE1s closest to your team on their craft through project leadership, code reviews, and design feedback. You collaborate closely with them such that they may experience your level of craft first hand.

You grow your influence on your team through reliable feedback in code reviews, concise and explicit project planning, and empathetic yet candid feedback to individuals both upward and downward. You look to maintain awareness of your team’s wellbeing, code health, and mission.

ResponsibilityBehaviors
Mentorship
  • I lead by example through my code quality and collaboration with SWE1s, providing feedback in pursuit of improving together.
Team Influence
  • I interview candidates for my team and group, providing detailed and candid written feedback.
  • I improve team code health through timely code reviews for my peers.
  • I adjust my approach and help keep my team focused when faced with setbacks.

Moving to the SWE 3 level

You have been at the SWE2 Level for 18 months and operating at the Senior level for at least 9 months.

Here are some areas you might focus on to bridge your experience at the next level:

  • You begin to gain knowledge across teams in your group and identify commonalities that can be leveraged to accelerate the group and drive alignment between teams.
  • You lead a project, taking point on translating product requirements into technical specifications, building architecture diagrams, and breaking down the project for your team. You help your team drive success and hold a high quality bar for the deliverable. You coordinate and build a rollout plan(s) and aim to maximize operational success by shipping small deliverables. You keep all stakeholders up to date throughout the process, making sure to celebrate milestones as they are accomplished with the team.
  • You analyze technical debt within your group by identifying areas of risk. You seek to invest in areas that are at the intersection of high severity and high probability. You consider development speed as a risk to being able to deliver product to market and begin to shape plans to address technical debt within your group advocating for its prioritization.
  • You look to contribute to larger technical challenges that level up your stack’s quality and velocity. You gain buy-in from senior leaders in your stack and management and drive the prioritization and planning ensuring the initiative is impactful.
  • You own the team’s product domain through proactive engagement with member services by creating support documentation and handling service outage communications. You evangelize your team's solutions and share knowledge across the department.