Dog Walking Management App
Multi-role app for dog owners, walkers, and super admins—with a central brain that schedules walks automatically.
Three roles—owner, walker, and super admin—with separate dashboards
Central brain that auto-schedules walks from availability rules
Walker assignment and schedule management in one app
Background
A dog walking service was scheduling walks manually—text messages, shared calendars, and a lot of admin time matching walkers to dogs. Owners wanted visibility. Walkers wanted clear schedules. The business needed one system that could grow.
The problem
The product needed three different experiences: dog owners booking and tracking walks, walkers seeing their day and marking walks complete, and a super admin overseeing walkers, dogs, pricing, and exceptions. On top of that, recurring walks had to schedule themselves without someone clicking through every week.
What I built
I built a web app with role-based dashboards for each user type. The central brain is a scheduling service that reads walk preferences, walker availability, and recurring rules, then creates walk instances automatically. Admins can override or reassign when something changes. Owners get notifications when walks are scheduled or completed.
Product
Key features
Dog owner portal
Add dogs, set walk preferences, see upcoming and past walks, and message about schedule changes.
Walker portal
Daily schedule, dog details, start/complete walk actions, and notes for the admin or owner.
Super admin console
Manage walkers, owners, dogs, pricing, and manual overrides when the automatic schedule needs a fix.
Central brain scheduler
Background jobs that generate walk slots from recurring rules and match them to available walkers.
Automatic walk scheduling
Weekly or custom recurrence without admin re-entry—new weeks populate from the rules you set once.
Engineering
How it works technically
The important architectural decisions—not a laundry list of frameworks.
Scheduling engine
NestJS cron and queue workers that build schedules nightly and handle conflicts when a walker is unavailable.
Multi-tenant roles
JWT auth with role claims. Each API route checks role before returning owner, walker, or admin data.
Data model
PostgreSQL with clear links between owners, dogs, walkers, recurring rules, and walk instances.
Impact
Results & takeaways
Challenges solved
- Matching walkers when multiple dogs need walks in the same time window
- Timezone and daylight saving edge cases for recurring schedules
- Letting admins override the brain without breaking future auto-schedules
What changed
- Walks schedule themselves from rules instead of manual calendar work
- Each role gets only the screens they need
- Admin can see the full picture—walkers, dogs, and exceptions
Outcomes
Less admin time spent building weekly schedules by hand
Owners always know when the next walk is booked
Walkers start the day with a clear list on their phone
Building something similar?
Tell me what you are building—I will share how I would approach it and whether we are a good fit.