ETC Tunisie
ETC Tunisie
Tunisie

#08 - Système de Verrouillage d'Entités et Édition Concurrente

ConcurrencyDistributed SystemsBackend (SpringBoot)LockingOptimistic LockingPessimistic LockingwebsocketsBackend Development (Python, Node.js)Backend (Node.js/Express/NestJS)RedisRedlockBases de données / PostgreSQLFrontend/UXConflict resolution

Publié il y a 6 jours

Stage
⏱️4-6 mois
💼Présentiel
📅Expire dans 8 jours
Intègre les mots-clés de l’offre.

Description du poste

Objectif: Créer un service générique de locking pour éviter les conflits d’édition concurrente avec support optimiste et pessimiste.

Responsabilités:

  • Implémenter verrouillage optimiste (versioning) et pessimiste (lock explicite avec expiration)
  • Heartbeat automatique, notifications temps réel via WebSockets, affichage read-only si locké
  • Force unlock (admin), dashboard temps réel des locks actifs, historique complet
  • Interface de merge 3-way en cas de conflit, auto-save en draft
  • API générique: lock(entityType, entityId, userId), unlock(), isLocked(), getLockInfo()

Livrables attendus:

  • Service de locking prêt à l’emploi, UI d’admin et composant de merge
  • Documentation, tests de charge et de concurrence

Technologies suggérées: Node.js/NestJS, Redis (distributed locks), Redlock, WebSockets (Socket.io), PostgreSQL, Angular/React, Docker