Software Engineer Co-op: Fall 2019
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 self-motivated individuals who love building great software and want to have fun while doing it. We work extensively with Android, iOS, and web front ends, where we work hard to provide a well-designed user interface for our customers. Our infrastructure runs in Amazon Web Services where we run Java microservices in Docker containers; our customers rely on us to keep this infrastructure fast and stable so that their point-of-sale system "just works", despite being a complex distributed system. We need talented engineers to build and maintain the highest quality product as our vision moves forward.
What you will do:
- Work on a small team of 3-6 engineers, responsible for entire modules of the Toast product
- Build, and maintain high performance, flexible, and highly scalable web and mobile applications
- Participate in designing, estimating effort, implementing, testing, debugging, configuring, integrating and documenting database, middle-tier and front-end code
- Diagnose performance bottlenecks and implement optimizations
- Think in terms of the end-user and design accordingly
- Actively contribute to product design and feature selection discussions
- Participate in code reviews to ensure technical implementations meet functional requirements
Do you have the right ingredients?
- Deep Java development experience
- Mobile software development experience, preferably with Android
- Well-versed in tiered web application architecture and databases
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. The main Toast POS application is an Android application written in Java and Kotlin. Our backend services follow a microservice architecture written using Java 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 moving towards React and ES6. For data between tablets and our cloud platform we operate RabbitMQ clusters as well as direct tablet communication to the back end.