Mindrift
Dremio
Ingeniero/a de Software Senior Staff - Ejecución de Consultas
Sobre el puesto
Sé parte de la construcción del futuro
Dremio es la plataforma unificada de lakehouse para análisis y IA de autoservicio, al servicio de cientos de empresas globales, incluidas Maersk, Amazon, Regeneron, NetApp y S&P Global. Los clientes confían en Dremio para lakehouses en la nube, híbridos y on-prem para potenciar sus casos de uso de data mesh, migración de data warehouse, virtualización de datos y acceso unificado a datos. Basado en tecnologías de código abierto, incluidas Apache Iceberg y Apache Arrow, Dremio proporciona una arquitectura de lakehouse abierta que permite el tiempo más rápido para obtener información y flexibilidad de plataforma a una fracción del costo. Obtenga más información en dremio.com.
El equipo de Ejecución de Consultas de Dremio construye el runtime responsable de ejecutar consultas analíticas a escala. El equipo se sitúa entre la planificación de consultas y los escaneos de tablas, siendo propietario de los sistemas que convierten los planes de consulta en una ejecución eficiente y fiable.
Como Ingeniero/a de Software Senior Staff, trabajarás en operadores de consulta, evaluación de expresiones, gestión de memoria, planificación de ejecución, planificación de runtime y optimización de rendimiento. Tu trabajo afectará directamente al rendimiento, la escalabilidad y la fiabilidad de las consultas en la plataforma de datos en la nube de Dremio.
Qué valoramos
En Dremio, nos regimos por altos estándares en cuanto a Personas, Pensamiento y Acción. Nuestros Gnarlies (así llamamos a nuestros empleados) se comunican con claridad, impulsan la responsabilidad y son respetuosos entre sí. Nos enfrentamos a hechos crudos y nos centramos en los resultados mientras operamos con un sentido de urgencia y construimos un "flywheel". Las personas a las que les gusta involucrarse e impulsar el impulso prosperarán en nuestro #GnarlyLife.
Qué harás
- Construir el motor de ejecución: Diseñar, implementar, probar y dar soporte a operadores de consulta, evaluación de expresiones, planificación de ejecución, planificación de runtime y gestión de recursos.
- Mejorar el rendimiento del runtime: Optimizar el procesamiento vectorizado, la concurrencia, el paralelismo, el uso de memoria, el intercambio de datos y el volcado a disco.
- Diagnosticar problemas difíciles: Investigar la corrección de consultas y los problemas de rendimiento utilizando perfiles de consulta, herramientas de profiling, telemetría, benchmarks, logs y datos de producción.
- Optimizar Java y la JVM: Mejorar la utilización de la CPU, el comportamiento de asignación, la recolección de basura, el comportamiento de los hilos y otras características del runtime.
- Colaborar en el motor de consulta: Trabajar con los equipos de Planificación de Consultas, Datalake, Producto, Soporte e Ingeniería de campo en mejoras de consultas de extremo a extremo.
- Utilizar herramientas de desarrollo asistidas por IA: Aplicar herramientas de IA para la comprensión de código, depuración, generación de pruebas, documentación y análisis de incidentes.
- Aplicar juicio de ingeniería: Validar el código y las recomendaciones generadas por IA a través de revisiones, pruebas, benchmarks y juicio de ingeniería.
- Elevar el nivel de ingeniería: Participar en revisiones de diseño y código, contribuir a la dirección técnica y mentorizar a otros ingenieros.
Qué buscamos
- Experiencia en ingeniería de software: 5+ años desarrollando software de producción, preferiblemente en sistemas de bases de datos, ejecución de consultas, sistemas distribuidos o áreas relacionadas.
- Habilidades de programación: Sólidas habilidades en Java; experiencia con C++ es una ventaja.
- Fundamentos de informática: Sólida base en estructuras de datos, algoritmos, concurrencia, programación multihilo y programación asíncrona.
- Conocimientos de bases de datos y sistemas distribuidos: Comprensión de los internos de las bases de datos, procesamiento de consultas, ejecución distribuida y optimización de rendimiento.
- Experiencia en ingeniería de rendimiento: Experiencia en profiling y optimización de CPU, memoria, recolección de basura, comportamiento de hilos u otras características del runtime.
- Capacidad de resolución de problemas: Capacidad para resolver problemas técnicos ambiguos y trabajar eficazmente entre equipos.
- Juicio de ingeniería: Capacidad para evaluar compensaciones, validar soluciones rigurosamente y tomar decisiones sólidas al trabajar con implementaciones desconocidas o asistidas por IA.
- Comunicación y propiedad: Sólidas habilidades de comunicación, sentido de la propiedad y compromiso para entregar software de alta calidad.
Puntos extra si tienes
- Motores de consulta: Motores de consulta distribuidos, motores de bases de datos o sistemas de procesamiento de datos a gran escala.
- Técnicas de ejecución: Ejecución vectorizada, operadores de consulta, evaluación de expresiones, generación de código u optimización de runtime.
- Sistemas de runtime: Profiling de JVM, gestión de memoria, caché, redes, intercambio de datos, planificación de ejecución o volcado a disco.
- Plataformas de datos: Apache Arrow, Apache Iceberg, Parquet, Avro, Spark, Hadoop o almacenes de objetos en la nube.
- Código abierto: Contribución a proyectos de código abierto.
Dremio es un empleador que ofrece igualdad de oportunidades y apoya la diversidad de la fuerza laboral. No discriminamos por motivos de raza, religión, color, origen nacional, identidad de género, orientación sexual, edad, estado civil, condición de veterano protegido, condición de discapacidad o cualquier otro factor ilegal.
Dremio se compromete a proporcionar cualquier adaptación necesaria para personas con discapacidades dentro de nuestro proceso de solicitud y entrevista. Para solicitar una adaptación debido a una discapacidad, por favor informe a su reclutador.
Dremio tiene políticas vigentes para proteger la información personal que los empleados y solicitantes nos revelan. Haga clic aquí para revisar el aviso de privacidad.
Aviso de seguridad importante para candidatos
En Dremio, defendemos la confianza y la transparencia como valores primordiales en todas nuestras interacciones con clientes, socios, empleados y el público en general. Hemos sido objeto de ataques por parte de individuos que crean dominios falsos similares al nuestro para estafar a prospectos y candidatos. Tenga en cuenta que todas las comunicaciones oficiales de nuestra parte provendrán de un dominio @dremio.com. Si sospecha que ha sido objeto de una estafa, es imperativo que denuncie el incidente a las fuerzas del orden locales. Para obtener más información sobre este tipo de estafa, consulte la declaración oficial de Dremio aquí.
Dremio no se hace responsable de ninguna tarifa relacionada con currículums no solicitados y no pagará tarifas a ninguna agencia o empresa de terceros que no tenga un acuerdo firmado con la Compañía.
