Dev Breeze

Sécurité

“We’re Secure,” They Said: How Penetration Testing Shattered the Illusion

Cet article explore les illusions de sécurité que les entreprises peuvent avoir concernant leur cybersécurité, illustré par une expérience de test de pénétration. Un CTO sûr de ses millions investis en sécurité est confronté à la découverte de vulnérabilités majeures, démontrant que même les défenses jugées robustes peuvent être contournées. Cela met en évidence l'importance des tests de pénétration pour identifier des failles que les audits classiques peuvent négliger.

Dev back

Ever wondered why that last seat vanishes before you click? Here’s the tech behind it.🧑‍💻

Cet article explore la technologie derrière l'actualisation instantanée des disponibilités de sièges sur des applications comme BookMyShow. Il explique comment le Change Data Capture (CDC) permet de suivre en temps réel les changements dans les données, y compris les réservations et annulations, en utilisant des technologies comme MQTT et Elasticsearch pour maintenir les informations à jour sans avoir à rafraîchir la page.

Dev back

Storing Duplicate Keys in a Map in Java: A Senior QA Engineer’s Journey

L'article relate l'expérience d'un ingénieur QA senior qui a rencontré des difficultés en essayant de stocker plusieurs valeurs sous la même clé dans une carte Java. Après avoir constaté que Java ne permet pas les clés dupliquées, il a proposé d'utiliser une liste pour chaque clé afin de gérer plusieurs commentaires d'utilisateur. L'auteur évoque aussi l'utilisation de Guava pour simplifier cette gestion. Cette réflexion souligne l'importance du choix des structures de données dans le développement et les tests logiciels.

Dev back

Mastering Concurrency in Java: Lessons I Learned the Hard Way

Cet article traite de la maîtrise de la concurrence en Java, en partageant des leçons tirées de l'expérience de l'auteur. Il aborde les défis rencontrés lorsqu'on passe d'applications mono-thread à des systèmes multi-thread pour gérer efficacement des tâches concurrentes. Les concepts de bases comme les threads, Runnable, Callable sont expliqués, ainsi que des outils avancés tels que les locks et les sémaphores. L'auteur souligne également l'importance de la synchronisation et les problèmes de concurrence tels que les conditions de course et les blocages. Enfin, il met en avant l'utilisation de CompletableFuture pour simplifier la gestion des tâches asynchrones, améliorant ainsi la fiabilité et la scalabilité des systèmes construits.

Dev back

We Used @Autowired Everywhere — Then It Broke Our Tests

Cet article raconte l'expérience d'un développeur ayant utilisé l'annotation @Autowired dans un projet Spring Boot. Au début, cela simplifiait la gestion des dépendances, mais avec la croissance du projet, des problèmes de tests sont apparus car les tests isolés nécessitaient le contexte Spring complet. L'auteur partage les défis rencontrés et comment ils ont été résolus.

Dev back

I Tried 5 AI Testing Tools — Here’s What Actually Worked

Cet article examine cinq outils d'intelligence artificielle pour les tests de code, évaluant leur efficacité et leur applicabilité. Il discute de la manière dont ces outils peuvent générer des tests unitaires, faciliter l'automatisation des flux utilisateurs et fournir une couverture aux équipes qui manquent de ressources en assurance qualité. Les outils évalués incluent CodiumAI, Testim, QA Wolf et Diffblue, chacun ayant ses propres avantages et inconvénients, notamment la nécessité d'une supervision humaine et la gestion des faux positifs.

Autre

Récupérer les logs d'audit MKS avec Vector

Cet article présente comment récupérer les logs d'audit d'un cluster OVHCloud Managed Kubernetes Service en utilisant Vector. L'auteur explique les défis rencontrés pour accéder à ces logs et décrit la configuration de Vector pour ingérer des données en temps réel via WebSocket. La version v0.49.0 de Vector permet l'ingestion de données à partir d'APIs WebSocket, facilitant ainsi le traitement et l'envoi des logs vers une stack d'observabilité personnalisée.

Autre

Announcing the Symfony Comic Book (Symfony Blog)

Le projet de bande dessinée Symfony a été annoncé pour célébrer le 20e anniversaire du framework. Ce livre illustrera l'histoire de Symfony avec des faits amusants et des anecdotes. Des opportunités de parrainage sont offertes pour soutenir ce projet qui sera publié en novembre 2025. Le livre sera disponible en anglais au prix de 40€ et les sponsors bénéficieront de diverses reconnaissances. Les confirmations de parrainage sont attendues avant le 24 septembre 2025.

Management

Review — Is System Design School a Good Place to Learn System Design in 2025?

L'article examine l'école de conception de systèmes, mettant en avant son approche structurée et pratique pour préparer les ingénieurs aux entretiens. Dirigée par des anciens d'entreprises renommées, elle propose des cours, des problèmes réels, et des retours d'IA sur les conceptions. Le programme comprend des cours fondamentaux, des connaissances spécifiques et des problèmes d'entretien populaires, le tout agrémenté d'outils interactifs pour une meilleure préparation. L'auteur recommande fortement cette plateforme pour quiconque cherchant à améliorer ses compétences en conception de systèmes.

Management

How GitHub Models can help open source maintainers focus on what matters

L'article présente GitHub Models, un outil utilisant l'intelligence artificielle pour automatiser la gestion de projet open source. Il aide les mainteneurs à réduire les tâches répétitives telles que la triage d'issues, la détection de doublons et le filtrage de contributions de qualité. Avec des workflows automatisés, les mainteneurs peuvent se concentrer sur des tâches plus créatives tout en améliorant l'efficacité de leur gestion de projet. Le texte inclut des exemples concrets d'application de ces workflows dans un dépôt GitHub.