B&A
Black Canyon Consulting
Desarrollador Senior de Software (VDB)
DESCRIPCIÓN GENERAL
Black Canyon Consulting (BCC) busca un Desarrollador Senior de Software (VDB) para dar soporte al National Center for Biotechnology Information (NCBI). Esta oferta es a tiempo completo y presencial en el NCBI en Bethesda, MD.
El Desarrollador Senior de Software trabajará en soluciones para apoyar el desarrollo continuo del Sequence Read Archive (SRA) del NCBI, el principal archivo mundial de datos de Secuenciación de Nueva Generación (NGS), y forma parte de una colaboración internacional que incluye archivos en Europa y Japón. El SRA pone a disposición de la comunidad investigadora datos de secuencias biológicas derivados de NGS para mejorar la reproducibilidad y permitir nuevos descubrimientos mediante el análisis y la comparación de conjuntos de datos. El SRA es un archivo de Big Data, medido en decenas de petabytes de datos almacenados. El desarrollo futuro del SRA hará que estos datos sean más útiles para una amplia variedad de campos: Salud Médica (enfermedades genéticas, cáncer, etc.), Salud Pública (monitorización de la seguridad alimentaria, resistencia a antimicrobianos, brotes virales, etc.), diversidad microbiana y muchos más.
El equipo de VDB es responsable del desarrollo y mantenimiento de la capa de base de datos del SRA y de un conjunto de herramientas del lado del cliente que proporcionan acceso a los datos del SRA para los miembros de la comunidad investigadora. El enfoque actual del esfuerzo de desarrollo es la utilización de tecnologías en la nube para lograr una mayor estabilidad, fiabilidad y rendimiento de las bibliotecas y herramientas, manteniendo al mismo tiempo los requisitos de almacenamiento del SRA bajo control.
El equipo utiliza C++11 y Python. El entorno de desarrollo es Linux, gmake/Cmake, con github para control de código fuente, TeamCity/Jenkins para CI/CD. Algunos de los proyectos también se mantienen en Windows (MS Visual Studio, Apache Ant). El equipo practica una forma de proceso de desarrollo Agile, que incluye reuniones diarias y desarrollo guiado por pruebas.
Atraemos a las mejores personas del sector con nuestro competitivo paquete de beneficios que incluye cobertura médica, dental y de visión, plan de jubilación 401k con contribución del empleador, días festivos pagados, vacaciones y reembolso de matrícula. Si disfruta formando parte de una organización de alto rendimiento, profesional y centrada en servicios y tecnología, ¡solicite hoy mismo!
Funciones y Responsabilidades
- Desarrollo, implementación, pruebas y mantenimiento continuo de la Biblioteca VDB, el SRA Toolkit y proyectos relacionados.
- Participar en el desarrollo de herramientas y pipelines "preparados para la nube" para apoyar la escalabilidad sostenible y permitir su uso por colaboradores y científicos en el campo.
- Aprender nuevas tecnologías, mantenerse al día con los sistemas internos y compartir sus conocimientos con el equipo.
- Liderar a otros desarrolladores.
REQUISITOS
- 5+ años de experiencia y competencia demostrada en programación orientada a objetos utilizando C++
- Experiencia en programación en un entorno Linux.
- Experiencia con tecnologías en la nube:
- AWS: EC2, S3, Lambda
- GCP: GKE, Google Store, Cloud functions
- Fluidez en algunos lenguajes de scripting como bash, perl o python
- Capacidad para trabajar con JSON y formatos de documentos estructurados similares
- Experiencia en programación de redes, programación multihilo
- Experiencia con SQL y bases de datos relacionales
- Experiencia con proyectos de código abierto
- Experiencia con metodologías de desarrollo Agile
- Experiencia con pipelines de CI/CD, pruebas unitarias, de integración y de regresión
HABILIDADES ADICIONALES
- 5+ años de experiencia trabajando con datos genéticos y biológicos
- Participación activa demostrada en comunidades de código abierto (github, etc.)
- Experiencia en desarrollo multiplataforma (POSIX, WinAPI).
- Experiencia con contenedores (Docker)
- Experiencia con herramientas de análisis sintáctico (flex/bison) y diseño e implementación de lenguajes de dominio específico
