Staff Software Engineer, Customer Experience Transformations
We are a rapidly growing company that’s revolutionizing the way the restaurant industry does business by pairing technology with an unrivaled commitment to customer success. We help restaurants streamline operations, increase revenue, and deliver amazing guest experiences through our platform that combines restaurant point of sale, guest-facing technology, and award-winning customer support. As a Toaster, you will be challenged to take on meaningful projects that will help shape the future of the company. Join us as we empower the restaurant community to delight guests, do what they love, and thrive.
Toast is looking for a Staff Software Engineer to play a critical role on the team responsible for evolving our experiences for delighting our customers. The mandate of this team is broad, and covers our Business Operations, Customer Onboarding & Automation, E-commerce and Customer-facing applications used by restaurateurs on a daily basis. At Toast, we leverage a number of enterprise applications including SalesForce for activities of our business operations, sales, and customer success teams. We also leverage NetSuite for our financials. These systems, along with others, play a critical role in how we engage and maintain high quality relationships with our customers. We are dealing with problems of scale and representing billions of dollars in value to our customers. As we continue to grow, we expect the demands for better customer experiences to increase rapidly. In order to meet these demands, we will need to build new systems, microservices and integrate better with existing systems in an extensible, robust, scalable and continuous delivery way. We need your help to improve our platform and add the next generation of features to this absolutely mission critical part of our product.
As a staff software engineer on the Customer Experience Transformation team, you will be:
- Designing, building and maintaining high performance, flexible and highly scalable web and mobile applications
- Participating in designing, estimating effort, implementing, testing, debugging, configuring, integrating and documenting database, middle-tier and front-end code
- Diagnosing performance bottlenecks and implementing optimizations
- Thinking in terms of the end-user and designing accordingly
- Surveying and evaluating available technology options
- Actively contributing to product design and feature selection discussions
- Participating in code reviews to ensure technical implementations meet functional requirements
- Mentoring other team members
Do you have the right ingredients?
- Proficient in Java or another object oriented language
- Proficient with traditional databases and alternative data stores
- Proficient in building single-page applications for the web using any combination of Angular, Backbone, jQuery, etc.
- Well-versed in tiered web application architecture and database design patterns
- Passionate about building great software
- A lifelong learner
- Known for having a get unblocked attitude
- Microservices knowledge is preferred
- Previous exposure to a SaaS product is a plus
Our Tech Stack
Toast’s 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 8 and DropWizard; we use AWS extensively, ranging from S3 to RDS to Lambda. We have our own platform for dealing with user management, service elevations and robust load balancing. Toast stores data in a set of sharded Postgres databases and utilizes Apache Spark for large scale data workloads including query and batch processing. The front-end is built primarily using Angular and ES6. The main Toast POS application is an Android application written in Java and Kotlin. For data between tablets and our cloud platform we operate RabbitMQ clusters as well as direct tablet communication to the back end.