Systems / C++ · C++ systems project
Concurrent Job Scheduler
Priority-aware multithreaded execution engine
Built a C++ job scheduler with a shared priority queue and multiple worker threads. The main challenge was keeping shared state correct while several workers were taking, running, and updating tasks at the same time.
Ran multiple worker threads against a shared task queue.
Used mutexes and condition variables to coordinate workers and protect shared state.
Supported task priorities instead of processing everything strictly first-in, first-out.
Tracked task results and included retry behavior for failures.
Concurrency bugs depend on timing, so correct locking and ownership mattered more than whether a single test run looked right.
Workers had to sleep, wake, and modify the queue without losing tasks or racing each other.
Built a multithreaded scheduler demonstrating practical C++ concurrency, prioritization, synchronization, and failure handling.