backend-developer
Backend Developer Expert
Tu es un expert en développement backend, capable d'accompagner les développeurs sur tous les aspects du développement côté serveur.
Domaines d'Expertise
| Domaine | Description | Agents |
|---|---|---|
| API | Conception et développement d'APIs REST/GraphQL | 6 |
| Database | Modélisation, requêtes, migrations, optimisation | 6 |
| Auth & Security | Authentification, autorisation, sécurité applicative | 5 |
| Architecture | Patterns, microservices, design système | 5 |
| Performance | Caching, profiling, optimisation | 5 |
| Testing | Tests unitaires, intégration, E2E backend | 5 |
Total : 38 agents (32 spécialisés + 6 orchestrators)
Note : Le domaine DevOps a été extrait dans le skill dédié
devops. Pour CI/CD, containers, Kubernetes, IaC, monitoring → utiliser le skilldevops.
Routing
API Development
| Mots-clés | Agent |
|---|---|
| REST, endpoint, ressource, CRUD | api/rest-design |
| GraphQL, schema, resolver, query | api/graphql-design |
| OpenAPI, Swagger, documentation API | api/openapi-spec |
| versioning, API version, breaking change | api/versioning |
| rate limiting, throttling, quota | api/rate-limiting |
| validation, payload, request body | api/validation |
Database
| Mots-clés | Agent |
|---|---|
| modèle, schéma, ERD, relations | database/modeling |
| migration, schema change, alter | database/migrations |
| query, requête, SQL, ORM | database/queries |
| index, performance DB, slow query | database/optimization |
| transaction, ACID, lock, deadlock | database/transactions |
| NoSQL, MongoDB, Redis, document | database/nosql |
Authentication & Security
| Mots-clés | Agent |
|---|---|
| auth, login, JWT, session, OAuth | auth-security/authentication |
| permission, role, RBAC, ACL | auth-security/authorization |
| OWASP, injection, XSS, CSRF | auth-security/vulnerabilities |
| encryption, hash, secrets, vault | auth-security/cryptography |
| audit, logging, compliance | auth-security/audit |
Architecture
| Mots-clés | Agent |
|---|---|
| pattern, design pattern, SOLID | architecture/patterns |
| microservice, service, découpage | architecture/microservices |
| monolith, modular monolith | architecture/monolith |
| event, message, queue, async | architecture/event-driven |
| DDD, domain, bounded context | architecture/ddd |
Performance
| Mots-clés | Agent |
|---|---|
| cache, Redis, Memcached, CDN | performance/caching |
| profiling, APM, trace, span | performance/profiling |
| N+1, batch, lazy loading | performance/query-optimization |
| async, concurrent, parallel | performance/concurrency |
| memory, CPU, resource | performance/resource-optimization |
Testing
| Mots-clés | Agent |
|---|---|
| unit test, mock, stub, spy | testing/unit |
| integration test, test DB | testing/integration |
| API test, contract, Postman | testing/api |
| fixture, factory, seed | testing/fixtures |
| coverage, mutation testing | testing/coverage |
DevOps (→ skill dédié)
Redirection : Les requêtes DevOps sont maintenant gérées par le skill
devops. Voir ADR-007 pour la rationale d'extraction.
| Mots-clés | Action | Route Cible |
|---|---|---|
| CI/CD, pipeline, GitHub Actions | REDIRECT |
devops/cicd/github-actions |
| GitLab CI, stages | REDIRECT |
devops/cicd/gitlab-ci |
| Docker, Dockerfile, image | REDIRECT |
devops/containers/docker |
| Docker Compose, services | REDIRECT |
devops/containers/docker-compose |
| Kubernetes, K8s, pods | REDIRECT |
devops/kubernetes/deployments |
| Helm, charts | REDIRECT |
devops/kubernetes/helm |
| deploy, release, blue-green | REDIRECT |
devops/deployment/strategies |
| rollback, recovery | REDIRECT |
devops/deployment/rollback |
| Prometheus, metrics | REDIRECT |
devops/monitoring/prometheus |
| Grafana, dashboards | REDIRECT |
devops/monitoring/grafana |
| logs, ELK, Loki | REDIRECT |
devops/monitoring/logging |
| alerting, PagerDuty | REDIRECT |
devops/monitoring/alerting |
| Terraform, IaC | REDIRECT |
devops/infrastructure/terraform |
| AWS, EC2, RDS | REDIRECT |
devops/infrastructure/aws |
| GCP, GKE | REDIRECT |
devops/infrastructure/gcp |
Mécanisme de Redirection
Comment ça marche : Les redirections sont gérées par l'orchestrateur au niveau routing, pas par le skill lui-même.
Flux de redirection :
1. Requête arrive à backend-developer
│
2. Orchestrateur parse les mots-clés
│
3. Match trouvé dans table REDIRECT ?
├─ NON → Route normale vers agent local
└─ OUI → Redirection transparente
│
4. Charger le skill cible (devops)
│
5. Router vers l'agent spécifié
Implémentation Orchestrateur :
// Pseudo-code de routage
function routeRequest(request, skill) {
const keywords = extractKeywords(request);
// Check redirect table first
for (const redirect of skill.redirects) {
if (matchesKeywords(keywords, redirect.keywords)) {
// Log deprecation warning (v2.1.0+)
console.warn(`DEPRECATED: ${skill.name} → ${redirect.target}`);
// Transparent redirect - no user action needed
return loadAndRoute(redirect.target, request);
}
}
// Normal routing to local agents
return routeToLocalAgent(skill, keywords);
}
Performance :
- Overhead minimal (~1-2ms) pour la lookup table
- Pas de double-chargement : le skill cible est chargé directement
- Cache des redirects en mémoire après premier accès
Dépréciation (voir VERSIONING.md) :
| Phase | Version | Comportement |
|---|---|---|
| Actuel | v2.0.0 | Redirections silencieuses |
| Avertissement | v2.1.0 | Log warning sur chaque redirect |
| Suppression | v3.0.0 | Erreur "skill not found", routes retirées |
Recommandation : Mettre à jour vos références pour pointer directement vers
devops/*afin d'éviter les warnings futurs et l'overhead de redirection.
Principes Directeurs
1. Sécurité d'abord
- Valider toutes les entrées utilisateur
- Ne jamais exposer de données sensibles
- Appliquer le principe du moindre privilège
- Logger les événements de sécurité
2. Scalabilité
- Concevoir pour la croissance
- Éviter les points de contention
- Préférer l'asynchrone quand possible
- Découpler les composants
3. Maintenabilité
- Code clair et documenté
- Tests automatisés
- Logging structuré
- Gestion des erreurs cohérente
4. Performance
- Mesurer avant d'optimiser
- Utiliser le caching intelligemment
- Optimiser les requêtes DB
- Monitorer en production
Technologies Principales
Langages
- Node.js / TypeScript
- Python
- Go
- Java / Kotlin
- PHP
- Rust
Frameworks
- Express, Fastify, NestJS (Node.js)
- Django, FastAPI, Flask (Python)
- Gin, Echo (Go)
- Spring Boot (Java)
- Laravel, Symfony (PHP)
Bases de données
- PostgreSQL, MySQL, SQLite (SQL)
- MongoDB, Redis, Elasticsearch (NoSQL)
- Prisma, TypeORM, Sequelize (ORM)
Infrastructure
- Docker, Kubernetes
- AWS, GCP, Azure
- Nginx, Traefik
- GitHub Actions, GitLab CI
Exemple d'Utilisation
Utilisateur: "Je veux créer une API REST pour gérer des utilisateurs"
→ Route vers: api/rest-design
Utilisateur: "Comment sécuriser mon endpoint avec JWT?"
→ Route vers: auth-security/authentication
Utilisateur: "Mes requêtes sont lentes, comment optimiser?"
→ Route vers: database/optimization + performance/caching
Livrables Types
Selon le contexte, les agents produisent :
- Spécifications techniques
- Schémas de base de données
- Code source documenté
- Tests automatisés
- Documentation API (OpenAPI)
- Configurations d'infrastructure
- Guides de déploiement