Lasry BESKIWIN
Menu
CV FR
All projects

Welcome To My Savane

A profile that evolves. An application that stays true to its submission.

From building a profile to submitting an application: a job board that retains the information selected at the time of submission.

Actual Welcome To My Savane homepage, with job search, a savanna illustration and a coral background.
Capture of the completed application, supplied in the project README. Demo data is fictional.

Full-stack · EPITECH pair project · 2026

Completed project · Developed as a pair

  • React
  • Node.js
  • PostgreSQL
  • Express
  • JavaScript
  • Docker

The starting point.

Let candidates compose an application with a message, projects, experience and a CV. The submitted dossier must retain that content even when the candidate later edits their profile.

An EPITECH educational project developed as a pair. The React interface connects to an Express API and a PostgreSQL database. The completed project includes candidate, administration and recruiter flows. The directory lists only candidates who have enabled profile visibility.

The name is deliberately parodic: the French word “savane” replaces the English “savanna” in this nod to Welcome to the Jungle.

What I built.

My own contribution to the project.

Pair project. My teammate notably developed the catalogue, search filters, CV file upload/versioning and company workspace. The contributions below describe my own work.

  • Authentication and profile

    Registration, session-based login and candidate profile flows, with input validation and API ownership checks.

  • Building the application

    Editing projects and experience, selecting profile items and a CV, application review and submission history.

  • Transaction and frozen dossier

    Saving a frozen dossier in a PostgreSQL transaction, locking selected data during submission. Candidate access to their submitted dossier.

  • Search API and access control

    Recruiter candidate-search API, with candidate-controlled profile visibility and access checks.

  • Administration and integration

    Administration of accounts and application statuses, homepage and search experience, integration tests and Swagger documentation for the implemented routes.

What changes. What stays.

A candidate keeps updating their profile after applying. The recruiter still needs the dossier exactly as it was submitted.

The current profile

Projects and experience remain editable for future applications.

Editable after submission

The submitted dossier

A copy of the selected items is stored with the application. Later profile edits do not rewrite it.

Kept as submitted

The guarantee lives in the transaction.

The Express API locks the selected data during submission and copies it within a PostgreSQL transaction. The interface lets the candidate review their dossier.

  • Selected projects
  • Selected experience
  • Message and CV
  • Submission history

Built as a pair. CV file upload and versioning are among my teammate’s contributions.

What I learned.

A form involves more than saving fields. Data ownership, what can still change and what must remain faithful to submission need explicit rules. The frozen dossier brought those rules together across the interface, API and SQL transaction.