Skip to content
All projects

Freelancer Platform

A platform where service providers manage their availability and customers book without conflicts.

Date
September 2025
My role
Full-Stack Developer
Technologies
  • React
  • Javascript
  • Redux
  • Tailwind CSS
  • C#
  • ASP .Net Core
  • Entity Framework Core
  • MySQL
  • REST API
  • Redis

Introduction

This full-stack marketplace web application bridges freelancers and clients through a streamlined service booking and scheduling system. Service providers can list their expertise, manage flexible working slots, and track incoming appointments, while clients can seamlessly explore categories, check real-time freelancer availability, and book appointments without scheduling conflicts.

The problem

The primary technical challenge in building this platform was managing concurrent booking requests without overlapping time slots or double bookings. Additionally, rendering large sets of freelancer schedules and dynamic availability calendars placed heavy loads on the relational database (MySQL). Ensuring sub-second page loads during peak browsing sessions while preserving strict transactional integrity for double-booking prevention required an optimized architecture.

What I did

  • Architecture & Backend: Engineered robust RESTful API endpoints using ASP.NET Core and Entity Framework Core, leveraging MySQL for data persistence.
  • Concurrency & Booking Prevention: Implemented database-level pessimistic locking and transactional slot validation to ensure two users cannot book the same freelancer at identical times.
  • Redis Caching Integration: Integrated Redis to cache frequently queried data—such as freelancer profile metadata, active listings, and general availability templates—reducing database read queries and decreasing latency.
  • State Management & UI: Designed a responsive multi-role frontend interface with React, Redux, and Tailwind CSS, delivering seamless calendar navigation and dynamic state updates across client and freelancer dashboards.

Outcome

The resulting platform successfully handles conflict-free booking workflows with high reliability and performance. By leveraging Redis caching alongside pessimistic concurrency controls in ASP.NET Core, database fetch response times were reduced significantly, ensuring a responsive experience for clients and smooth schedule management for freelancers.