Getting a reliable ride in a city is slow, expensive, and unpredictable. Taxis are hard to hail, dispatch is unreliable, payment is awkward, and there is no transparency on price, ETA, or driver quality.
Uber-style Rideshare - helping city riders summon a car on demand and instantly see a driver, live ETA, and an upfront price, while turning idle drivers into reliable, well-matched supply through automatic dispatch and seamless cashless payment.
Every job is expressed at four depths, from a minimal basic version to a comprehensive one. Each dot is a feature — the median climbs with depth (a comprehensive feature is 5.3× harder on average than its basic version), but so is the overlap.
7 customers × 4 adoption stages = 64 cohorts. Each cell is a cohort, sized by its requirement load and grouped by customer segment (coloured by marketplace side). Hover for details.
64 cohorts → 21,685 requirement links → 855 of 856 features. Each band is a customer segment, each ribbon is a requirement link, and width shows how many features a segment demands from each problem domain. Hover for details.
What each squad builds next — the first card on its row of the derived board, and the customer cohort it is for.
Onboarding & Identity Division
Rider Onboarding
#1Rider Signup Teamauto-assigned
Capture first name
Rider types a first name after signup so drivers can greet them. Single required field, saved to the account, shown at pickup.
For #1 · Bag-Laden Early Triers
#1Card on File Teamauto-assigned
Basic format validation
Check the card number, expiry, and CVC format instantly at entry using standard Luhn and length rules, catching typos before the card is saved.
For #1 · Bag-Laden Early Triers
Driver Onboarding
#2Driver Signup Teamauto-assigned
Show a rules and standards page
A one-page guide during signup explaining what riders expect, how the 5-star rating works, and the basic dos and don'ts that keep an account in good standing.
For #2 · Post-Concert Adventurers
#13Driver Verification Teamauto-assigned
Enter vehicle details manually
Driver types in make, model, year, color, and license plate through a simple form, creating the record riders will use to identify the car at pickup.
For #13 · Regular Game-Night Fans
Identity & Access
#2Rider Identity Verification Teamauto-assigned
Submit documents for manual review
Driver uploads license, insurance, and photos through a form. A staff reviewer checks them manually and approves or rejects within a few days.
For #2 · Post-Concert Adventurers
#1Account Access Teamauto-assigned
Email and password sign-in
Returning user enters their email and password to log back into their existing account and pick up where they left off.
For #1 · Bag-Laden Early Triers
Ride Request & Dispatch Division
Rider Request
#1On-Demand Ride Teamauto-assigned
Show request confirmation screen
After the rider taps request, immediately show a clear "Request sent" screen with a spinner, so they know the app received the tap and is now searching for a driver.
For #1 · Bag-Laden Early Triers
#1Pickup & Destination Teamauto-assigned
Type a destination address
A single text box where you type your destination address; the app drops a pin at the matching location and sets it as your drop-off. Solves most trips where the rider knows the address.
For #1 · Bag-Laden Early Triers
Driver Dispatch
#1Real-Time Matching Teamauto-assigned
Show static driver card
After matching, display the driver's first name, photo, car make, model, color, and license plate so the rider can identify who's coming.
For #1 · Bag-Laden Early Triers
#2Driver Dispatch Teamauto-assigned
Tap to go online
A single toggle flips the driver between offline and available, adding them to the dispatch pool so nearby requests can be routed to them.
For #2 · Post-Concert Adventurers
#2High-Demand Matching Teamauto-assigned
Show honest no-driver status
When no driver is free, tell the rider plainly instead of failing silently — display 'searching for a driver' with a spinner and let them keep waiting or cancel.
For #2 · Post-Concert Adventurers
Trip Experience Division
Specialized Pickup Experiences
#1Curbside Pickup Teamauto-assigned
Show car and driver details
Rider sees the driver's name, photo, car make, model, color, and plate number. Both parties eyeball the match at the curb before getting in.
For #1 · Bag-Laden Early Triers
#2Venue Pickup Teamauto-assigned
Show a plain earnings and requirements page
A simple explainer page covering how much you can earn, what a trip pays, car and license requirements, and how payouts work, before anyone signs up.
For #2 · Post-Concert Adventurers
#10Airport Pickup Teamauto-assigned
Show static airport instructions
Display a fixed text note for the airport telling riders the general pickup area, like 'Arrivals, lower level, rideshare zone' shown when they request.
For #10 · Tech-Savvy Frequent Flyer
#2Event Egress Teamauto-assigned
Show identifying details
Rider sees driver's name, photo, car make, model, color, and plate; driver sees rider's name. Solves matching when only a few cars are at the curb.
For #2 · Post-Concert Adventurers
Trip Journey
#1Live Tracking Teamauto-assigned
Show destination pin
Display the rider's set destination as a pin on the map so both parties agree on where the trip ends before it starts.
For #1 · Bag-Laden Early Triers
#1Trip Safety Teamauto-assigned
Show driver and car details
Display the driver's name, photo, car make, model, color, and plate on the rider's screen so they can visually match the car at the curb.
For #1 · Bag-Laden Early Triers
#1Drop-off & Completion Teamauto-assigned
Star rating with quick submit
After drop-off, rate the driver one to five stars on a single screen and tap submit. Solves the basic feedback loop for most trips.
For #1 · Bag-Laden Early Triers
Pricing & Payments Division
Fare Transparency
#1Upfront Pricing Teamauto-assigned
Show flat estimated fare
After entering a destination, rider sees a single distance-and-time based estimate for the standard ride, calculated before requesting. Solves the basic 'what will this cost' question.
For #1 · Bag-Laden Early Triers
#2Surge Pricing Teamauto-assigned
Show per-trip fare total
After each trip, show the driver the fare they earned, the platform commission taken, and the net payout — a simple line-item receipt per ride.
For #2 · Post-Concert Adventurers
Payments & Billing
#1Cashless Payment Teamauto-assigned
Manually replace card
Rider opens payment settings and adds a new card by hand, deleting the old one, so future trips charge the working card.
For #1 · Bag-Laden Early Triers
#1Receipts Teamauto-assigned
Show total fare charged
After the trip, display the single final amount charged to the card on file, confirming the trip is paid and no cash handoff is needed.
For #1 · Bag-Laden Early Triers
#2Fare Disputes Teamauto-assigned
Submit a fare dispute form
After a trip, tap 'this charge looks wrong' to send a message with the receipt attached; support reviews and replies by email within a few days.
For #2 · Post-Concert Adventurers
#1Promotions Teamauto-assigned
Enter a promo code
Rider types a promo code into a field before requesting; a valid code applies a fixed or percentage discount to the upfront price shown.
For #1 · Bag-Laden Early Triers
Trust & Safety Division
Identity & Trust
#1Pickup Identity Teamauto-assigned
Show static car details
Display the driver's plate number, car make, model, and color in the app so the rider can visually check the arriving car against what's shown.
For #1 · Bag-Laden Early Triers
#1Ratings Teamauto-assigned
Post-trip star rating
After drop-off, rider taps 1-5 stars for the driver. Simple, mandatory-optional prompt that captures a baseline signal on the trip's quality.
For #1 · Bag-Laden Early Triers
#1Bad Actor Enforcement Teamauto-assigned
Report a serious incident
A simple in-app form lets riders and drivers report a safety incident after a trip, tied to that specific trip and the other person's identity.
For #1 · Bag-Laden Early Triers
Safety & Records
#1Ride Safety Teamauto-assigned
One-tap emergency call
A safety button in the trip screen dials local emergency services instantly, so a rider in trouble reaches help without leaving the app or searching for a number.
For #1 · Bag-Laden Early Triers
#1Trip Records Teamauto-assigned
Named accounts on both sides
Every trip records the rider's and driver's account names, so no ride is anonymous and each is linked to a real, registered person.
Uber-style Rideshare
Problem
Getting a reliable ride in a city is slow, expensive, and unpredictable. Taxis are hard to hail, dispatch is unreliable, payment is awkward, and there is no transparency on price, ETA, or driver quality.
Solution
2-sided marketplaceUber-style Rideshare - helping city riders summon a car on demand and instantly see a driver, live ETA, and an upfront price, while turning idle drivers into reliable, well-matched supply through automatic dispatch and seamless cashless payment.
How it works
5 stepsPrinciples
12 beliefsProblem domains
6 domainsUse cases and Jobs
6 domains → 35 use cases → 214 jobs. Each cell is a use case, sized by its job count and coloured by domain. Hover for details.
Features
856 featuresEvery job is expressed at four depths, from a minimal basic version to a comprehensive one. Each dot is a feature — the median climbs with depth (a comprehensive feature is 5.3× harder on average than its basic version), but so is the overlap.
Open Features →Customer segments
2-sided marketplace7 customersCustomer cohorts
7 customers × 4 adoption stages = 64 cohorts. Each cell is a cohort, sized by its requirement load and grouped by customer segment (coloured by marketplace side). Hover for details.
Open Customer cohorts →Customer requirements
64 cohorts → 21,685 requirement links → 855 of 856 features. Each band is a customer segment, each ribbon is a requirement link, and width shows how many features a segment demands from each problem domain. Hover for details.
Customer terrain
Requirement load for every cohort — customers × adoption stages. Green is easy ground, red is steep.
Customer sequencing
The first moves on each side of the marketplace — the lightest cohorts, in rollout order. Colour = requirement load (green is easy ground).
Team composition
144 roles · 29 squads · 11 groupsAll 144 roles open — hiring not startedThe whole org in one block — divisions → groups → squads left to right, band height = FTE headcount. Hover for details.
Open Team composition →Product roadmap
855 features to build · 64 of 64 cohorts wonWhat each squad builds next — the first card on its row of the derived board, and the customer cohort it is for.
Positioning
5 momentsMarket opportunity
Opportunity over time — overlaid TAM / SAM / SOM bands per positioning moment.