Skip to content
Amine Mekki
Back to projects

Job platform for the Djibouti market

DjibWork connects job seekers and recruiters in Djibouti: job listings with filters, candidate profiles, and a CV database for recruiters. Freelance mission covering the full stack, the Docker setup and the deployment pipelines.

Role
Freelance full-stack developer
Client
DjibWork
Stack
Next.js, NestJS, TypeScript, PostgreSQL, Prisma ORM, Docker, React, Docker Compose, CI/CD, Git

Problem

The Djibouti job market lacked a dedicated platform. DjibWork needed to serve two audiences at once: candidates looking for permanent roles, contracts, internships or freelance work, and recruiters who want to publish offers and search profiles, with privacy options on both sides.

Architecture

A Next.js frontend over a NestJS API, with PostgreSQL and Prisma modeling offers, candidate profiles and applications. Two audiences share one backend, so roles and permissions decide what each side sees rather than duplicating the logic per interface. I handled the full stack plus Docker and the CI/CD pipelines.

Engineering decisions

Visibility modeled in the data, not in the views

Candidates can stay anonymous and recruiters can post confidentially, so visibility is a property of the record enforced server side. Leaving it to the frontend would mean one forgotten condition exposes someone who asked not to be seen.

One API for candidates and recruiters

Both audiences touch the same offers and profiles from opposite directions. A single API with role-based access keeps the rules in one place instead of drifting between two codebases.

Quality & reliability

Access rules enforced server side, Dockerized environments, and automated pipelines from commit to deployment so the platform can evolve without release friction.

Outcome

The platform is live at djibwork.com, with job search by location, sector and contract type, candidate profiles with public or anonymous visibility, and recruiter access to the CV database.

Links