Building UpworkMech: My Journey Creating Nigeria’s Auto-Mechanic Marketplace

Table of contents
- The Lightbulb Moment
- The Real Problem (It’s Bigger Than I Thought)
- Why I Built It From Scratch
- The Technical Challenge
- Backend Architecture
- Frontend Fun (And Frustration)
- The Features That Matter
- Trust System
- Job Management
- Local Integration
- What I Learned (The Hard Way)
- The Numbers Game
- What’s Next
- The Technical Stack (For Fellow Developers)
- Why This Matters

The Lightbulb Moment
Last year, my car broke down on Third Mainland Bridge during rush hour. After three towing companies and two days of calling around, I finally found a mechanic through a friend’s cousin who knew someone. The whole experience was frustrating, expensive, and honestly pretty ridiculous for 2025.
That’s when it hit me that we have apps for everything, but finding a reliable mechanic in Nigeria still feels like we’re living in the stone age. I started digging into the numbers and discovered something crazy: Nigeria has over 12 million cars but only 30,000 certified mechanics. That’s a 70% shortage, according to a World Bank study I found.
So I did what any developer would do, I decided to build something about it.
https://youtu.be/V3noH_roonE?si=__v7YUip5YSd5UGE
The Real Problem (It’s Bigger Than I Thought)
Here’s what I learned after months of research and talking to actual mechanics and car owners:
Car owners are stuck playing mechanic roulette. You either know someone who knows someone, or you’re rolling the dice with whoever’s closest. There’s no way to verify if a mechanic is actually good, no transparent pricing, and definitely no protection if things go wrong.
Mechanics, on the other hand, are struggling with visibility. I met incredibly skilled guys who were barely making ends meet because they couldn’t reach customers beyond their immediate neighborhood. Some were sharing tiny workshops, others working under bridges, not because they weren’t skilled, but because they had no way to market themselves.
The math is wild too. With roughly 16–18 million vehicles needing service 1–2 times per year, and average service costs around $50–100, we’re looking at a market worth potentially $3.6 billion. But it’s completely fragmented and inefficient.
Why I Built It From Scratch
I considered white-labeling existing solutions, but nothing fit. Upwork and Fiverr work great for digital services, but they’re terrible for local, physical work. They don’t handle verification properly, have no understanding of local payment methods, and honestly, they’re not built for the Nigerian market.
Plus, I wanted to learn. Building a marketplace from scratch would teach me everything about payments, file management, real-time communication, and scaling, skills I knew I’d need for future projects.
The Technical Challenge
Two months later, here’s what I built:
Backend Architecture
Started with Node.js and Express because I know them well, but the real complexity came from everything else:
Authentication was harder than expected. JWT tokens are straightforward, but building proper role-based access for clients, mechanics, and admins while keeping it secure took weeks. I ended up implementing email verification, password hashing with bcrypt, and audit logging for compliance.
File management became a monster feature. Mechanics need to upload portfolio images, work samples, even videos. I built a complete system with:
Drag and drop uploads (surprisingly tricky to get right)
Automatic image compression and thumbnail generation
S3 integration with presigned URLs for direct uploads
File categorization and tagging
Metadata storage for searchability
Payments were the scariest part. Built a wallet system with escrow capabilities, transaction tracking, and dispute resolution. Had to account for failed payments, refunds, and all the edge cases that come with handling money.
The database schema alone has 20+ models covering everything from user profiles to dispute resolution. Used Prisma ORM because raw SQL would’ve been a nightmare to maintain.
Frontend Fun (And Frustration)
React with TypeScript was my weapon of choice. The UI needed to work for everyone from tech-savvy car owners to mechanics who might not be super comfortable with apps.
The analytics dashboard was my favorite part to build. Created custom chart components that can handle line charts, bar charts, pie charts… you name it. Mechanics can track their earnings, see performance metrics, and understand market trends. The whole thing is responsive and actually looks pretty good on mobile.
Portfolio management was trickier than expected. Mechanics need to showcase their work, but uploading and organizing media files is complex. Built a complete media management system with search, filtering, and editing capabilities. The drag-and-drop interface alone took two weeks to perfect.
Real-time chat was necessary but painful. Used WebSockets for instant messaging between clients and mechanics. Added file sharing, offline message queuing, and notification systems. Works great now, but debugging WebSocket issues at 2 AM wasn’t fun.
Built everything with accessibility in mind, proper ARIA labels, keyboard navigation, screen reader support. Used Tailwind for styling because life’s too short for writing custom CSS for every component.
The Features That Matter
Trust System
This was non-negotiable. Built a comprehensive verification system, document upload, phone verification, bank account verification, background checks. Each mechanic gets a trust score based on completed jobs, reviews, and verification status.
Job Management
Not just “post a job and hope for the best.” Built smart matching algorithms, milestone-based payments, and proper project tracking. Clients can see mechanic profiles, previous work, and ratings before making decisions.
Local Integration
Naira-based pricing, local payment methods, and offline capabilities for areas with poor internet. The mobile app works even when connection is spotty.
What I Learned (The Hard Way)
File uploads are deceptively complex. What seems like a simple feature touches image processing, storage, CDN integration, security, and user experience. I probably rewrote the upload system three times.
Real-time features eat bandwidth. Had to implement smart connection management, message queuing, and offline support. Nigerian internet infrastructure isn’t always reliable.
Trust is everything in this market. Without proper verification and dispute resolution, the platform would just be another place for people to get scammed. Spent months building robust trust and safety features.
The Numbers Game
Market research suggests this could be big. Even capturing 1% of the mechanic market could generate serious revenue. Built financial projections showing potential 400%+ ROI over three years, but honestly, I’m more excited about solving a real problem than the money.
The automotive service market in Nigeria is worth billions, but it’s stuck in the past. Digital transformation is happening everywhere else, why not here?
What’s Next
Starting with Lagos because that’s where the density is about 2 million vehicles in the metro area. Once we prove the model works, expansion to other Nigerian cities makes sense, then maybe other West African countries.
Long-term vision includes partnerships with insurance companies, automotive manufacturers, and maybe even training programs for mechanics. But first, I need to prove people actually want to use this thing.
The Technical Stack (For Fellow Developers)
Backend: Node.js, Express, PostgreSQL, Prisma ORM, JWT auth, AWS S3, Jest for testing Frontend: React, TypeScript, Tailwind CSS, custom hooks, WebSocket integration Infrastructure: Planning for AWS deployment with CloudFront CDN
Code is clean, well-documented, and ready to scale. Learned a ton about building marketplace platforms, handling payments, and designing for emerging markets.
Why This Matters
This isn’t just another app. It’s about creating opportunities for skilled mechanics who deserve better visibility and helping car owners access reliable service. Nigeria’s automotive sector is growing fast, but the supporting infrastructure is lagging.
Building UpworkMech taught me that good products solve real problems. The technical challenges were fun, but the real satisfaction comes from potentially making life easier for millions of people.
Beta launch is planned for Q4 2025 in Lagos. If you’re a mechanic, car owner, or just someone interested in Nigerian tech, I’d love to hear your thoughts.
Sometimes the best way to learn is to build something that matters.
Subscribe to my newsletter
Read articles from Maxwell Onyeka directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by

Maxwell Onyeka
Maxwell Onyeka
Technical Writing || Web3 || Marketing