18 oct
|
Krause Technologies
|
Bogotá
18 oct
Krause Technologies
Bogotá
Ingeniero de Desarrollo SeniorDescripción del puesto
El Ingeniero de Desarrollo Senior es responsable de diseñar, desarrollar, implementar y mantener soluciones de software robustas, escalables y de alto rendimiento. Este profesional lidera decisiones técnicas, establece buenas prácticas de programación y colabora con equipos multidisciplinarios para transformar los requerimientos del negocio en soluciones tecnológicas eficientes. Asimismo, participa en la definición de arquitecturas de software, la optimización de sistemas existentes y la resolución de problemas técnicos complejos, contribuyendo a la calidad, seguridad y evolución continua de los productos digitales.
Responsabilidades
- Diseñar, desarrollar y mantener aplicaciones, servicios y componentes de software de acuerdo con los requerimientos funcionales y técnicos.
- Definir y evaluar arquitecturas de software que favorezcan la escalabilidad, mantenibilidad, seguridad y rendimiento de las soluciones.
- Escribir código limpio, eficiente, reutilizable y documentado, siguiendo los estándares de desarrollo establecidos.
- Liderar revisiones de código y proporcionar orientación técnica a desarrolladores de distintos niveles de experiencia.
- Analizar requerimientos técnicos y colaborar con los equipos de producto para definir soluciones viables y estimaciones de desarrollo.
- Diseñar, implementar y mantener APIs e integraciones entre sistemas internos y servicios externos.
- Identificar, diagnosticar y resolver errores complejos relacionados con el funcionamiento, rendimiento y estabilidad de las aplicaciones.
- Desarrollar y ejecutar pruebas unitarias, de integración y funcionales para garantizar la calidad del software.
- Participar en la automatización de procesos de construcción, pruebas y despliegue mediante prácticas de integración y entrega continuas (CI/CD).
- Optimizar el rendimiento de aplicaciones, consultas de bases de datos y servicios backend.
- Aplicar buenas prácticas de seguridad informática para prevenir vulnerabilidades y proteger la información.
- Colaborar con los equipos de infraestructura, DevOps, control de calidad y diseño para garantizar entregas eficientes.
- Mantener actualizada la documentación técnica, los diagramas de arquitectura y los procedimientos de desarrollo.
- Investigar nuevas tecnologías, herramientas y metodologías que puedan mejorar los procesos y productos de software.
- Participar en la planificación de proyectos, estimación de tareas y seguimiento de entregas técnicas.
- Proponer mejoras continuas en la arquitectura, los procesos de desarrollo y la calidad general de los sistemas.
Educación y calificaciones
- Título competente en Ingeniería de Sistemas, Ingeniería de Software, Ciencias de la Computación o una carrera relacionada.
- Experiencia sólida en desarrollo de software y participación en proyectos tecnológicos de mediana o alta complejidad.
- Dominio de uno o varios lenguajes de programación, como Java, Python, JavaScript, TypeScript, C# o Go.
- Conocimientos avanzados de estructuras de datos, algoritmos, programación orientada a objetos y principios de diseño de software.
- Experiencia en diseño e implementación de APIs REST y arquitecturas de aplicaciones.
- Manejo de bases de datos relacionales y no relacionales, incluyendo optimización de consultas y modelado de datos.
- Experiencia con Git y plataformas de colaboración para el control de versiones.
- Familiaridad con metodologías ágiles, como Scrum o Kanban.
- Conocimientos de pruebas automatizadas, integración continua y despliegue continuo.
- Deseable experiencia con servicios en la nube, contenedores Docker y herramientas de orquestación.
- Conocimientos de seguridad en el desarrollo de software y gestión de vulnerabilidades.
- Capacidad para interpretar documentación técnica en inglés.
Habilidades y competencias
- Pensamiento analítico y capacidad para resolver problemas técnicos complejos.
- Liderazgo técnico y capacidad para orientar a otros desarrolladores.
- Comunicación efectiva con equipos técnicos y áreas de negocio.
- Atención al detalle y compromiso con la calidad del código.
- Capacidad para tomar decisiones técnicas fundamentadas.
- Organización y gestión eficiente del tiempo.
- Proactividad en la identificación de riesgos y oportunidades de mejora.
- Adaptabilidad ante nuevas tecnologías y cambios en los requerimientos.
- Trabajo colaborativo y disposición para compartir conocimientos.
- Orientación a resultados y cumplimiento de objetivos.
- Compromiso con la seguridad, la documentación y las buenas prácticas de ingeniería de software.
Lugar de trabajo: Empleo presencial
📌 Ingeniero de Desarrollo Senior (Bogotá)
🏢 Krause Technologies
📍 Bogotá