Preguntas de entrevista de Backend y APIs
52 preguntas de entrevista de Backend y APIs con respuestas, de nivel junior a intermedio.
Fundamentos
- ¿Qué es el backend de una aplicación web?
- ¿Qué es un servidor?
- En 'cliente y servidor', ¿qué es un cliente?
- ¿Qué significa 'full-stack developer'?
- Analogía del restaurante: el cliente pide a un camarero, que lleva el pedido a la cocina y trae la comida. ¿Qué parte es la API?
- ¿Qué es HTTP?
- En la dirección
https://api.shop.com/products?id=7, ¿qué parte es la ruta (path)? - ¿Qué frase describe mejor REST?
- ¿Qué hace por ti un framework web de backend como Spring Boot, FastAPI o Django?
- En una conversación HTTP, ¿quién envía el primer mensaje?
Base
- ¿Cuál es la diferencia entre PUT y PATCH?
- Un usuario con sesión iniciada pide la factura de otro cliente (tenant). ¿Qué código de estado es el más apropiado?
- Un
POST /userscorrecto que crea un usuario debería devolver idealmente… - ¿Qué es una API?
- ¿Qué lista contiene las partes principales de una petición HTTP?
- ¿Para qué sirve una petición GET?
- ¿Qué significan los códigos de estado HTTP que empiezan por 2, 4 y 5?
GET /users/9999y ese usuario no existe. ¿Cuál es el código de estado correcto?- Tu API devuelve 500 Internal Server Error. ¿Qué suele indicar?
- ¿Qué es JSON?
- En
GET /users/42/orders?status=paid&limit=10, ¿cuáles son el parámetro de ruta y los parámetros de query? - ¿Qué endpoint sigue las convenciones de nombres REST?
- ¿Qué añade HTTPS a HTTP?
- ¿Qué le dice al servidor el header de petición
Content-Type: application/json? - En FastAPI, ¿qué hace
@app.get("/items/{item_id}")encima de una función?
Intermedio
- ¿Qué método HTTP NO es idempotente por definición?
- FastAPI recibe un cuerpo que no pasa la validación de Pydantic. ¿Qué estado devuelve por defecto?
- Un cliente supera el rate limit. ¿Qué estado y header son los estándar?
- ¿Qué afirmación sobre un JWT firmado estándar (JWS) es verdadera?
- En una app web de navegador, ¿dónde está más a salvo de un robo por XSS un token de sesión o autenticación?
- ¿Qué es el middleware en un framework web?
- ¿Qué afirmación sobre CORS es correcta?
- Listar 50 pedidos y luego acceder a
order.customer.nameen un bucle dispara 51 consultas. En Django, la solución habitual para esta foreign key es… - En SQLAlchemy, ¿qué es principalmente la
Session? - ¿Qué hace
Depends(get_db)en la firma de un endpoint de FastAPI? - WSGI frente a ASGI: ¿qué añade ASGI?
- ¿Qué restricción de REST significa que cada petición lleva toda la información necesaria para procesarla?
- Un endpoint genera un informe en 2 minutos. ¿Cuál es el mejor diseño de API?
- ¿Qué forma de versionar una API es la más común y explícita en APIs REST públicas?
- Diseña una API REST para un recurso de reservas (habitaciones de hotel). ¿Qué endpoints, códigos y aspectos cuidarías?
Avanzado
- ¿Cuál es la principal desventaja de los access tokens JWT stateless?
- ¿Qué flujo de OAuth 2.0 se recomienda para aplicaciones de una sola página y apps móviles?
- En FastAPI debes llamar a un SDK lento y bloqueante. ¿Qué opción evita bloquear el event loop?
- ¿Por qué se prefiere la paginación por cursor (keyset) a
OFFSETen conjuntos de datos grandes y cambiantes? - Una app móvil reintenta un POST de pago tras un timeout. ¿Cómo evitas un cobro doble?
- ¿Qué algoritmo de rate limiting permite ráfagas cortas de forma natural mientras impone una tasa media?
- ¿Qué ofrece normalmente gRPC frente a JSON/REST?
- En GraphQL, resolver
posts { author { name } }de forma ingenua causa muchas consultas. ¿Cuál es la solución común? - ¿Cómo debe verificar tu servicio los webhooks que recibe de un proveedor?
- Un cliente envía
If-None-Match: "abc123"y el recurso no ha cambiado. ¿Qué responde el servidor? - Un punto de partida común para el número de sync workers de Gunicorn es…
- ¿Cómo protegerías una API REST de extremo a extremo?