Software Engineer - Publishing
We’re not your traditional tech company and we don’t aim to be. Going against the grain is in our DNA. Building a revolutionary product begins with revolutionary thinking. That’s why we value diversity of thought, background and experience. Together, we empower restaurants of all sizes to build great teams, increase revenue, improve operations, and delight their guests. We pair our deep understanding of the restaurant industry with powerful cloud based software and restaurant-grade hardware to deliver an intuitive all-in-one platform. Join us on our mission to empower the restaurant community to delight guests, do what they love, and thrive.
Do you like to solve complex problems at scale? Toast is looking for a key Software Engineer on the team responsible for owning and building the next generation of our publishing system. Our publishing system acts is the bridge between our web based restaurant configurations and the tablets that use those configurations every day for every single transaction. Our system is currently used daily in thousands of restaurants across tens of thousands of devices. We need help in embarking on a ground-up rewrite of this system with the goal of increasing our scale by orders of magnitude. The new version of this system will also support a multitude of new publishing features such as selective publishing, effective dates, and rollbacks.
Some projects we’ve been working on recently include:
- Introduction and scale of a new microservice to encapsulate and consolidate access to the published data and our Restaurant Graph structure across all of our microservices
- Design of registration and editing endpoints for schemas which all configurations will use
- End-to-end prototype of our next generation stack for editing and managing configurations in React, GraphQL, and Protocol Buffers
As a software engineer on the Publishing Team, you will be:
- Working with senior engineers and leadership to define and scope high-impact platform improvements
- hands-on code contributions working on a team of 2-4 software engineers, delivering results at a high level of quality
- Helping to define monitoring, deployment, and elevation strategies for your team’s production services
Do you have the right ingredients?
- Proficient in Java, Kotlin or other object oriented languages
- Proficient with traditional databases and alternative data stores
- Proficient in schema-first technologies such as Protocol Buffers
- Experience delivering high quality, reliable services to production
- Excellent cross-team communication skills on complex technical topics
- Empathy for users, both internal (other Toast teams) and external (our restaurants)
- Passionate about building great software
- Prior experience with distributed systems, microservices and capacity planning is a plus