PERC-o-Matic: Point-of-sale software
Spawning from the needs of BIGGBY COFFEE's highly customizable menu, PERC-o-Matic was a project to redesign point-of-sale software from the ground up with customer customizability and flexibility in mind.
When I started working at BIGGBY COFFEE, they were using an industry standard point-of-sale (POS) software for conducting their transactions. After getting to know the needs of the corporate office, the franchisees, and the customers, it became very clear that the POS software was not meeting the unique needs of the quick service coffee concept. There's something quite different about the modern coffee shop from many other restaurants: the percentage of customers that customize their beverage. The quirky needs of coffee connoisseurs has become somewhat of a meme, even. What this means from a POS software perspective is a few key things:
Pricing is inconsistent dependent on ordering. I'm sure we've all encountered this - you can get a Big Mac at McDonald's for cheap if you order a McDouble with Mac Sauce and lettuce.
Inventory analysis is extremely hard. For example, if some customers get 1 shot in a latte, and other customers get 6, the milk usage that fills up the rest of the cup varies wildly.
Product popularity is hard to gauge. If 50% of customers order a Caramel Latte with vanilla added, and the other 50% order a Vanilla Latte with caramel added (effectively the same drink ordered 2 different ways) there's no automatic way to represent the popularity of caramel and vanilla.
Recipes are extremely hard to remember. What's the rule again for syrup when a customer asks for "light" syrup? What if it's a small vs a grande?
These problems all originate from a few key software design choices that most POS systems, even modern systems like Square, make. With PERC-o-Matic, we set out to rethink the POS system, with a few key innovations.
Represent menu items as collections of quantifiable ingredients. A "Big Mac" is not an atomic "Big Mac" unit, but rather - made up of a sesame seed bun, a middle bun, 1 tbsp lettuce, 2 slices of cheese, 2 patties, 2 pickles, etc. This should
Customer customizations should act on the ingredients list directly. This means recipes reflect the real components, and inventory matches what is actually produced.
Item prices should be determined by finding the item that most closely represents the item as currently constructed. That's right, if your sneaky customer tries to order a McDouble with mac sauce and lettuce, it's gonna convert that into a Big Mac, hold the middle bun.
This was only the tip of the iceberg though; the final user experience. Under the hood, there were so many other things that needed to be overhauled:
Offline processing. With a single-unit store it's not okay if your internet goes down that you have to stop processing transactions. This means: database syncing, time stamp managment, cachine of credit card/loyalty card information, etc.
Tight customer loyalty integration. Every transaction tied to a customer, at the transaction table level.
Autocomplete item search. Come on, industry, get with the basics.
And all of this, we wanted to do under budget, while minimizing key presses needed for most common items to maximize user interaction speed, and maintaining PCI compliance for processing credit card data.
Oh, and we had a team of just 2-3 of us :) What a glorious few years it was!
PERC-o-Matic is now BIGGBY's point-of-sale software in all of its 300+ locations, and going strong.