Seniorix

Guía de entrevista · GraphQL

Preguntas de entrevista senior de GraphQL

Una selección de escenarios reales de entrevista técnica de GraphQL para nivel senior. Cada pregunta incluye el contexto, una respuesta modelo y las claves que busca un entrevistador. Esta es una muestra gratuita del banco completo de Seniorix.

Haz el diagnóstico gratis y descubre tu nivel →

Pregunta de ejemplo (con respuesta)

Tu API GraphQL colapsa la base de datos cuando los clientes piden listas con relaciones anidadas. El equipo de datos reporta miles de queries idénticas por segundo. ¿Cómo lo resuelves?

Contexto

Marketplace con un schema donde Order → Customer → Address. Una query de 100 órdenes dispara 100 lookups de customer y 100 de address. No puedes prohibir que los clientes pidan relaciones anidadas.

Respuesta modelo

Es el problema N+1 clásico de GraphQL. 1) Introducir DataLoader por request: agrupa las claves solicitadas en un mismo tick del event loop y hace un solo batch (WHERE id IN (...)), además de deduplicar y cachear por la vida del request. 2) Un DataLoader por entidad (customerLoader, addressLoader). 3) Medir con tracing (Apollo Tracing / OpenTelemetry) para confirmar la reducción de queries. 4) Como segunda capa, límites de complejidad y profundidad para acotar el peor caso. 5) Si las relaciones son estables, añadir caché de datos (Redis) detrás del loader. Lo importante: el DataLoader debe crearse por request para no filtrar datos entre usuarios.

Claves

Más preguntas de GraphQL

Necesitas cambiar un campo del schema que usan decenas de clientes móviles que no puedes forzar a actualizar. ¿Cómo evolucionas el schema sin romper a nadie?

🔒 Ve la respuesta modelo y los tips creando tu cuenta gratis

Expones una API GraphQL pública y un atacante manda queries profundamente anidadas que consumen todo el CPU. ¿Cómo proteges el servidor sin bloquear a los clientes legítimos?

🔒 Ve la respuesta modelo y los tips creando tu cuenta gratis

Practica todas las preguntas de GraphQL creando tu cuenta gratis →