Nous construisons une grande partie du produit depuis Slack
C'est l'aspect que les gens trouvent généralement le plus surprenant. Nous avons un canal Slack public où n'importe qui dans l'entreprise, ingénieur ou non, peut demander une machine virtuelle, lui confier une tâche, et recevoir une PR en retour. Captures d'écran, vidéo enregistrée de la fonctionnalité en action, l'ensemble du processus.
Environ la moitié des personnes qui l'utilisent ne sont pas des ingénieurs. Un chef de produit souhaite un prototype rapide à montrer à un client. Un juriste veut savoir comment l'usage d'une fonctionnalité spécifique a évolué le trimestre dernier. Une personne du support effectue une analyse de cause racine et fait même corriger des bugs plutôt que d'ouvrir un ticket et d'attendre.
Ce n'est pas un substitut au développement classique. Lorsque vous construisez quelque chose de substantiel, vous voulez toujours votre propre machine, vos propres allers-retours avec le modèle, la possibilité de lire le code correctement. Mais pour la correction de bugs, l'analyse de cause racine et le prototypage rapide, cela transforme notre vitesse d'exécution.
Les garde-fous comptent plus qu'avant
La préoccupation évidente avec tout cela est la qualité. Si vous laissez l'IA écrire autant de code aussi rapidement, vous pouvez vous retrouver avec ce nouveau terme du secteur, le « AI slop », du code qui fonctionne techniquement mais que personne ne comprend ni ne fait confiance.
La solution consiste à investir réellement dans les lignes directrices à partir desquelles l'IA travaille. Nous tenons une bibliothèque écrite de règles architecturales, la manière dont les couches doivent communiquer entre elles, ce que chaque endpoint doit vérifier, comment nous modélisons les données, et nous utilisons cette même bibliothèque à la fois pour générer du code et pour le réviser. Lorsqu'un humain refuse une PR pour une raison qui n'était pas encore consignée, ce retour est intégré aux lignes directrices. Les règles deviennent ainsi de plus en plus précises. Un humain garde toujours le dernier mot sur la fusion ou non d'un changement.