Preparación por profesión

Entrevista de Desarrollador Python: preguntas y respuestas.

Comportamiento de Python, servicios mantenibles y automatización.

Preguntas

Preguntas técnicas para practicar en voz alta

  1. 01

    ¿Qué es el GIL de Python?

    El GIL es un mutex de CPython que permite ejecutar bytecode Python a un solo hilo a la vez; los hilos ayudan con E/S, mientras el paralelismo de CPU suele requerir procesos o código nativo que lo libere.

    Leer el desglose completo
  2. 02

    ¿Cuándo usarías generadores en Python?

    Los generadores producen valores de forma perezosa con yield y conservan el estado entre iteraciones; úsalos para streams o secuencias grandes cuando materializar todo desperdicia memoria.

    Leer el desglose completo
  3. 03

    ¿Por qué son peligrosos los argumentos por defecto mutables?

    Los argumentos por defecto se evalúan una vez al definir la función, por lo que una lista o dict mutable se comparte entre llamadas; usa None y crea un objeto nuevo dentro.

    Leer el desglose completo
  4. 04

    ¿Cuándo usarías asyncio?

    asyncio es adecuado para cargas de E/S con mucha concurrencia y APIs no bloqueantes; no paraleliza código Python intensivo en CPU y las llamadas bloqueantes deben salir del event loop.

    Leer el desglose completo
  5. 05

    ¿Cómo funcionan los context managers de Python?

    Un context manager delimita adquisición y limpieza mediante __enter__ y __exit__, garantizando la limpieza tanto al terminar como ante una excepción; se utiliza con with.

    Leer el desglose completo
  6. 06

    ¿Cómo funcionan los decoradores de Python?

    Un decorador recibe una función o clase y devuelve un reemplazo, normalmente un wrapper que añade comportamiento; functools.wraps conserva metadatos y el wrapper debe mantener el contrato original.

    Leer el desglose completo
  7. 07

    ¿Cómo gestionas dependencias de Python?

    Gestiona dependencias Python con un archivo de proyecto y un lock reproducible, separa runtime de desarrollo, fija entornos desplegables y actualiza mediante cambios probados y revisables.

    Leer el desglose completo
  8. 08

    ¿Cuál es tu estrategia de testing en Python?

    Usa unitarias rápidas para comportamiento puro, integración para límites reales, fixtures de alcance pequeño y pruebas de contrato o end-to-end solo para rutas críticas; aísla tiempo, red y estado global mutable.

    Leer el desglose completo
  9. 09

    ¿Cómo usas type hints en Python?

    Los type hints documentan y comprueban contratos estáticamente, pero no se aplican automáticamente en runtime; usa unions, protocols y genéricos cuando aclaren APIs y ejecuta un type checker en CI.

    Leer el desglose completo
  10. 10

    ¿Cómo analizas un servicio Python lento?

    Perfila un servicio Python lento con carga representativa: separa latencia externa de CPU y asignaciones, usa tracing y cProfile o py-spy, optimiza la ruta medida y compara con la línea base.

    Leer el desglose completo