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

Senior Software Engineer

Tandem

Senior Software Engineer

Our Senior Software Engineers are those engineers who have strong technical and consulting skills and who have demonstrated leadership ability with positive responses and feedback from their peers and team members. They may specialize in specific technical or consulting areas though not necessary. Our senior engineers should aim to support the growth of their team members through mentorship and coaching.

Typical Years of Prior Experience: 5-8

Salary Band: $125,000 – $165,000

Responsibilities & Impact

  • Serves as technical lead on projects which includes:
    • Making technology selections
    • Establishing architecture
    • Managing the workload and work assignments of other team members while staying conscientious of individuals’ strengths, weaknesses, and goals and playing to these when managing work assignments
    • Collaborating with design and/or product leads on scope and definition
    • Contributing to the Project Weekly meeting
    • Ultimately shepherding the execution of the technical vision of the project
  • Works with the other leads on a project (product, design, etc) to lead collaboratively
  • Demonstrates strong technical abilities, through regular contribution of quality code and sound architectural decisions
  • Clearly articulates requirements and direction to other members of the team
  • Proactively provides feedback to Tandem’s leadership team on processes (hiring, feedback, delivery, sales, etc) to contribute to continuous improvement of the organization as a whole

Technical Skills

  • Works on high complexity features, such as those that integrate multiple systems or call out to a third party,  independently.
  • Delivers code that is easily understood by all members of the team and takes steps to make sure the team learns from their code. 
  • Effectively debugs high complexity issues in the code using a systematic approach. High complexity issues are those where the remediation steps are unknown and may require large refactors or multi-level system changes.
  • Executes high complexity refactors, such as those that change the contracts between integrations.
  • Models data for high complexity features, such as those that require polymorphic associations, manipulation of advanced SQL concepts like views, triggers, or stored procedures, or requires complex normalization while considering performance
  • Builds scalable frontend solutions with an eye towards component architecture (separating business and presentation logic), accessibility, performance, and other web best practices
  • Consistently delivers code with test coverage for most of the primary functionality, and some of the non-primary functionality. Primary functionality is that which is needed to meet the core requirements, such as data parsing logic. Nonprimary functionality is non-essential to the core requirements, such as a helper function for displaying date strings.
  • Delivers code with error handling for user input and other critical data errors in integral parts of application functionality providing graceful fallback conditions
  • Builds solutions with an awareness of web security best practices, such as the OWASP Top Ten
  • Provides detailed documentation for their work most of the time, including PR descriptions, commit messages, README updates, or content in the project management tool
  • Communicates their opinions on technical matters and can explain the justifications behind their implementation decisions, appropriate to constraints of relevant requirements while also explaining other solutions considered and the benefits and considerations of those approaches
  • Resolves technical debt proactively within the framework of overall client and project objectives
  • Supports other team members in languages and frameworks that they may be less comfortable with by drawing on past experiences and breadth of technical knowledge
  • Collaborates with design, product, and other disciplines on the scope and definition of features

Professional & Consulting Skills

  • Successfully plans and delivers large, long-term projects and adeptly negotiates scope tradeoffs with clients
  • Defines roadmaps and sets vision for long-term projects
  • Proactively manages scope with an eye towards timeline and budget
  • Produces realistic estimates for their team’s scope of work at the sprint level. They explain assumptions, risks, and unknowns for their estimates.
  • Explains trade-offs in their decision making
  • Leads client calls and negotiates scope with the client when necessary
  • Manages client expectations and has difficult conversations with clients
  • Actively solicits opinions of all members of the team and coaches them to formulate well-researched, technically sound opinions
  • Supports their team member’s delivery with helpful and kind accountability strategies
  • Mentors their teammates in an open, respectful, flexible, empathetic manner
  • Handles uncertainty within project scope of work and team effectively and guides team members through that ambiguity
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