Tarro

Building a point-of-sale platform from zero to one

Designing a connected restaurant operations platform that brings ordering, payments, and delivery management into one seamless experience.

Role
Senior Product Designer, sole designer on POS
Year
2025–Present
Platform
Countertop POS, driver app
Status
In production, 32+ locations

Summary

Problem

Restaurants using Tarro still relied on third-party point-of-sale systems for in-person transactions, which meant fragmented workflows, duplicate data entry, and extra operational overhead.

What I did

I lead end-to-end design for the POS: discovery, workflow definition, interaction design, usability testing, and implementation, alongside one product manager and seven-plus engineers.

Outcome

Launched a 0→1 POS platform now serving 32+ restaurant locations, bringing ordering, payments, and delivery operations into one connected experience.

Tarro POS home screen running on a Sunmi countertop terminal: a sidebar with daily report, day close out, stock availability, dashboard, and cash drawers, beside the date, time, and large actions for Start order, Quick pay, Orders, Drivers, Tables, and Open cash drawer.

Overview

Tarro provides technology that helps independent restaurants manage phone orders, online ordering, delivery, and customer engagement.

As the company expanded its product ecosystem, a critical gap remained: restaurants still relied on third-party point-of-sale systems to manage in-person transactions. This created fragmented workflows, duplicate data entry, and additional operational overhead for restaurant staff.

To close that gap, Tarro set out to build its own POS platform, bringing the entire order lifecycle into one connected system.

My role

As the sole designer dedicated to POS, I lead end-to-end product design alongside one product manager and a team of seven-plus engineers. My responsibilities span product discovery, workflow definition, interaction design, usability testing, and implementation.

Beyond designing individual features, I help establish the product’s overall UX direction, balance competing operational requirements, and continuously refine the experience based on direct customer feedback.

The challenge

Restaurant environments are fast-paced, unpredictable, and operationally complex. Staff need to take orders quickly, process payments accurately, manage deliveries, and respond to interruptions without losing context.

At the same time, restaurants vary significantly in how they operate. A Chinese-American takeout restaurant with hundreds of menu items has very different needs from a pizza restaurant with complex modifiers and customizable combinations.

The challenge was to design a flexible platform that could accommodate these differences without making everyday tasks slower or more complicated.

Designing alongside real restaurant operators

Restaurant workflows are difficult to fully understand from behind a desk.

To validate our assumptions, I worked directly with operators in live restaurant environments, observing how staff navigated ordering, payments, and delivery during everyday service. I visited restaurants in New York and Philadelphia to see how workflows differed across businesses.

These observations revealed friction that wasn’t always apparent in prototypes, from unnecessary scrolling to mismatches between system behavior and staff expectations.

I translated these insights into targeted design improvements, balancing immediate usability needs with the long-term flexibility required to support different restaurant operations.

Designing for speed under pressure

In a restaurant, every unnecessary tap adds friction.

Early iterations of the ordering experience exposed opportunities to simplify navigation, reduce scrolling, and make frequently used actions easier to access.

I focused on establishing a clear hierarchy around the most common workflows, ensuring that starting an order, navigating the menu, and completing a payment required minimal effort. This included consolidating order entry points, rethinking navigation placement, and making better use of limited touchscreen space.

The goal wasn’t simply to reduce the number of interactions, but to make the interface predictable and efficient during busy service periods.

POS menu with category chips and a grid of item buttons beside the order ticket and running total.
The ticket and total stay fixed on the left while categories and items sit within reach on the right.

Balancing flexibility and simplicity

Restaurant menus introduce significant complexity.

Some restaurants manage hundreds of dishes with relatively few modifications, while others rely heavily on customizable items, nested modifiers, and combination specials.

A rigid interface would be too limiting for complex restaurants, while an overly configurable interface would introduce unnecessary cognitive load for simpler operations.

I explored different approaches to menu navigation, modifier selection, and item customization to support both use cases. The resulting design balances flexibility with clear interaction patterns, allowing the product to accommodate different restaurant models without requiring entirely separate experiences.

Connecting delivery operations

Delivery management extends far beyond assigning an order to a driver.

Restaurants need visibility into available drivers, delivery locations, route assignments, and order statuses while coordinating activity between staff and drivers.

I designed interconnected experiences across the POS and driver app, enabling staff to assign orders, batch nearby deliveries, monitor progress, and manage driver availability.

One of the most important design considerations was determining how much control should belong to drivers versus restaurant staff. Customer feedback revealed that some operators wanted greater oversight, while others preferred more driver autonomy. We introduced flexible workflows to accommodate these preferences while maintaining visibility and control across the delivery process.

The delivery side of this work is covered in its own case study: Driver Management.

POS dispatch view: a driver list on the left, unassigned orders with addresses and due times in the middle, and the selected driver’s run beside a map.
Dispatch: who’s available, what’s unassigned, and where the selected driver’s run stands — on one screen.
Full-screen dispatch map showing a driver’s route between three numbered stops, with the stop list and ETAs on the right.
The full-screen map, where stops can be reordered and the route recalculates.

Designing for real-world constraints

Unlike desktop software, restaurant POS systems operate in environments where usability challenges extend beyond the screen.

The Tarro POS home screen at full size: oversized tiles for the six actions staff reach for most.
Oversized targets and high contrast: the home screen is read at a glance, mid-service.
  • Hands and hardware

    Greasy fingers, screen glare, and limited display space on a countertop terminal.

  • Varied experience

    Users with very different levels of technical experience, on the same screen.

  • Bilingual interfaces

    Some restaurants required bilingual interfaces and larger text for accessibility.

  • What it shaped

    These constraints influenced decisions around button sizing, spacing, visual hierarchy, navigation, and interaction patterns.

Designing for these environments reinforced the importance of prioritizing usability over visual complexity.

Iterating beyond launch

Launching the POS was only the beginning.

As restaurants began using the product in production, new patterns emerged that challenged our initial assumptions.

I combined direct customer feedback, on-site observations, and product telemetry to identify opportunities for improvement. These insights informed iterations across ordering, payments, driver management, and menu customization.

Rather than treating launch as the finish line, we approached the product as an evolving system that needed to adapt to real operational behavior.

Impact

What began as a new product initiative has grown into a production POS platform serving more than 32 restaurant locations as of October 2026.

I helped take the experience from initial concepts into an expanding rollout. Along the way, we established core workflows, validated the product in live restaurant environments, and built a foundation for continued expansion.

The work also pushed me to extend beyond traditional design deliverables, contributing frontend code and working directly with engineering to accelerate iteration.

What’s next

As adoption grows, the next challenge is scaling the experience. Our focus is shifting from validating core workflows to making the product easier to configure, onboard, and maintain across a growing variety of restaurants.

I’m continuing to explore opportunities in menu automation, contextual product education, and workflow optimization, using customer feedback and behavioral data to guide future improvements.

Key takeaway

Designing a POS from the ground up reinforced that successful products aren’t defined by feature completeness alone. They’re defined by how effectively they adapt to real-world constraints, support diverse operational needs, and evolve through continuous learning.