/M
Mohamed Ali Boudokhane
Ouvert aux opportunitésTunisie

Développeur logiciel

Développeur logiciel junior titulaire d'une Licence en Génie Logiciel, avec trois stages en développement web et mobile. Je travaille sur les écosystèmes TypeScript et Java : NestJS et Next.js, Angular et Spring Boot, React Native et Firebase, avec des bases de données relationnelles et NoSQL, des API REST et une authentification par JWT.

À propos

J'ai obtenu une Licence en Génie Logiciel à l'EPI Digital School de Sousse, et depuis je construis des produits réels au sein d'équipes réelles : une marketplace e-commerce, une application multiplateforme contre le gaspillage alimentaire, et une plateforme de gestion de stock multi-tenant.

Ce que je préfère, c'est prendre en charge une fonctionnalité de bout en bout : concevoir le modèle de données, l'exposer à travers une API REST propre, la sécuriser correctement, puis construire l'interface qui rend tout cela évident. Je tiens à une authentification bien faite, à des données qui ne fuient jamais d'un tenant à l'autre, et à du code que la personne suivante pourra lire.

Je suis à l'aise aussi bien dans le monde TypeScript que dans le monde Java, et j'écris avec le même plaisir un schéma Drizzle, une chaîne de filtres Spring Security ou une transition Framer Motion.

Basé enTunisie
DiplômeLicence en Génie Logiciel
Stack principaleTypeScript · NestJS · Next.js
Seconde stackJava · Spring Boot · Angular
Compétences

Les technologies que j'utilise, regroupées par usage réel.

Stack principale

  • TypeScript
  • NestJS
  • Next.js / React
  • Java
  • Spring Boot
  • Angular
  • PostgreSQL

Langages

  • TypeScript
  • JavaScript
  • Java
  • PHP
  • SQL
  • HTML
  • CSS

Frontend

  • Next.js
  • React
  • Angular
  • React Native / Expo
  • Tailwind CSS
  • Bootstrap
  • SCSS

Backend

  • NestJS
  • Spring Boot
  • Spring Web
  • Spring Data JPA
  • Hibernate
  • PHP
  • REST
  • Swagger

Bases de données & ORM

  • PostgreSQL
  • MySQL
  • Cloud Firestore
  • Redis
  • Drizzle ORM
  • Prisma

Sécurité & tests

  • Spring Security
  • JWT
  • bcrypt
  • JUnit
  • Spring Boot Test

Outils & plateformes

  • Git
  • Supabase
  • Firebase
  • Vercel
  • Angular CLI
  • Expo
  • Maven
  • npm
Expérience

Trois stages, trois stacks, trois problèmes très différents.

  1. Stagiaire en développement logiciel

    G.E.I.B Digital Connect

    Janvier 2026 – Juin 2026 · 5 mois · Sousse, Tunisie

    Marketplace e-commerce full-stack développée au sein du département développement de l'entreprise.

    Développement du backend sous forme d'API REST avec NestJS et TypeScript, Drizzle ORM pour la couche d'accès aux données sur une base PostgreSQL (Supabase), et Redis dans la stack backend.

    Développement du front-end de la marketplace avec React et Next.js, en intervenant sur toute la chaîne, du schéma de données à l'interface.

    StackTypeScriptNestJSDrizzle ORMSupabasePostgreSQLRedisReactNext.js
  2. Stagiaire PFE (Projet de Fin d'Études)

    Terraform Group

    Février 2025 – Mai 2025 · 4 mois · Sousse, Tunisie

    Profiti, marketplace multiplateforme de lutte contre le gaspillage alimentaire, mettant en relation les commerces proposant des produits invendus ou de fin de journée avec des utilisateurs souhaitant les acheter à prix réduit.

    Développement d'une application Expo en TypeScript pour iOS, Android et web, avec Expo Router et une navigation adaptée aux rôles acheteur, vendeur et livreur.

    Mise en place d'une marketplace géolocalisée (localisation GPS, filtrage par distance Haversine dans un rayon de 10 km, recherche, expiration des annonces) et d'un tunnel de commande avec retrait ou livraison, frais selon la distance, gestion des stocks et panier synchronisé via Firestore.

    Attribution des livraisons dans un rayon de 3 km avec acceptation et refus, itinéraires multi-étapes et notifications Firestore en temps réel ; sécurisation des comptes via Firebase Authentication, vérification d'e-mail, réinitialisation du mot de passe et routage par rôle.

    StackTypeScriptReact NativeExpoFirebase AuthenticationCloud Firestore
  3. Stagiaire en développement web

    INFOPLUS

    Juillet 2024 – Août 2024 · 1 mois · Bizerte, Tunisie

    Plateforme full-stack de gestion de stock couvrant articles, catégories, clients, fournisseurs, commandes et mouvements de stock.

    Mise en place d'une authentification JWT avec Spring Security et BCrypt, accompagnée d'un intercepteur HTTP et de route guards côté Angular.

    Conception de l'isolation multi-tenant des données à partir de l'identifiant d'entreprise porté par le JWT et du filtrage SQL Hibernate ; modélisation des entrées et sorties de stock issues des commandes avec Spring Data JPA et MySQL.

    Génération du client API Angular à partir de Swagger et rédaction de tests JUnit sur la persistance des catégories.

    StackAngularTypeScriptJavaSpring BootSpring Data JPAHibernateSpring SecurityJWTMySQLRESTSwaggerJUnit
Projets

Projets personnels, menés de bout en bout.

Projet personnel

Le Saphir Bleu

Site de restaurant avec réservation en ligne et CMS

  • Développement d'une application Next.js 15 (App Router) avec pages publiques et espace d'administration, et route handlers REST en JSON ; modélisation des données PostgreSQL avec Prisma pour le menu, les adresses, les réservations, les messages, les médias et les paramètres.
  • Authentification du personnel par JWT avec bcrypt, cookies httpOnly, contrôle d'accès par rôle et révocation des jetons ; validation des payloads avec Zod et règles de réservation sur les créneaux, le nombre de couverts et la capacité.
  • Intégration de Cloudinary et Resend, et déploiement sur Vercel.
StackTypeScriptNext.js 15React 19Tailwind CSS 4PostgreSQLPrismaSupabaseJWTVercel

Projet personnel

EPI Network

Réseau social rendu côté serveur en PHP et MySQL

  • Développement d'une application PHP 8 : inscription, connexion et déconnexion, protection des sessions, Post/Redirect/Get, fil de publications avec édition et suppression réservées à l'auteur, pièces jointes et signalement.
  • Sécurisation via password_hash et password_verify, requêtes préparées et échappement des sorties.
  • Upload d'images validé par type MIME et taille, avec noms de fichiers aléatoires.
StackPHP 8MySQLJavaScriptBootstrapHTMLCSSGit
Formation

2022 – 2025

Licence en Génie Logiciel

EPI Digital School, Sousse, Tunisie

Certifications

  • ÖSD Zertifikat A2 (allemand)

    International Institute for Studies and Cooperation (IISC), Kairouan, Tunisie

  • Microsoft Office Specialist, Excel 2019 Associate

    Microsoft / Certiport · Janvier 2024

Langues

  • ArabeLangue maternelle
  • FrançaisProfessionnel
  • AnglaisProfessionnel
  • AllemandA2
Contact

Je suis ouvert aux postes de développeur logiciel junior, aux stages et aux missions freelance. Le plus rapide pour me joindre reste l'e-mail.