Dan Shipper et Kieran Klaassen présentent le compound engineering, le processus d'ingénierie développé chez Every où 100% du code est écrit par des agents IA. Le principe fondamental est l'inversion de la complexité : en ingénierie traditionnelle, chaque feature rend la suivante plus difficile ; en compound engineering, chaque feature la rend plus facile grâce à une boucle d'apprentissage qui documente chaque bug, test échoué et insight pour les agents futurs.
Le processus se décompose en quatre étapes. Le Plan (~40% du temps) commence par une recherche approfondie du codebase, de l'historique git et des meilleures pratiques externes, puis l'agent produit un document de planification complet incluant objectif, architecture proposée, exemples de code et critères de succès. Le Work (~10%) est la partie la plus simple : l'agent exécute le plan pas à pas, utilisant des protocoles MCP comme Playwright pour tester l'application comme un utilisateur réel et itérer jusqu'à satisfaction. L'Assess (~40%) combine linters, tests unitaires, tests manuels et un système de 12 subagents parallèles qui évaluent le code sous différentes perspectives (sécurité, performance, complexité, architecture). Le Compound (~10%) est "l'étape magique" : les leçons de chaque cycle sont résumées par l'agent et stockées pour usage futur.
Le compound engineering fonctionne en pratique chez Every : 5 produits logiciels (Cora, Spiral, Sparkle, Monologue et autres), chacun principalement construit et maintenu par une seule personne, sont utilisés par des milliers d'utilisateurs quotidiennement. L'estimation de productivité est qu'un développeur bien outillé fait aujourd'hui le travail de cinq développeurs d'il y a quelques années.
L'outil principal est Claude Code, mais l'approche est tool-agnostic (Factory Droid, OpenAI Codex CLI sont aussi utilisés). Every a publié un plugin open source pour Claude Code qui implémente le workflow complet, incluant les 12 subagents de review.
Le mécanisme de compounding est le différenciateur clé : les leçons apprises vivent dans le codebase sous forme de prompts, rendant chaque développeur — y compris les nouveaux arrivants — aussi bien informé qu'un vétéran. L'agent de Cora, par exemple, doit systématiquement se demander où placer une feature dans le système et s'il existe un précédent réutilisable.
Les auteurs concluent que cette approche rend obsolètes de nombreuses pratiques établies : écriture manuelle de tests, documentation exhaustive du code, exercices de codage en entretien sans internet, et lock-in technologique dû au legacy.