Who we are:
Our story might surprise you. We’re the world’s largest restaurant company—encompassing KFC, Pizza Hut, and Taco Bell—but there’s a lot more going on behind the scenes than just frying chicken, baking pizzas, and serving up tacos. We put this delicious food in the hands of customers through apps, websites, kiosks, POS, and other digital dining experiences – and we are only getting started. Here in Chicago, we’re building out a bold team of hackers to help Yum! Brands deliver the next generation of software to 50,000 restaurants in more than 145 countries. That’s a huge responsibility, which is why we’re on a mission to find the most fearless engineers to join our software startup within Yum!.
Yum!'s vision for the future is simple: a world with more Yum!: with our iconic brands in more places, and more ways for consumers to access them. The key and not-so-secret ingredient in our recipe for growth is our unrivaled talent and culture, which fuels our results. And like all companies who win consistently, our brands, employees, and franchisees will need to continually adjust to stay relevant now and in the future. The software we’re building does just that: it serves people in new ways to make team members more productive and customers happier.
What we need:
The Point of Sales team is seeking a senior level developer who has both a very solid understanding of Computer Science concepts and a background demonstrating the application of those skills. The POS domain brings with it some very unique and exciting problems to solve: peer-to-peer replication, interacting with external in-store hardware, generalizing a solution for multiple brand needs, and performance tuning with the consideration that our app runs potentially all day long. The application is Android based but you need not have deep knowledge there provided you’re willing to learn when the task requires it.
Be working on an Android-based point-of-sale and operations platform that will be a critical tool in tens of thousands of restaurants around the world
Have the opportunity to work on challenging problems in an environment where you can have a very large impact on the end product
Solve problems with new and emerging technologies including distributed databases, real-time syncing, message queues, and distributed transactions
Interface with and support a myriad of hardware devices while building abstractions around them.
A bachelor’s degree in Computer Engineering or equivalent experience
Mastery of at least one OOP language. Kotlin is greatly preferred
A proven history of writing robust software. This includes having a solid grasp of and
respect for proper architectures and testing strategies
Experience architecting and building libraries, SDK, and tools for internal and external
Ability to self-direct and prioritize work for other developers
Willingness and ability to own/manage specific aspects of the development process
including implementation, testing, or deployment (CI/CD)
Good knowledge of Android
Strong background in reactive programming (Rx)
Experience with IoT, embedded devices, or Hardware Abstraction Layers
Experience with peer-to-peer networks and building distributed systems
Experience with both SQL and NoSQL databases, knowledge of their tradeoffs
Experience customizing the Android OS and deploying it on X86 hardware
Social proof of your passion for software development (blog, personal apps or websites,
meetup presentations, community involvement)
A few of our perks:
4 weeks of vacation PLUS holidays
5 sick days
2 paid volunteer days
Medical, dental, vision
Half day Fridays
Generous parental leave
A world-famous recognition culture