Software Team Lead, Discounts

Toast Boston , MA 02298

Posted 4 months ago

We are a rapidly growing company that's revolutionizing the way the restaurant industry does business by pairing technology with an extraordinary 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 craft 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 Senior Software Engineer to play a leadership role on the team responsible for owning and evolving the way discounts apply to guest checks. Discounting is largely centered around a highly configurable, powerful Rules Engine, used to determine the eligibility of a discount. This team owns code that spans across our entire stack from our Android Point of Sale system, to backend microservices, to frontend configuration pages. It is used daily in thousands of restaurants across tens of thousands of devices. We need help in evolving our architecture to support ever more complex new features, and best-in-class monitoring as we scale to orders of magnitude our current size!

Some projects we've been working on recently include:

  • Functionality to trigger the discount based on the name or type of an ordered item

  • Validation of configuration structures across production in order to enforce a better structure (and evolve to new structures)

  • Complete re-architecture of the core engine code to be more portable across different platforms

  • Live differential analysis tool to compare production requests from the "current" version of the code with that of a "new" version of the code to spot differences before the "new" code goes live

As a software team lead on the discounts team, you will be:

  • Working with our CTO, Chief Architect, and Platform PMs to define and scope high-impact platform improvements

  • Leading a team of 2-4 software engineers to deliver results at a high level of quality

  • Making hands-on code contributions to your team's projects

  • Defining monitoring, deployment, and elevation strategies for your team's production services

  • Mentoring and developing team members

Do you have the right ingredients?

  • Proficient in Java or other object oriented languages

  • Proficient with traditional databases and alternative data stores

  • Proficient with Javascript or technologies such as React or Angular

  • Experience delivering high quality, reliable services to production

  • Excellent cross-team communication skills on complex technical topics

  • Prior experience as tech lead or team lead

  • Empathy for users, both internal (other Toast teams) and external (our restaurants)

  • Passionate about building great software

  • Experience with Kotlin is a plus

  • Prior experience with distributed systems, microservices and capacity planning 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.


See if you are a match!

See how well your resume matches up to this job - upload your resume now.

Find your dream job anywhere
with the LiveCareer app.
Download the
LiveCareer app and find
your dream job anywhere
lc_ad

Boost your job search productivity with our
free Chrome Extension!

lc_apply_tool GET EXTENSION

Similar Jobs

Want to see jobs matched to your resume? Upload One Now! Remove
Lead Software Engineer
New!

PMO Partners

Posted Today

VIEW JOBS 12/12/2018 12:00:00 AM 2019-03-12T00:00 Our client, a growing energy services provider, is looking to hire a Lead Software Engineer to join their growing team. The Lead Software Engineer is responsible for designing technology solutions that support the overall Product Technology strategy. The Lead Software Engineer must evaluate project requirements and produce high-level design deliverables that enable project teams to develop products that are robust, flexible, scalable, secure, and that support the strategic initiatives of the enterprise. The Lead Software Engineer must analyze, document and promote standards and patterns that represent the established architectural goals. Software Engineers are also responsible for researching, demonstrating and providing guidance on emerging technologies and industry trends. The Lead Software Engineer must maintain expert knowledge of internal and external systems. Along with strong technical skills, this person must have a tenacious desire to learn and understand business principles, concepts and strategy.<br /> <br /> Job Duties & Responsibilities: <ul> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Collaborate with Product Owners and project teams to understand business requirements, project goals and identify appropriate architecture plans</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Define and document application development principles, standards, and best practices</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Advocate adoption of architecture standards such as technical design patterns and canonical data models</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Evaluate emerging technologies and the evolution of current technologies to define a future vision roadmap for optimal application of technology to meet business needs</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Provide technical thought leadership to the development team</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Drive change, embracing and evangelizing appropriate evolution in software development technologies</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Communicate clearly, strongly and effectively to small and large groups</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Share internal product architecture knowledge with the development team</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Mentor technical resources</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Other responsibilities as required to support the company’s growth</li> </ul> Qualifications: <ul> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">8+ years of experience in software design and development, with at least 2 years in a technical leadership position</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Experience in web frameworks and technologies using AJAX, RESTful services, JSON, JavaScript, jQuery, C#, ASP.NET MVC, Microsoft SQL Server, MySQL and Python</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Experience in Mobile application development, preferably for Apple iPad devices</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Experience with embedded system development (nice to have)</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Experience with AWS cloud services and related technologies</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Solid understanding of software development best practices (micro-services architecture, design patterns, testable code, etc.)</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Solid understanding of and demonstrated experience in Agile software development cycle tools (JIRA, Confluence, Git, SVN, Continuous Integration, etc.)</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Intense desire to continuously improve the software team efficiency and processes</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Must be able to communicate effectively with internal customers in a clear, concise and understandable manner both verbally and in writing</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Excellent problem solving, critical thinking, and communication skills with an ability to convey technical information in a clear and unambiguous manner</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Experience working in cross-functional role and with global teams will be an advantage</li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Ability to work in an extremely fast paced and challenging environment</li> </ul> Education, Training & Certifications: <ul> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">BS or MS degree in computer science or equivalent<o:p></o:p></li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">8+ years of experience in software design and development<o:p></o:p></li> <li style="padding: 0; margin: 0;" style="padding: 0; margin: 0;">Minimum of 2 years in a technical leadership position<o:p></o:p></li> </ul>  <br /> This is a tremendous opportunity to join a fast-growing, fun organization.  Interested candidates, please contact Brian at <a href="mailto:brian@pmopart.com">brian@pmopart.com</a> or 978-852-7053.<br />   PMO Partners Boston MA

Software Team Lead, Discounts

Toast