Ingeniero Senior de Python (Desarrollo de Aplicaciones) (Colombia)

Ingeniero Senior de Python (Desarrollo de Aplicaciones) (Colombia)

02 ago
|
Robótica AI
|
Colombia

02 ago

Robótica AI

Colombia

Estamos desarrollando una aplicación en Python que se integrará con una plataforma de producción existente alojada en AWS. El trabajo está enfocado completamente en desarrollo de aplicaciones: escribirás la lógica principal en Python, la capa de acceso a datos y la superficie de API que consumirá el resto de la plataforma.

Este es un código donde el rendimiento es crítico. La aplicación evalúa lógica basada en configuraciones en tiempo real, realiza cálculos matemáticos y dimensionales, e integra servicios de inteligencia artificial (Claude y otros modelos) como parte de su flujo de procesamiento. La velocidad de ejecución y una estructura limpia y mantenible son tan importantes como la precisión.

Contamos con un equipo dedicado de despliegue (deployment), por lo que no dedicarás tu tiempo a tareas de infraestructura. Tu enfoque será escribir código Python de alta calidad.

Lo que harás

- Desarrollar lógica de aplicación en Python que funcione dentro de una arquitectura de plataforma existente.
- Diseñar e implementar lógica basada en configuración que lea reglas y definiciones estructuradas en formato JSON, almacenadas en una base de datos o en Amazon S3, y las aplique para controlar el comportamiento de la aplicación en tiempo de ejecución.
- Gestionar estados dinámicos: lógica y restricciones que se generan y actualizan continuamente mientras la aplicación está en uso, no únicamente al iniciarse.
- Leer y escribir información en bases de datos, además de diseñar esquemas JSON que sean limpios, escalables y fáciles de mantener conforme evolucionen los requisitos.
- Implementar cálculos matemáticos y dimensionales con precisión y alto rendimiento.
- Integrar servicios de IA y modelos de lenguaje (LLM) dentro de los flujos de trabajo de la aplicación.
- Desarrollar y exponer endpoints y rutas API utilizando un framework de Python.
- Analizar y optimizar rutas críticas de ejecución, seleccionando las bibliotecas y estructuras de datos más eficientes para maximizar el rendimiento.
- Diseñar soluciones concurrentes,



aprovechando ejecución paralela y no secuencial cuando el problema lo permita.
- Empaquetar la solución para entregarla al equipo responsable del despliegue.

Habilidades requeridas

Dominio profundo de Python

- Conocimiento sólido de las estructuras de datos fundamentales: listas, diccionarios, conjuntos (sets) y tuplas, entendiendo cuándo utilizar cada una y por qué.
- Programación orientada a objetos: clases, métodos e herencia; capacidad para desarrollar funciones y clases que interactúen de forma limpia y componible.
- Desarrollo de flujos de trabajo de múltiples etapas, donde la salida de una fase alimenta la siguiente.
- Evitar el uso de estado global o mutable; mantener un manejo limpio del alcance de variables y de la inyección de dependencias.

Ingeniería de rendimiento

- Escribir código altamente eficiente y ser capaz de explicar por qué una implementación es rápida.
- Dominio de concurrencia y paralelismo: threading, multiprocessing y async/await, comprendiendo cuándo utilizar cada enfoque.
- Elegir la biblioteca adecuada para cada problema (por ejemplo, NumPy en lugar de bucles tradicionales para operaciones numéricas), priorizando el rendimiento por encima de la familiaridad.
- Utilizar herramientas de perfilado (profiling) y benchmarking para identificar cuellos de botella reales antes de optimizar.

Datos y estructura

- Experiencia leyendo y escribiendo información en bases de datos SQL y/o NoSQL.
- Manejo de lectura, escritura, validación y estructuración de documentos JSON.
- Diseño de esquemas JSON que sean claros, extensibles y fáciles de validar.

APIs

- Desarrollo de endpoints y rutas utilizando frameworks como FastAPI, Flask o Django.




- Validación de solicitudes y respuestas, manejo adecuado de errores y uso correcto de códigos de estado HTTP.

Buenas prácticas de ingeniería

- Código limpio: nombres descriptivos, funciones pequeñas y enfocadas, y una separación clara de responsabilidades.
- Manejo de Git y GitHub: ramas, pull requests, revisiones de código y resolución de conflictos.
- Gestión de variables de entorno mediante archivos .env, evitando credenciales o configuraciones específicas codificadas directamente en el código.
- Experiencia con Docker y contenedores.
- Comodidad trabajando desde la terminal.
- VS Code como ambiente de desarrollo principal.

Deseable (No obligatorio)

- Conocimientos prácticos de AWS, especialmente Amazon S3.
- Experiencia desarrollando aplicaciones basadas en reglas, configuraciones o políticas.
- Experiencia integrando APIs de modelos de lenguaje (LLM) en aplicaciones de producción.
- Experiencia en geometría computacional, matemáticas espaciales o aplicaciones con cálculos dimensionales.
- Conocimientos de pruebas automatizadas con pytest y familiaridad con procesos de CI/CD.

Perfil que buscamos

Buscamos personas que desarrollen soluciones rápidamente sin sacrificar la calidad del código. Que valoren el rendimiento de sus implementaciones y se preocupen por cuánto tarda en ejecutarse cada proceso. Que prefieran hacer una pregunta de aclaración el primer día antes que desarrollar la solución equivocada durante dos semanas. Que disfruten leer el código de otros desarrolladores y dejarlo mejor de como lo encontraron.

Cómo postularse

Envía tu hoja de vida junto con el enlace a tu perfil de GitHub o una muestra de código que refleje cómo estructuras un proyecto en Python.

Además, cuéntanos brevemente sobre una ocasión en la que lograste mejorar significativamente el rendimiento de una aplicación: ¿qué era lo que estaba lento?, ¿qué cambios realizaste? y ¿cuál fue el resultado obtenido?

Lugar de trabajo: Empleo remoto

📌 Ingeniero Senior de Python (Desarrollo de Aplicaciones) (Colombia)
🏢 Robótica AI
📍 Colombia

Postulate a este anuncio

Muestra tus habilidades a la empresa, rellenar el formulario y deja un toque personal en la carta, ayudará el reclutador en la elección del candidato.

Suscribete a esta alerta:

Recibe por email las nuevas ofertas de trabajo para: ingeniero senior de python (desarrollo de aplicaciones) (colombia) / colombia