Senior Product Engineer, Scalability
Arquitecta y escala sistemas backend de alto rendimiento, incluyendo facturación, detección de fraude y pipelines de datos. El puesto ofrece gran autonomía, acciones y beneficios de salud completos.
El portal de empleo de España
Más de 91.000 ofertas activasEn remoto, Global +1·Jornada completa·Añadida hace más de un año (comprobada el 12 oct)
6 ofertas abiertas
Esta oferta se escribió originalmente en inglés.
En Railway, ofrecemos beneficios de primer nivel. Un gran salario, beneficios de salud completos incluyendo dependientes, sólidas concesiones de acciones (equity), estipendio para equipo y mucho más. Para más detalles, consulta de nuevo la página de empleo principal.
Más allá de la compensación, hay algunas cosas que creemos que hacen que trabajar en Railway sea verdaderamente único:
Autonomía: Tenemos muy pocas reuniones. Solo una el lunes y otra el viernes para revisar el Tablón de la Empresa. Creemos que tu tiempo es sagrado, ya sea en el trabajo o fuera de él.
Responsabilidad (Ownership): Somos una empresa con una cultura de alta responsabilidad y alta autonomía. Esperamos que vengas, nos ayudes y, a lo largo de muchos años, realices el mejor trabajo de tu vida. Cuando te incorpores, esperamos que cambies la empresa.
Problemas/soluciones novedosos: ¡Somos una startup bien financiada, con problemas interesantes, lo que nos permite implementar soluciones novedosas! Aborrecemos el "trabajo vacío" y pensamos que, ya sea en comunidad, ingeniería, operaciones, etc., siempre hay oportunidad para soluciones creativas y de gran impacto.
Crecimiento: Queremos que crezcas con nosotros, pero sabemos que el talento es prestado, así que cuando descubras en qué área quieres crecer a continuación, ya sea en Railway o fuera, nos aseguraremos de que llegues allí.
Nuestra misión principal en Railway es permitir que los desarrolladores creen, lancen y operen software con la mínima fricción. Fundamental para esa misión es un conjunto de primitivas sólidas y combinables, siendo la principal de ellas el almacenamiento.
Como Storage Engineer, construirás, evolucionarás y operarás los sistemas que permiten a Railway alojar cargas de trabajo con estado (stateful). Railway opera en múltiples centros de datos de coubicación y grandes flotas de máquinas virtuales en la nube. Esto exige que construyamos primitivas de alta disponibilidad que "funcionen en cualquier lugar" y que puedan migrarse entre diferentes entornos con un tiempo de inactividad mínimo (idealmente cero). Mover el almacenamiento es el desafío más difícil en esta tarea, y nos ha obligado a invertir en la construcción de sistemas personalizados desde los principios fundamentales.
Trabajarás principalmente en nuestro nuevo sistema de almacenamiento de bloques estructurado por registros (log-structured block-storage), diseñado para ofrecer rendimiento, alta densidad y alta disponibilidad en entornos de nube y baremetal.
Este es un rol de alto impacto y gran autonomía, con efecto directo en la cultura, la trayectoria y los resultados de la empresa.
Para este puesto, tú:
Liderarás el desarrollo de los sistemas de almacenamiento en bloque de Railway
Apoyarás la operación de los sistemas de almacenamiento y participarás en las rotaciones de guardia (on-call)
Impulsarás la especificación del hardware de los servidores de almacenamiento
Construirás sistemas para apoyar la planificación de capacidad
Diseñarás y construirás interfaces con servicios de orquestación para dar soporte a flujos de trabajo coordinados, como copias de seguridad en línea y migración de cargas de trabajo en vivo sin tiempo de inactividad
Redactarás Documentos de Requisitos de Ingeniería (Engineering Requirement Documents) para llevar algo desde la idea, pasando por tareas definidas e implementación, hasta el seguimiento de su éxito
Establecerás la dirección arquitectónica a largo plazo para escalar la plataforma
¿Quieres conocer nuestra cultura de trabajo? Aquí tienes una serie de tres artículos en nuestro blog que te ayudarán a ver las formas únicas en las que trabaja nuestro equipo (Partes 1, 2, 3 y 4).
¿Tienes curiosidad? Aquí tienes 3 publicaciones en el blog que profundizan en proyectos apasionantes en los que ha trabajado este equipo: 1, 2, 3
Deberías cumplir uno o más de los siguientes requisitos:
Has construido y operado sistemas de almacenamiento distribuido y tienes un sólido conocimiento de los principios fundamentales.
Tienes una sólida experiencia en ingeniería de sistemas en uno o más de los siguientes ámbitos: sistemas de archivos, dispositivos de bloque, rutas de E/S del kernel, SPDK, io_uring, vhost-user-blk, ublk o virtualización
Tienes un conocimiento profundo de los algoritmos y técnicas que hay detrás de la construcción de sistemas de almacenamiento rápidos, eficientes y fiables.
Tienes experiencia construyendo grandes sistemas distribuidos donde la consistencia y la disponibilidad eran críticas.
Tienes una sólida formación en ingeniería de rendimiento en la capa de E/S en Linux.
Tienes una base sólida en programación de sistemas con Rust.
Te sientes cómodo asumiendo la responsabilidad de un problema por tu cuenta en una empresa pequeña.
Tienes una intuición sólida sobre cuánto durarán tus soluciones. Todos los sistemas envejecen. En las startups, podemos esperar de 2 a 3 órdenes de magnitud, o entre 12 y 18 meses.
Tienes la determinación para sumergirte en un problema, implementar una solución, escalarla y reemplazarla cuando sea necesario.
Te comunicas lo suficientemente bien como para exponer tu punto de vista, lograr que tu solución se implemente y que quede documentada para cuando no estés presente.
Si tu experiencia es en infraestructura adyacente (E/S de hipervisor, desarrollo de kernel, sistemas distribuidos, memoria persistente) y quieres aplicar esa profundidad al almacenamiento, queremos saber de ti.
Valoramos y nos encanta trabajar con personas diversas de todos los ámbitos
Para bien o para mal, somos una startup; nuestra dinámica de equipo es diferente a la de empresas de distintos tamaños y etapas.
Estamos distribuidos por TODO el mundo, y eso solo va a ser cada vez más distribuido. Como resultado, SIEMPRE está pasando algo.
NO esperamos que trabajes todo el tiempo, pero tendrás que ser diligente con tus límites porque el final de tu jornada puede coincidir con el inicio de la de otra persona.
Somos un equipo pequeño, con un alto sentido de la responsabilidad, que no solo siente pasión por lo que hacemos, sino que también busca ser excepcional. En el momento de escribir esto, somos 21 personas atendiendo a cientos de miles de usuarios. Hay mucho movimiento y mucha ambigüedad.
Queremos que te adueñes de tu trabajo. Creemos que la responsabilidad es la clave del crecimiento, y parte de ese crecimiento no es solo ser capaz de tomar decisiones, sino también hacerse cargo del éxito o del fracaso que conllevan esas decisiones.
Sin trucos. Sin sorpresas. Este es el proceso completo:
Esto es completamente abierto y solo estamos intentando ver quién eres, qué quieres hacer y hacia dónde quieres ir.
Trabaja en un pequeño proyecto para discutirlo en la entrevista
Implementa de forma asíncrona lo siguiente:
Pre-entrevista: Diseña un motor de almacenamiento (Storage Engine) para alimentar algo como el Volume de Railway
¡Puedes, y DEBES! hacernos preguntas con antelación.
Te sentarás con alguien del equipo y repasaréis lo anterior. Analizaremos tu solución y, además, te presentaremos a otros dos miembros del equipo.
Buscamos: Conocer tus habilidades para resolver problemas. Cómo desglosas un problema y cómo presentas una solución.
Estructura de la entrevista (60 minutos):
Trabajo previo (entregado antes de tu entrevista): Completa tu solución
0-5 min: introducción
5-50 min: Construcción (o ampliación) de tu solución
50-60 min: Preguntas sobre Railway/Tecnología/etc.
Conocerás al equipo, que estará compuesto por 4 personas de secciones muy diferentes de la empresa.
Lo que buscamos: Cómo trabajas con el resto del equipo y cómo te comunicas.
Finalmente, repasaremos el proceso, el puesto y concretaremos los detalles sobre tu posición, la incorporación y todos los pormenores.
#Global
Railway es una plataforma moderna de infraestructura en la nube que permite a los desarrolladores implementar, escalar y gestionar aplicaciones en la nube con una facilidad sin precedentes. La empresa ofrece una experiencia centrada en el desarrollador, permitiendo a los equipos lanzar aplicaciones listas para producción en segundos mediante una CLI sencilla o la integración con GitHub, eliminando la complejidad de los proveedores de nube tradicionales. Railway opera una red global de infraestructura y se ha convertido en una opción popular para startups y equipos de ingeniería que buscan un camino rápido y rentable hacia la producción.
Railway tiene una presencia creciente en España, con una cultura de ingeniería distribuida y remota que resulta muy atractiva para el talento internacional. La empresa contrata ingenieros en toda Europa, incluida España, y ofrece un entorno de trabajo totalmente remoto, lo que supone un gran atractivo para profesionales internacionales que buscan unirse a una startup en rápido crecimiento y centrada en el producto. Su cultura de ingeniería enfatiza la propiedad, la autonomía y las herramientas modernas, lo que la convierte en una opción convincente para ingenieros senior que buscan un rol de alto impacto en una empresa global.