Backend Senior

VérifiéPrudence

Guide le développement backend avec Node.js, Go, Python, PostgreSQL, GraphQL et API REST. Couvre le scaffolding d'API, l'optimisation de base de données, la sécurité et le réglage des performances.

Spar Skills Guide Bot
DeveloppementIntermédiaire
23/07/2026
Claude CodeCursorWindsurfCopilotCodex
#backend#api-design#database#security#performance

Recommandé pour

Synthèse automatique

Ce skill guide le développement backend autour de la conception d'API, de l'optimisation de bases de données et de la mise en place de la sécurité.

Points forts

  • Fournit des checklists concrètes pour la conception d'API et l'optimisation des requêtes
  • Inclut des scripts pour scaffolder une API, gérer les migrations et tester la charge
  • Couvre les bonnes pratiques de sécurité comme les requêtes paramétrées, la validation Zod et les contrôles d'autorisation
  • Propose une documentation de référence sur les patterns REST/GraphQL, l'indexation et la sécurité

Limites

  • Suppose une stack précise (Node.js, Express, Go, Python, PostgreSQL, GraphQL) et reste moins pertinent hors de cet écosystème
  • Les scripts Python référencés doivent exister dans le dépôt du skill pour fonctionner
  • Ne couvre pas les tests automatisés ni le frontend, renvoyés vers d'autres skills
Quand l'utiliser

À utiliser lorsqu'il faut concevoir un endpoint, corriger une requête N+1, ajouter une authentification ou revoir du code backend.

Quand l'éviter

À éviter pour du travail d'interface utilisateur, la rédaction de tests ou la génération de changelogs.

Analyse de sécurité

Prudence
Score qualité85/100

The skill is not malicious and contains no obvious exfiltration, obfuscation, or destructive commands. However, it relies on executing bundled scripts and database migrations through Bash, which carries legitimate but meaningful operational risk and warrants a caution rating.

Points d'attention
  • •Instructs running bundled Python scripts via Bash (`api_scaffolder.py`, `database_migration_tool.py`, `api_load_tester.py`) without showing their contents or safety behavior.
  • •Database migration tool can make state-changing/destructive schema changes if pointed at the wrong database.
  • •Load tester may generate network traffic against APIs; users should confirm target authorization.
  • •Uses Bash, Write, and WebSearch, which are powerful but appropriate for backend development workflows.
Comment cette analyse est faite

Exemples

Design a REST endpoint
Design a REST endpoint for creating orders in my Express API, with Zod validation, auth middleware, and an ownership check.
Fix a slow query
My PostgreSQL endpoint is slow and I suspect an N+1 query in the ORM include — help me fix it and add the right indexes.
Add rate limiting and auth
Add rate limiting and JWT authentication to my Go backend service and review the security of my existing routes.

name: senior-backend description: "Guides backend system development with Node.js, Express, Go, Python, PostgreSQL, GraphQL, and REST APIs. Use when the user says: 'design an API', 'optimize database queries', 'implement authentication', 'set up backend', 'create API endpoint', 'database migration', 'fix N+1 query', 'add rate limiting', 'backend code review'. Covers API scaffolding, database optimization, security implementation, and performance tuning. Do NOT use for frontend/UI work (use senior-fullstack), test writing (use tdd-workflow), or changelog generation." allowed-tools: [Read, Edit, Write, Bash, Grep, Glob, WebSearch]

Senior Backend

Guide backend development with focus on API design, database optimization, and security.

Core Workflow

1. Scaffold an API

Generate API boilerplate with best practices:

python scripts/api_scaffolder.py <project-path> [options]

2. Manage Database Migrations

Run the migration tool for schema changes:

python scripts/database_migration_tool.py <target-path> [--verbose]

3. Load Test APIs

Verify performance under load:

python scripts/api_load_tester.py [--analyze]

Reference Documentation

Consult before implementing:

  • references/api_design_patterns.md -- REST/GraphQL patterns, versioning, error responses
  • references/database_optimization_guide.md -- indexing, N+1 prevention, query tuning
  • references/backend_security_practices.md -- auth, CORS, rate limiting, injection prevention

Key Principles

  • Parameterized queries: Never concatenate user input into SQL
  • Input validation: Use Zod schemas for all API request bodies
  • Error responses: Return consistent error format with status code, message, and error code
  • Auth checks: Verify user ownership on every data access (WHERE userId = ?)
  • Idempotency: Design mutations to be safely retryable (especially webhooks)

API Design Checklist

  1. Define Zod schema for request/response
  2. Implement route handler with proper HTTP methods
  3. Add authentication middleware
  4. Add authorization check (ownership/role)
  5. Validate input, execute logic, return typed response
  6. Add error handling with appropriate status codes
  7. Write integration test

Database Optimization Checklist

  • Add indexes for frequently queried columns
  • Use SELECT only needed columns (avoid SELECT *)
  • Prevent N+1 with eager loading (include/join)
  • Use connection pooling in production
  • Add EXPLAIN ANALYZE for slow queries

Error Handling

  • If migration fails: check database connection string and run npx prisma migrate status
  • If load test shows high latency: check references/database_optimization_guide.md for indexing strategies
  • If API scaffolder errors: verify Python 3.8+ and required templates exist in scripts/
  • If auth fails: verify JWT_SECRET is set and token expiry is configured
  • Always validate webhook signatures before processing payloads

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/senior-backend-mrx3xxm2/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/senior-backend-mrx3xxm2' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/senior-backend-mrx3xxm2/download' --output '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md.part' && mv '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md.part' '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && test -s '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/senior-backend' && cp -R '.skill-downloads/senior-backend-mrx3xxm2' '.claude/skills/senior-backend'

Cursor
test -f '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && test -s '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && mkdir -p '.cursor/skills' && test ! -e '.cursor/skills/senior-backend' && cp -R '.skill-downloads/senior-backend-mrx3xxm2' '.cursor/skills/senior-backend'

Codex
test -f '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && test -s '.skill-downloads/senior-backend-mrx3xxm2/SKILL.md' && mkdir -p '.agents/skills' && test ! -e '.agents/skills/senior-backend' && cp -R '.skill-downloads/senior-backend-mrx3xxm2' '.agents/skills/senior-backend'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/senior-backend-mrx3xxm2'

openskills read 'senior-backend-mrx3xxm2'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/senior-backend-mrx3xxm2/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires