Principal Software Engineer
Published on December 04, 2023
Tandem is a technology and innovation studio that specializes in strategy, design, and development. We create custom software that inspires people and drives the business forward. As a talented group of thinkers and makers from many disciplines, we are brought together by a shared goal: do work that changes the world for the better. We always focus first on people — our clients, their customers, and our team — by collaborating to solve meaningful business challenges. We enjoy designing and building ambitious digital products and tools.
We’re hiring a Principal Software Engineer to join our team. Our Principal Software Engineers have extensive engineering experience and have contributed significantly to the development of multiple large-scale enterprise systems throughout their career. Our principal engineers are trusted advisors in all areas—to their project teams, Tandem clients, and the Tandem leadership team. Read on to learn about us, what it’s like to work with us, what we’re looking for, and our hiring process.
Who we are
Tandem is a technology and innovation studio that specializes in custom software. As a talented group of thinkers and makers from many disciplines, we share the same goal: bring designers and engineers together to solve meaningful business problems. We always focus first on people — our clients, their customers, and our team — by collaborating to solve meaningful business challenges. We enjoy designing and building ambitious digital products and tools.
What it’s like to work with us
As a consultancy, we have the opportunity to design and build software that provides solutions for our clients and their customers. We work directly with our clients on cross-functional teams that include engineers, designers, client partners, and business analysts. Our unique approach to consulting leads to a better developer experience and a higher quality of work life.
Our vision is to foster a supportive and collaborative environment where people are empowered to deliver exceptional work. Our culture promotes continuous learning where everyone is both a teacher and a student. We value humility and we all share a genuine interest in each other’s success.
Who you are
If you have a passion for engineering, the ability to work well on a team, collaborate with others, and possess many of the following skills, we encourage you to apply:
- Extensive experience being a technical lead and making software solution recommendations/decisions on multiple large-scale applications
- Strong proficiency in multiple full-stack development technologies including Ruby on Rails, React, relational databases, API development and other server-and-client-side frameworks
- Experience with cloud-based infrastructure and CI/CD, AWS preferred but not required
- Experience building applications that handle a significant amount of data requiring data modeling, microservice and integration design patterns while maintaining data quality, integrity and performance
- Excellent communication skills and the ability to communicate and get buy-in for technical concepts and roadmaps with non-technical clients and stakeholders
- Experience with Agile methodologies and the ability to coach and mentor teams in Agile best practices
- Align with our core values and possess a genuine desire to do work that provides value to our clients
In this role, you will...
- Strategically consider long-term impacts on clients and teams when making decisions about systems and architecture
- Act as the technical lead on projects, responsible for:
- Making strategic technology recommendations and decisions as well as leading the technical implementation of those solutions
- Managing the work assignments of less experienced developers
- Collaborating with design, business analysts and various stakeholders to define the scope of a project and deliver quality work
- Contributing to project planning, estimations, and providing progress updates to stakeholders
- Guide large-scale and long-term technical modernization efforts at the application, system, and infrastructure levels while supporting and coaching other team members
- Decompose large-scale enterprise systems and architectures in an easy to understand way for other team members
- Advocate for software testing best practices and CI/CD implementations
- Deliver code with proper error handling and logging
- Provide detailed documentation including PR descriptions, commit messages, and README updates with the goal of educating and mentoring
- Have advanced technical mastery of multiple languages and frameworks, and competency with a breadth of others
- Delegate implementation work to appropriately-leveled team members to meet project needs and grow their skills
Professional & Consulting Skills
- Establish trust with clients as a strategic advisor in matters of technical process, people, and product in addition to technology
- Lead technical discovery sessions and workshops to understand project requirements
- Navigate and resolve ambiguity at both the technical and business levels while supporting and coaching other team members
- Proactively identify strategies to add business value for clients, both within and outside of technical solutions
- Create opportunities and sponsor your team members to lead initiatives within your project
- Provide support and coaching to less experienced team members on technical implementations and strategies for client engagement
- Make highly effective use of delegation and team management to achieve success
- Adeptly use pairing as a mentorship and coaching strategy with other team members
Our career levels and responsibilities are cumulative. For a full list of responsibilities, please check out our Software Engineering Career Path.
How we work and our benefits
We care deeply about our team and strive to provide flexibility and benefits so each person can prioritize the things they care about.
For example, our core working hours are from 10am-4pm in your local time zone. The goal of core hours is to ensure that we can pair and collaborate in a high-bandwidth way during the majority of our workday while allowing us the flexibility that real life requires. You may notice that 10am-4pm for five days doesn't add up to 40 hours - yet 40 is generally what we expect to do. How you organize your work time outside of core hours is at your discretion, whether this is early mornings, late evenings, or weekends (though weekend work is not recommended).
Our other benefits include
- Healthy work/life balance with no overtime requests
- Competitive annual salary ($160,000-$185,000)
- 100% employer paid medical, dental, and vision plans for employee, spouse, and family
- 100% employer paid life insurance policy
- 100% employer paid short-term and long-term disability insurance
- 3 weeks of paid time off to start, increasing by 1 week each year up to 5 weeks off
- 3 paid conference days each year
- Annual learning budget for conferences, courses, online training, books, etc.
- Eligibility to enroll in the Tandem retirement plan with 3% employer matching after 6 months of employment
For a full list of all benefits and employment policies, please check out our Company Handbook.
Our hiring process
We use a 4 step process.
- Phone screen
- Take home code challenge
- Remote in-person interview
The first step in our process is to fill out our application form. You will be asked a few questions on that form. We value thoughtful responses.
If we decide to move forward, we’ll follow up with you to schedule an initial phone screen. Our phone screens are non-/low-technical. We won’t be grilling you on database design but are interested in learning about your career trajectory, professional experiences, what interests you, and overall fit.
If the phone screen is successful, you’ll receive our take-home code challenge. We understand that everyone has different responsibilities and priorities, and we want to give you the flexibility to showcase your skills on your own schedule. You will have 10 days to complete your challenge and submit it.
Once submitted, we’ll do an internal code review to determine if we’d like to do a remote in-person interview.
In a remote in-person interview, you’ll have the chance to meet with many of our team members, extend the code challenge, and participate in a consulting challenge.
Who you’ll be working with
- We've embraced salary band transparency and ensure our accountability through regular independently conducted pay equity audits
- We pair program every day and prioritize empathy in our pairing practices
- We build each other up and combat imposter syndrome, stereotype threat, and the confidence gap