logo-new mail facebook Dribble Social Icon Linkedin Social Icon Twitter Social Icon Github Social Icon Instagram Social Icon Arrow_element diagonal-decor rectangle-decor search arrow circle-flat

Software Engineer III

Tandem

Software Engineer III

Level 3 Software Engineers are independent team members who can not only organize their own daily work in a productive manner but also effectively estimate their work and stay aware of prioritization. They may be beginning to identify strengths and skill areas that they want to hone and specialize in. They also actively seek out opportunities to lend expertise to their team members and provide mentorship to others.

Typical Years of Prior Experience: 3-5

Salary Band: $105,000 – $130,000

Responsibilities & Impact

  • Consistently produces high quality work that may require only minor adjustments
  • Takes ownership of larger portions of a project and/or code base as a subject matter expert (SME)
  • Demonstrates leadership abilities within their project team
  • Supports project leads (Senior or Principal Engineers) proactively
  • Actively participates in helping to craft estimates and is more engaged in forward project planning
  • Leads phone screens, code reviews, and interviews for new candidates

Technical Skills

  • Works on high complexity features, such as those that integrate multiple systems or call out to a third party,  independently
  • Effectively debugs high complexity issues in the code using a systematic approach, with some coaching and pairing assistance from other team members. High complexity issues are those where the remediation steps are unknown and may require large refactors or multi-level system changes.
  • Executes medium complexity refactors, such as those that touch multiple components within many layers of the application
  • Models data for medium complexity features, such as those that require join tables
  • Consistently delivers code with test coverage for all of the primary functionality and some of the non-primary functionality, striving for at least 75% coverage
  • Delivers code with error handling for user input and other critical data errors in integral parts of application functionality
  • Consistently writes useful abstractions to increase code reusability and extensibility 
  • Provides detailed documentation for their work most of the time, including PR descriptions, commit messages, README updates, or content in the project management tool, with some coaching and pairing assistance from other team members
  • Communicates their opinions on technical matters and can explain the justifications behind their implementation decisions, appropriate to constraints of relevant requirements
  • Decomposes complex requirements into constituent parts and documents these tasks as effective stories
  • Provides supportive, specific, actionable design and product feedback and suggests feasible alternatives
  • Provides supportive, specific, actionable technical feedback to other team members in PR and code reviews, and identifies areas for refactoring, while providing high-level implementation direction

Professional & Consulting Skills

  • Proactively manages scope with an eye towards timeline and budget, with some coaching and pairing assistance from other team members
  • Produces realistic estimates for their individual scope of work at the story level. They explain assumptions, risks, and unknowns for their estimates.
  • Explains trade-offs in their decision making, with some coaching and pairing assistance from other team members
  • Identifies scope creep and escalates to their team. Offers alternatives to the team and presents those alternatives to the client.
  • Explains technical and business decisions to clients
  • Leads client calls and negotiates scope with the client when necessary, with some coaching and pairing assistance from other team members
  • Manages client expectations and has difficult conversations with clients, with some coaching and pairing assistance from other team members
  • Finds opportunities to unblock their team members’ work some of the time
  • Reliably completes necessary project management tasks in addition to technical tasks
  • Manages “up” to project leads and more senior members of the team with tact and effectiveness
  • Handles risk, change, and uncertainty within their personal scope of work effectively. Handles uncertainty within project scope of work effectively and supports team members through the uncertainty, with some coaching and pairing assistance from other team members
Let’s do something great together

We do our best work in close collaboration with our clients. Let’s find some time for you to chat with a member of our team.

Say Hi