Propósito del Puesto:
Liderar el desarrollo de soluciones de software escalables, proporcionando experiencia técnica en todas las fases del ciclo de vida del desarrollo. El Desarrollador Senior será responsable de tomar decisiones técnicas, diseñar arquitecturas complejas y mentorizar a otros desarrolladores, asegurando la calidad y eficiencia del software entregado.
Responsabilidades Principales:
• Liderar el diseño, desarrollo y despliegue de aplicaciones complejas y escalables.
• Tomar decisiones estratégicas sobre arquitectura de software y patrones de diseño.
• Optimizar consultas y gestionar bases de datos de gran escala.
• Implementar y gestionar prácticas de integración continua y entrega continua (CI/CD).
• Asegurar la calidad del software mediante pruebas avanzadas y automatización.
• Mentorizar y guiar a desarrolladores junior y de nivel medio, promoviendo buenas prácticas de desarrollo.
Salario: Rango salarial de Q11,000 a Q14,000, ajustado según la experiencia y responsabilidades.
• Modalidad de trabajo: Presencial, con posibilidad de trabajo híbrido según el rendimiento.
• Tipo de Contrato: Indefinido.
• Jornada laboral “Presencial” de lunes a viernes de 08:00 a 17:00 horas.
Requisitos Académicos:
• Licenciatura en Ciencias de la Computación, ingeniería de Software o un campo relacionado (en curso con al menos 10 semestres completados o pensum cerrado).
• Certificaciones avanzadas o especializaciones técnicas (opcional).
Habilidades Técnicas Específicas:
• Lenguajes de programación: Dominio de Java, C#, JavaScript, y Python.
• Frameworks: o Java: Experiencia para el desarrollo de microservicios. o C#: Conocimiento profundo de .NET para la construcción de aplicaciones empresariales. o JavaScript: Manejo de frameworks frontend como React o Angular, y Node.js en backend. o Python: Familiaridad con Django o Flask para el desarrollo de aplicaciones web y herramientas de automatización, raspado de información y desarrollo de RPA.
• Arquitectura de software: Experiencia en arquitecturas de microservicios, diseño orientado a eventos y patrones de diseño como MVC, Singleton y Factory.
• Bases de datos: Conocimientos avanzados en optimización de consultas SQL y manejo de bases de datos NoSQL como MongoDB.
• CI/CD: Competencia en herramientas de CI/CD como Jenkins, GitLab CI, y automatización de despliegues usando Docker, Kubernetes y swarm.
• Pruebas de software y automatización: Experiencia en pruebas unitarias y de integración (JUnit, NUnit, PyTest) y automatización con Selenium o Cypress.
Experiencia:
• 2 a 4 años de experiencia profesional en desarrollo de software, con liderazgo en proyectos complejos y entrega de soluciones escalables.
Habilidades Blandas y Capacidades Adicionales:
• Capacidad para liderar equipos y proporcionar mentoría efectiva a otros desarrolladores.
• Habilidad para tomar decisiones técnicas informadas y proponer mejoras en los sistemas.
• Fuerte capacidad para resolver problemas complejos y optimizar el rendimiento del sistema.
• Excelentes habilidades de comunicación, tanto para la interacción con equipos técnicos como no técnicos.
• Capacidad de colaborar efectivamente en un entorno ágil y multifuncional.