Skip to content
Fadhil Muhammad
All work

DMB KioskProduct delivery

A self-ordering kiosk for a hospitality group

The self-ordering app for Android TV kiosks and tablets in DNA Group's food and beverage outlets. I designed the flow and built the app.

Role
Flutter developer. Owned UI/UX, API integration and state management
Period
Oct 2024 – Sep 2025
Team
Team of 5: backend, project manager, mobile (me), admin, IT support
Status
Piloted, rollout on hold
Illustration of the self-ordering kiosk: a menu grid and order summary on a landscape TV screen, with a tablet showing the same flow
  • 1hospitality outlet piloted
  • 2device types from one codebase: TV kiosk and tablet
  • 4other management systems I built features for

The kiosk went live in one hospitality outlet. A wider rollout was put on hold because of the company's budget.

Context

The problem

DNA Group runs hotels, entertainment venues and F&B outlets in several Indonesian cities. At peak hours customers queued at the counter, staff re-typed orders into the POS, and every outlet had different hardware.

Solution

What we built

A self-ordering app for Android TV kiosks and tablets. One Flutter codebase, with layouts tuned for each screen size, connected to the group's ordering and POS APIs. The state layer is kept simple so the flow behaves the same at every outlet.

  • Flutter
  • Dart
  • REST API
  • Sentry
  • Google Play

Decisions

Decisions and trade-offs

One codebase for two kinds of device

Kiosks and tablets share business logic and state. Only layout and input handling differ, so there is less to test and every outlet runs the same version.

Built for first-time, standing users

Big touch targets, no hidden gestures, and the order summary always on screen. Nobody reads a manual at a kiosk.

My role

What I owned

  • Turned the wireframes into an ordering flow that works for someone standing at a kiosk for the first time.
  • Integrated the ordering API, including error and retry states.
  • Designed the state architecture shared by the TV and tablet layouts.
  • Released and maintained the app on Google Play with the group's other apps.

Reflection

What I'd do differently

A kiosk is closer to signage than to an app. Next time I'd watch people use it on site before drawing the first wireframe, not after the first release.

Next case studyPurchasing, sales and inventory in one system

Have a process that should be a system?

I'm not looking for a new role, but I'm always up for a conversation about a system, a process or a collaboration.