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
- 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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 - 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
¿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