CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

CONTEXT

The evolution of OnDemand’s booking page

MY ROLE
Senior Product Designer

TEAM
Product Manager, Tech Lead, QA

TOOLS
Figma, User-Interviews, Questionnaires, Hotjar

The OnDemand booking page is the first step a manager takes to create a job and invite workers. This flow connects hospitality venues and events with vetted workers in real-time. The booking page needed to work effectively on both desktop and mobile platforms.

My Role: As Senior Product Designer, I worked closely with the Head of Design, Product Manager, and key stakeholders to understand and evolve this experience through end-to-end design, evolution, and upkeep.

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

PROBLEM

How to simplify complex customisations

The original booking experience was functional but needed significant improvements to meet user needs as the product matured. Initial assumptions about what managers needed to book jobs proved incomplete once real users began to interact with the page. Specific issues included:

Job creation felt fragmented and unclear, especially on mobile.

Critical details like location precision weren’t flexible enough for complex venues.

Managers struggled to handle multi-day or recurring bookings efficiently.

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

RESEARCH & INSIGHTS

Rather than relying on speculative design, the team leaned into user feedback and pattern observation:

Reviewed existing booking pages from similar commercial spaces (like uber & airbnb) and comparable UI patterns to find what worked well in other systems.

Drew on past experience from previous projects (like Gumtree) to understand core data entry problems and mobile limitations.

Collected direct client feedback informally and via tools like Intercom to uncover pain points that only appear in real usage.

CONTEXT
PROBLEM
RESEARCH

PROCESS
SOLUTION
IMPACT
REFLECTION

PROCESS

Lean, iterative approach

The design process was iterative and user-driven:

  • Started with a basic booking form that captured essential data: location, date & time, and position details.

  • Progressively refined the form based on early user interaction, feedback loops, and stakeholder prioritisation.

  • Designed desktop and mobile versions independently to respect the strengths and constraints of each device:

    • Desktop: One-page booking form with robust controls.

    • Mobile: Progressive form to reduce clutter and aid focus.

  • Incorporated quality-of-life enhancements and edge-case solutions as they emerged from real booking use.

Where it started…

Location

Address field

Job date & time

Calendar functionality

Position details

Position name, tier,
no. needed, start time, end time, breaks, attire details

…to where we eventually end up.

Job Name

Add unique name field

Position details

Position name, tier,
no. needed, start time, latest start time, end time, breaks, bonus incentives, specific instructions, edit/view position responsibilities, view/edit attire details

Manager details

Select other managers that may not be booking the job

Extra docs.

Adding the ability to upload any docs such as PDFs that need to be checked before starting a job

Location

Address field

Ability to refine on map

Travel details

Giving the option to add a travel stipend for workers

Job date & time

Calendar functionality

Multi-job functionality:

Ability to handle re-occurring booking

Ability to handle staggered dates

Training

Will there be any training required before the job begins?

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

SOLUTION

The final design delivered a comprehensive, flexible booking experience that catered to varying needs:

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

SOLUTION Cont.

The following demonstrates how we refined OnDemand to cater towards the clients needs. Whether quality of life updates or completely new features, it had to work across both desktop web and mobile app.

“The address isn't showing the exact location”

I quickly learned that for some job managers – particularly those hiring for stadium or large venue events – limiting them to one address wasn’t enough. This is because workers may be required to use the staff entrance or different entry points not easily found via generic address information.

So, I added the ability to allow finer tweaks directly on the map itself – with the job manager able to move the pin to the exact location they require. This would then show up on the invite screen for a worker to see and more easily navigate the venue.

Adding the ability to move the pin-drop to an exact location.

“How can I book more than one day?”

Something that came up early in development was how to handle multi-day bookings. Job managers didn’t want to create one booking and then go through the entire process again just to add another booking with same or slightly varied details. I updated the design to allow for not only repeats of the same booking type, but also to allow for staggered day, multi-day and repeat occurring bookings.

The ability to choose one date, multiple dates, staggered date, re-occurring dates.

Mobile App: The ability to press-and-hold in order to create re-occurring bookings

“If booking multiple days, how can I easily add the same position across those days, or change the positions depending on which day is selected?”

After enabling multi-day bookings, the team needed to figure out how to handle flow on impacts for other data, such as impacts to setting up which workers could be invited to a job. For example, the number of workers from one job to another could vary, the tiers of experience and payment could vary, as could start times, etc.

The solution for this was to include the ability to select previously established positions – utilising the historical data from previous bookings.

Adding positions from previously saved positions reducing significant amount of time

“I want to be able to change the positions attire”

A use-case appeared within our catering clients, asking for ways to change the attire of a position based on the bookings they were creating – as opposed to being associated with roles or positions, which is where we’d made that function available. As a result, it was added to the job booking process.

Desktop: Assigning attire opens up a modal to select individual clothing items

Mobile: Assigning attire opens using native app pattern to select individual clothing items

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

IMPACT

The iterative bookings redesign transformed the experience from a rigid, basic form into a dynamic, flexible tool that better matched managers’ actual workflows.
Post-iteration results included:

  • Greater booking accuracy through better location precision and expanded position detail fields.

  • Reduced friction for complex jobs, especially multi-day or recurring bookings.

  • Improved mobile usability so managers could create jobs on the go without confusion.

  • Enhanced confidence that invites and shifts were being created correctly the first time.

CONTEXT
PROBLEM
RESEARCH
PROCESS
SOLUTION
IMPACT
REFLECTION

REFLECTION

This project demonstrated the value of evolving a design based on real behaviour rather than assumptions. Even straightforward forms can grow complicated when subjected to real business needs and diverse workflows. Breaking down the booking experience for mobile and desktop independently, responding to edge cases, and allowing clients to iterate quickly all contributed to a more usable product.

Ultimately, the evolution of the job booking page helped increase engagement and activity, more managers successfully created bookings, which translated to more worker invites and fulfilled gigs.