Overview

Toast is driven by building the restaurant platform that helps restaurants adapt, take control, and get back to what they do best: building the businesses they love.

Our team is responsible for processing credit card payments on behalf of our restaurants. Our system is a set of Java Dropwizard services deployed to AWS, interacting with thousands of Android tablets using modern payments hardware, as well as with partners through our API. Payment processing is a key source of Toast’s revenue and also the lifeblood of our customers’ business: we process millions of dollars in transactions every day. We are looking for a Principal Software Engineer to join our team as we scale our systems to meet future demands.

About this roll*:

  • Design, build, deploy, and maintain highly resilient and scalable systems that are critical to our customers’ success
  • Lead complex projects that span multiple teams to improve functionality and reliability for our customers
  • Design solutions that anticipate and accommodate future needs while considering tradeoffs
  • Effectively communicate technical direction, guide teams through execution and drive organizational quality practices
  • Act as a force multiplier in improving engineering productivity
  • Diagnose performance bottlenecks and implement optimizations

Do you have the right ingredients*? 

  • You are respectful, empathetic, and humble
  • You have experience presenting an architecture vision and helping teams realize it
  • You have experience shipping complex mission critical production services
  • You have ownership over entire products and experience scaling distributed systems
  • You have a growth mindset with an emphasis on improving yourself and your functional area
  • You are viewed as a leader in your functional area and are trusted to make technical decisions that impact short and long term business objectives

Our Tech Stack

Our products run on a stack that ranges from guest and restaurant-facing Android tablets to backend services in Java to internal, guest-facing and restaurant-facing web apps. Our backend services follow a microservice architecture written using Java and DropWizard; we use AWS extensively, ranging from DynamoDB to RDS to Lambda. We have our own platform for dealing with user management, canary deployments, and robust load balancing. We store data in a set of sharded Postgres databases and utilize Apache Spark for large scale data workloads including query and batch processing. The web front-end is built using React and ES6. Our main point of sale application is an Android application written in Java and Kotlin. For data between tablets and our cloud platform, we rely on Pulsar event driven architecture along with some RabbitMQ clusters as well as direct tablet communication to the back end.

Our Spread of Total Rewards

  • Unlimited Vacation
  • Sabbatical opportunity after five years
  • Professional Development Reimbursement Program
  • Commitment to Employee Wellness through resources such as a quarterly Wellness Stipend
  • Various peer and company recognition programs
  • 401(k) and matching
  • Medical, Dental, & Vision Coverage
  • Mental Health Benefits
  • Subsidized backup childcare

*Bread puns encouraged but not required

#LI-REMOTE

The base salary range for this role is listed below. The starting salary will be determined based on skills and experience. In addition to base salary, our total rewards components include cash compensation (overtime, bonus/commissions if eligible), equity, and benefits.
Pay Range
$177,000—$277,000 USD