- LocationMadrid, Spain
-
IndustryInformation Technology
EL PROYECTO
Nuestro cliente es la empresa de software más innovadora en el campo de las bases de datos, siendo una solución clave para los clientes que buscan un alto rendimiento.
EL ROL
Como ingeniero de software, diseñarás, desarrollarás, solucionarás problemas y depurarás programas o piezas de software para mejoras de software y nuevos productos. Diseña mejoras, actualizaciones y cambios de programación para partes y subsistemas de software de sistemas.
Desempeñarás un papel clave en la conducción de la ruta del producto para ofrecer infraestructura y sistemas de software rentables.
RESPONSABILIDADES
- Diseñar e implementar sistemas altamente confiables
- Analizar, diseñar, programar, depurar y modificar mejoras de software y/o nuevos productos
- Realizar pruebas, depuración de funciones de almacenamiento, ruta de datos y eficiencia de almacenamiento
- Analizar el diseño y determinar las actividades de codificación, programación e integración requeridas en función de los objetivos generales y el conocimiento de la arquitectura general del producto o solución
- Diseñar y realizar experimentos para evaluar los cambios del sistema con respecto al rendimiento
- Sumergirse en las anomalías de rendimiento con la intención de descubrir su causa para los sistemas de uno o varios nodos (es decir, distribuidos)
- Diseñar sistemas y componentes teniendo en cuenta el rendimiento, considerando tanto los criterios algorítmicos como a nivel de sistema
REQUISITOS
- Sólidas habilidades prácticas de C/C++, programación Python y depuración
- Sólido multiprocesador práctico en modo kernel/usuario de Linux, programación multiproceso
- Una excelente comprensión de subprocesos, apilamiento, kernel, limpieza de memoria, toma de recursos...
- Cómodo con los convoyes de bloqueo, los interbloqueos, las inversiones de prioridad y la obtención de derechos de RCU
- Experiencia en la creación de código eficiente y depuración de sistemas de múltiples nodos
- Diseño de sistemas de software que se ejecutan en múltiples tipos de plataforma
- Metodología de prueba de sistemas de software, incluida la redacción y ejecución de planes de prueba, depuración y prueba de scripts y herramientas
