
Manifeste CodeWorks
Mise à jour, mai 2026
Avant de lancer CodeWorks en 2018, j'ai passé plus de dix ans dans des ESN, en tant qu'ancien développeur, ingénieur avant-vente jusqu'à des fonctions de direction commerciale chez CARBON-IT, que j'ai participé à développer from scratch en 2013.
J'y ai vu beaucoup de choses. Des bonnes, des moins bonnes, et beaucoup qui me laissent encore perplexe quand j'y repense.
J'ai vu des développeurs traités comme de simples lignes Excel, des choix de missions non respectés, un encadrement du développement des carrière inexistant, des marges cachées, des grilles de négociation secrètes, des augmentations négociées à la tête du client.
J'ai vu des projets se déliter parce que la dette technique n'avait jamais été un sujet pour personne, parce qu'on confondait time-to-market et valeur.
Et j'ai surtout vu, surtout, les dégâts humains engendrés.
Des collègues qui s'éteignaient et changeaient de poste tous les deux ans. D'autres restaient mais perdaient lentement le goût et la passion pour ce métier.
À côté de tout ça, heureusement, j'ai aussi vu des choses qui marchaient : des développeurs qui prenaient le temps de transmettre, qui osaient dire "je ne sais pas" devant un client, des consultants qui finissaient une mission en laissant les équipes plus fortes qu'à leur arrivée, et quelques boîtes, plus rares, qui plaçaient leurs développeurs au centre de l'ESN.
Je me suis dit, à l'époque, qu'on pouvait peut-être bâtir une ESN à partir de ce qui marche. Sans prétendre que ce sera une révolution affichée, ou un modèle qui prétend être parfait. Je voulais lancer une tentative honnête, ancrée dans ce que j'avais vu se vérifier sur le terrain ces dix dernières années.
CodeWorks a été le fruit de cette tentative depuis 2018 maintenant.

Le code, d'abord
Notre métier, c'est de produire du code utile, fiable et maintenable. Du code, bien fait, qui va durer et qui pourra être repris et évolué sans difficulté dans le temps.
Par le passé, j'ai vu trop de projets IT échouer pour les mêmes raisons.
On croit que le succès d'un projet repose sur le nombre de devs alignés sur un sprint.
On évalue des années de pratique en cochant une dizaine de questions théoriques posées en une heure d'entretien.
On néglige les fondamentaux au profit du Framework Driven Development.
On sous-estime l'importance des compétences comportementales (feedback structuré, gestion du stress, communication assertive).
On s'obsède sur la Definition of Done pendant que la dette technique s'accumule en silence, sans que personne ne s'en alerte.
Tous ces dysfonctionnements ont la même racine. On croit qu'on va compenser le manque de soin par plus de volume, plus de process, plus de réunions. C'est faux, et l'expérience le démontre depuis plus de vingt ans.
Ce que je crois, à l'inverse, c'est que l'excellence collective d'une organisation sur-pondère le génie individuel. Une équipe de cinq devs qui transmettent, se challengent et se relisent vaut largement une équipe de dix qui produisent côte à côte sans partager.
C'est pour cela que j'ai souhaité ancrer un fondement dans notre culture d'entreprise : laisser les équipes clientes dans un meilleur état qu'à notre arrivée.
C'est la formule que je répète en interne : si une équipe a besoin de nous pour continuer à fonctionner quand nous partons, nous avons échoué. Le test ultime d'une mission CodeWorks réussie, c'est l'autonomie qui reste derrière nous, une fois partie.
Notre travail tient en trois étapes. On commence par diagnostiquer ce qui freine vraiment l'équipe, en cherchant les causes plutôt que les symptômes. Ensuite, on stabilise le delivery, on fiabilise les briques critiques, et on rétablit la confiance entre métier et tech. La dernière étape, c'est la transmission : on documente, on accompagne, on partage, pour que ce qu'on a construit puisse continuer à vivre sans nous.
Notre mission tient en une phrase : un code propre, des systèmes sous contrôle, des équipes autonomes.
L'IA, lucidement
Personnellement, je trouve qu'on dit à peu près n'importe quoi sur l'IA générative depuis deux ans. On entend qu'elle va remplacer les développeurs, que les fondamentaux deviennent secondaires, qu'il "suffit" de brancher un LLM, que la productivité explose, que tout le monde devient ingénieur.
Ce que je vois sur le terrain, c'est l'inverse.
Les équipes qui produisent du bon code avec l'IA sont celles qui maîtrisaient déjà leurs fondamentaux. Celles qui ne les maîtrisaient pas amplifient leurs problèmes plus vite. Les LLM mal cadrés font exploser les factures et les dérives de coût, sont déjà nombreuses.
Chez nous, on traite l'IA comme le reste du code : avec sobriété, avec des tests, avec de l'observabilité, avec un budget que l'on maitrise, d'autant plus que les acteurs majeurs de l'IA annonce prochainement des augmentations significatives des modèles économiques par tokens.
Le pièce se referme doucement : après une phase d'adhésion comportementale, puis un investissement significative dans un écosystème IA, enfin les entreprises font face à l'érosion des capacités alternatives face à l'IA. L'intelligence collective et le savoir-faire capitalisé et partagé ont été relegué à une période révolue. Et c'est ce dernier point qui est le plus dévastateur, car les équipes ont laissé subtilement s'atrophier leur dépendance face à l'IA.

Les développeurs, au centre
Quand j'ai créé CodeWorks, je voulais une boîte où les développeurs ne se sentent pas instrumentalisés. Une boîte qui leur offre une safe place, c'est-à-dire un endroit où on peut développer sa singularité, prendre des initiatives, se tromper et apprendre, sans craindre d'être sanctionné pour son audace.
Cela commence par des choses simples qu'aucune ESN classique n'accepte vraiment de faire.
La grille de salaire est publique. On peut la consulter sur le site avant même de candidater. Derrière cet effort de transparence, il y a une série de conséquences que j'avais sous-estimées au départ :
Chacun sait à quoi s'attendre dès la proposition.
Chacun est protégé de toute forme de discrimination, parce que la grille ne distingue ni le sexe, ni la séniorité, ni le talent de négociation.
Chacun se sent justement valorisé, et les bons négociateurs ne sont plus privilégiés sur les autres.
Chacun progresse automatiquement chaque année, sans avoir à le demander.
Chacun sait à quel moment partir s'il ne s'y retrouve plus, en partant sur de bonnes bases, sans frustration ni non-dits.
Chacun trouve naturellement sa place et ne se sent pas lésé.
Ce système supprime le cas par cas, les négociations interminables, le "à voir avec le manager". Surtout, plus personne, côté développeurs, n'a à se demander si le voisin gagne plus pour le même boulot, à séniorité équivalente.
La marge dégagée par chaque mission est partagée systématiquement, en vertu d'un mécanisme, et non au gré des bonnes volontés. Dès que l'excédent brut d'exploitation dépasse 5 %, une cagnotte est constituée.
Elle est ensuite redistribuée pour moitié à parts égales entre tous les CodeWorkers, sans distinction de séniorité, de sexe ou d'expérience, et pour moitié sur les contributions individuelles. Concrètement, un nouvel arrivant qui n'a pas encore atteint son seuil de rentabilité touche quand même sa part, parce qu'il n'y est pour rien et parce que les autres contribuent pour lui.
Pour celles et ceux qui apportent une affaire, nous avons mis en place une rémunération mensuelle, dégressive sur trois ans : 6 % la première année, 5 % la deuxième, 4 % la troisième, avec 1 % supplémentaire par nouvelle affaire détectée. C'est un dispositif, un peu inédit dans une ESN, qui préfère rémunérer les commerciaux au détriment des consultants qui restent les meilleurs représentants au quotidien. J'ai tenu à ce que ce modèle soit ouvert à tous, et qu'il ne soit pas réservé à une élite commerciale.
Cette équation entre salaire transparent et marge partagée n'est pas qu'un confort interne. C'est aussi un engagement vis-à-vis de nos clients. En garantissant une cohérence entre nos salaires et nos tarifs de vente, nous contribuons à un marché régulé et non-inflationniste. Nous atteignons nos objectifs de rentabilité sans avoir besoin de sur-facturer qui que ce soit. C'est une simple question d'honnêteté tarifaire.
Et puis il y a le CodeWorks Care. Si l'un de nous se retrouve en mission face à une difficulté qu'il ne peut pas régler seul (technique, relationnelle, organisationnelle), il peut déclencher ce dispositif. Un autre CodeWorker expérimenté vient l'aider, sur place ou à distance, jusqu'à trois jours, sans frais pour le client. C'est probablement le dispositif dont je suis le plus fier, parce qu'il dit beaucoup de notre rapport au métier : on n'y est jamais seul.
À l'arrivée, chaque nouveau CodeWorker passe par un mois d'acculturation : coaching technique, coaching de posture, encadrement par un·e référent·e. Nous avons aussi un projet fil rouge, un outil interne développé chez nous, enrichi par chaque nouvel·le arrivant·e. C'est concret, c'est partagé, et cela permet à chacun de laisser sa trace dans la maison avant même sa première mission client.

L'engagement réciproque
Je suis sélectif sur le recrutement, et ce n'est pas un hasard.
CodeWorks n'est pas un endroit pour celles et ceux qui cherchent une planque. Le niveau technique attendu est élevé, et la posture compte tout autant. Il faut être proactif, humble, prêt à transmettre. Il faut être aligné avec ce que nous défendons (transparence, solidarité, engagement collectif), et cet alignement se vérifie aux comportements de chaque jour, plus qu'aux mots.
En échange, je m'engage à ce que chacun progresse, soit reconnu, soit entouré quand c'est dur, et à ce que ce qu'il donne serve un projet plus grand que son salaire.
C'est notre cadre commun. Il fait à la fois la qualité de nos prestations et la solidité de notre communauté.

L'inclusion, en actes concrets
Je crois que la responsabilité d'une entreprise commence par la façon dont elle traite ses propres salariés.
Concrètement, cela donne : une cagnotte de dix jours par an pour le congé menstruel ; cinq jours d'absence avec maintien intégral du salaire pour une IVG ; sept jours et un accompagnement par l'AGAPA pour un arrêt naturel ou une interruption médicale de grossesse ; cinq jours d'intercontrat au retour de congé maternité avec des ateliers Issence ; un doublement systématique des jours conventionnels pour le congé adoption et pour tous les congés de deuil.
Cette dernière mesure, le deuil, m'a particulièrement coûté à écrire.
Parce que la mort est souvent un sujet tabou en entreprise. Parce qu'on ne sait pas trop comment l'aborder. Parce qu'on ne sait pas s'il faut en parler ou laisser tranquille.
Je suis convaincu qu'on doit en parler. Qu'on doit donner du temps. Que les démarches, l'organisation des obsèques, le soutien des familles, tout ça prend du temps et de l'énergie. Et que la vie continue, même quand un proche s'en va.
Alors on a choisi d'être là, pour qu'aucun CodeWorker n'ait à choisir entre faire son deuil et faire son métier.
Le détail complet est sur notre politique inclusive et solidaire. Je ne vais pas tout recopier ici. L'important, c'est que ces mesures ont été discutées, votées, écrites collectivement. Elles s'appliquent à chacun.

La gouvernance, partagée
J'ai souvent vu, dans des ESN, des décisions prises en comité fermé et appliquées sans débat. J'ai voulu l'inverse.
Nos décisions structurantes (la grille de salaire, les investissements, les choix RSE, l'évolution du modèle) passent par des rétrospectives trimestrielles. La direction propose, la communauté tranche. Quand un sondage va dans un sens contraire à celui que j'avais en tête, je m'aligne sur le sondage. C'est arrivé plusieurs fois, et c'est un bon signe.
Chaque mois, en interne, nous partageons les chiffres : le chiffre d'affaires, le taux journalier moyen, le coût de l'intercontrat. Pour que chacun sache où on en est, tout simplement.
Ce qui rend cette gouvernance praticable au quotidien, c'est notre culture de l'écrit. Nous documentons nos process, nos décisions, nos arbitrages, non par souci bureaucratique mais par exigence de cohérence. Parce que je pense qu'une chose qu'on ne sait pas écrire est une chose qu'on ne maîtrise pas vraiment. Et parce qu'on a fait un choix simple : personne ne doit détenir une information stratégique qui le rendrait plus important dans l'organisation. L'information qui circule produit de la valeur ; celle qu'on retient produit du pouvoir mal placé.
Cette culture de l'écrit a deux conséquences concrètes au quotidien. La première, c'est qu'elle permet d'intégrer un nouvel arrivant sans s'épuiser à lui expliquer la maison à chaque embauche : tout est documenté, accessible, traçable. La deuxième, c'est qu'elle pousse à structurer l'organisation horizontalement. Quand tout le monde a accès aux mêmes informations, les hiérarchies basées sur la rétention d'info s'effondrent toutes seules.
Nous sommes même allés un cran plus loin en ouvrant une partie de cette documentation au public. C'est notre guide public de la communauté CodeWorks, accessible à n'importe qui, qui donne un aperçu condensé de notre culture d'entreprise à nos clients, à nos partenaires, et aux prochains CodeWorkers qui voudraient nous rejoindre.
Je crois qu'une boîte qui partage ses chiffres et ses décisions avec ses salariés, c'est une boîte qui leur fait confiance. Et qu'une boîte qui partage une partie de ses fondamentaux avec le public, c'est une boîte qui croit vraiment en ce qu'elle défend. La confiance, en interne comme en externe, c'est le seul actif qui ne s'use pas.

Le syndrome de la baignoire percée
C'est comme cela que j'appelle, en interne, le problème central de notre industrie : on cherche à remplir une baignoire en oubliant qu'elle fuit par le fond.
Les chiffres sont publics. D'après le DARES, le turnover a doublé en France en vingt ans, avec une moyenne de 500 000 démissions par trimestre en 2022, et un record de 2,7 % de démissions au premier trimestre 2022, le plus haut depuis la crise financière de 2008-2009. L'INSEE, de son côté, situait le turnover moyen français à 15 % en 2021. Dans la tech, c'est plus élevé encore.
Les ESN classiques l'acceptent. Certaines l'organisent, parce qu'un consultant qui part au bout de deux ans, c'est un nouveau qu'on vend "junior" sur la même mission, à la même marge.
J'ai fait le choix inverse. Plutôt que de chercher à grossir vite, j'ai préféré qu'on s'attaque aux fuites une par une. La transparence des chiffres, un accompagnement réel, des suivis tripartites réguliers, le CodeWorks Care, une redistribution équitable des marges, une gouvernance partagée. Chacun de ces dispositifs colmate une cause spécifique de désengagement.
Aucun n'est révolutionnaire pris isolément. Mais leur combinaison produit l'effet recherché : un turnover sous les standards de notre industrie, et des CodeWorkers qui restent plusieurs années, non par défaut mais par choix.

La croissance contenue
Ce capage volontaire, j'y tiens. Parce que je pense qu'au-delà d'une certaine taille, on ne se connaît plus, on se contente de gérer, on cesse d'incarner, on délègue à des process ce qui devrait rester dans le tissu humain.
Je veux qu'on reste une boîte où je connais le prénom et le projet de chacun. Une boîte où on peut se voir en CodeDay une fois par mois (le dernier jeudi, douze fois par an) et se parler vraiment.
Une croissance organique, sans dette externe et sans levée de fonds, c'est plus lent et plus exigeant. Mais c'est ce qui nous garde libres. Et notre liberté, c'est ce qui nous permet de tenir nos engagements.
À partir de 2027, nous commencerons à explorer des spin-offs. L'idée n'est pas de faire grossir CodeWorks, mais d'ouvrir des opportunités d'intrapreneuriat à celles et ceux qui ont envie de bâtir quelque chose à côté.

L'engagement sociétal
Une partie de notre temps va à des projets qui dépassent CodeWorks.
Nous faisons du mécénat de compétences avec Share-IT, qui met en relation des talents tech et des associations à impact. Nous soutenons les Chocolats du Cœur sur des projets dédiés aux enfants.
Nous sponsorisons et nous hébergeons les communautés qui nous ont fait grandir : NewCrafts, SoCraTes, Ladies of Code, Software Crafters, Women Techmakers, Coding Dojo, Electronic Tales, ESGI. Nous intervenons dans des écoles. Nous accueillons des Fresques du Climat. Nous formons à l'éco-conception logicielle.
Je trouve qu'une entreprise qui ne rend rien à son écosystème manque à une de ses missions fondamentales.
Depuis 2022, nous sommes officiellement Société à Mission. Ce statut, je ne le vois pas comme un label décoratif, mais comme un cadre qui nous oblige à rendre des comptes sur nos engagements.

Pourquoi on continue
Je ne vais pas mentir : il y a des moments difficiles.
Le commerce est plus dur qu'il y a une dizaine d'années, les marchés se tendent avec l'arrivée de l'IA qui bouscule les attentes de nos clients.
Pour autant, je veux maintenir un modèle plus exigeant qu'un modèle classique parce qu'il nous permet d'ouvrir des portes, là où les ESN généralistes restent dehors.
Si je n'avais qu'une métrique en tête, sur laquelle, je ne veux faire aucun compromis, ce serait celle-là : la note de fierté que les CodeWorkers nous donnent chaque année. On vise 4,8 sur 5 en 2026. Pour moi, c'est l'indicateur le plus honnête de la santé d'une boîte. Davantage que la croissance, davantage que la marge, c'est le baromètre de la confiance et de la stabilité de l'entreprise.
Si ce chiffre s'écroule, on aurait conscience d'un vrai problème de défiance, et il cela nous obligerait à revoir automatiquement le modèle.
Au fond, ce qui me garde mobilisé, c'est une conviction simple. Nos CodeWorkers nous confient plusieurs années de leur vie. Ils ont placé entre nos mains des espérances qu'on ne peut pas décevoir.
C'est cette responsabilité-là qui structure tout le reste : le code propre, la transparence, la solidarité, la patience. Ce sont les conditions concrètes de cette confiance, bien plus que des choix esthétiques.
Ce manifeste reflète ce que nous défendons aujourd'hui. Il évoluera et il sera challengé par les nouveaux arrivants, débattu et voté collectivement. Et c'est tant mieux car je partage la vision d'un manifeste évolutif et non dogmatique, un projet qui appartient avant tout aux CodeWorkers.
—Nourdine BOUAGHAZ, Fondateur & CEO, CodeWorks
M

.png)

.png)

