workablehace 16 horas

Ingeniero Full-Stack

ZipdevRemoto · Tiempo completo
Senior5+ años
Este aviso fue publicado originalmente en inglés, así que es probable que necesites inglés para este puesto. La descripción puede estar traducida automáticamente al español; ante la duda, revisá el aviso original con el botón de postularte.

Empresa busca Ingeniero Full-Stack con foco en backend para desarrollar una plataforma web en Ruby on Rails, PostgreSQL y Azure. Se requiere experiencia en APIs REST, bases de datos, autenticación JWT y trabajo con herramientas de IA. Modalidad remota.

Por qué aplicar

Si te copa laburar en un proyecto nuevo desde cero, metiéndole al backend con Ruby on Rails y Azure, este puesto remoto es para vos. Vas a tener un rol clave en el desarrollo de una plataforma innovadora en el sector salud, con la posibilidad de crecer y aportar en todo el stack.

Descripción del puesto

Acerca del rol Estamos construyendo una plataforma web desde cero que ofrece experiencias modernas basadas en la nube, alineadas con Sensei Cloud. La aplicación es modular y crecerá con el tiempo. Como Ingeniero Full-Stack con enfoque en backend, serás un contribuyente clave en la configuración de la API de Rails, la capa de datos y las integraciones de la plataforma Azure desde el principio, aunque con la capacidad de trabajar en todo el stack cuando sea necesario. Tu área de responsabilidad principal es el backend: modelado de datos, diseño de API, mapeo de datos entre sistemas de gestión de consultorios dentales (DPMS) e integraciones con sistemas de salud externos, y procesamiento en segundo plano. Interactuarás con Azure Cosmos DB para los datos de DPMS y utilizarás Azure PostgreSQL Hyperscale (Citus) para alojar datos de aplicaciones a escala. También contribuirás al trabajo de frontend a medida que el equipo y el producto evolucionen. Este es un rol de propiedad completa del producto en un entorno de atención médica regulado por HIPAA, que requiere un sólido juicio técnico, atención al cumplimiento y una estrecha colaboración con tus compañeros ingenieros y stakeholders del producto. Trabajarás dentro de un flujo de trabajo de ingeniería Humano -> IA -> Humano, utilizando herramientas de IA para acelerar la entrega, manteniendo al mismo tiempo la plena responsabilidad de la corrección, la seguridad y el cumplimiento. Responsabilidades clave Primarias (Backend) - Diseñar, construir y mantener una API de Rails (modo API-only) que sirva datos de programación dental a un frontend React. - Modelar y evolucionar esquemas de PostgreSQL utilizando migraciones de ActiveRecord, apuntando a Azure PostgreSQL Hyperscale (Citus) en producción con énfasis en claridad, rendimiento e integridad de datos. - Convertirte en el experto en la materia del equipo en mapeo de datos entre diferentes sistemas de gestión de consultorios dentales y la capa de datos de Cosmos DB. - Consultar y consumir datos de Azure Cosmos DB, comprendiendo su modelo de documentos y cómo se estructuran los datos de DPMS dentro de él. - Diseñar y mantener esquemas de aplicaciones en Azure PostgreSQL Hyperscale (Citus), aprovechando tablas distribuidas y colocación para el rendimiento a escala. - Integrar con sistemas y servicios de salud externos a través de HTTP —incluyendo APIs de intercambio dental, procesadores de pagos y servicios de Azure AI— para potenciar funcionalidades como la dictación asistida por IA y flujos de trabajo inteligentes. - Implementar y mantener middleware de autenticación Azure AD B2C JWT, incluyendo la recuperación de JWKS, verificación de firma, extracción de claims e inyección de current_user. - Construir y operar trabajos en segundo plano usando Sidekiq y Redis para tareas asíncronas y de larga duración. - Escribir y mantener suites de pruebas RSpec completas usando FactoryBot, WebMock y VCR para probar de forma segura integraciones HTTP externas. - Ejecutar y remediar hallazgos de Brakeman y bundler-audit como parte de los flujos de trabajo de desarrollo normales. Compartidas (Full-Stack) - Contribuir a componentes y páginas de frontend React según sea necesario. - Colaborar estrechamente con ingenieros enfocados en frontend y stakeholders del producto durante el desarrollo de funcionalidades. - Participar en flujos de trabajo de desarrollo aumentados por IA, revisando y validando código generado por IA contra criterios de aceptación. - Seguir las mejores prácticas de Git: ramas de funcionalidades, pull requests para todos los cambios y mensajes de commit convencionales. - Actualizar proactivamente la documentación cuando cambien el comportamiento o la arquitectura. Habilidades técnicas clave - Sólida experiencia con Ruby on Rails en modo API-only, incluyendo ActiveRecord, migraciones, routing y middleware. - Sólidos conocimientos de PostgreSQL, incluyendo diseño de esquemas y conciencia de consultas; comodidad trabajando con bases de datos relacionales y NoSQL (documentos). - Experiencia en diseño de APIs REST e integración con servicios externos a través de clientes HTTP (ej. Typhoeus, Faraday o equivalente). - Experiencia práctica en procesamiento de trabajos en segundo plano (Sidekiq o equivalente). - Experiencia en implementación de autenticación basada en JWT, incluyendo validación JWKS y extracción de claims. - Disciplina probada en pruebas RSpec con FactoryBot y stubbing HTTP usando WebMock o VCR. - Conocimiento práctico de un framework de frontend moderno (React, Vue o similar) — no necesitas ser un mago de CSS, pero deberías sentirte cómodo construyendo y depurando componentes. - Familiaridad con flujos de trabajo basados en Git, pull requests y commits convencionales. - Comodidad leyendo y manteniendo documentación Markdown. Desarrollo Aumentado por IA (Requerido) - Experiencia práctica utilizando asistentes de codificación de IA (ej. Claude Code, GitHub Copilot, Cursor) como parte del desarrollo diario. - Comprensión clara del bucle Humano → IA → Humano, con responsabilidad humana sobre todas las decisiones. - Capacidad para mantener documentación de soporte como READMEs, notas de arquitectura y archivos de configuración de IA (ej. CLAUDE.md). - Conciencia de las prácticas de trazabilidad de IA, incluyendo trailers de commit, checklists de revisión e higiene de prompts. Conciencia de HIPAA y Cumplimiento (Requerido) - Fuerte comprensión de que la Información de Salud Protegida (PHI) nunca debe aparecer en código, pruebas, logs, commits o mensajes de error. - Disciplina en el registro estructurado con selección explícita de campos seguros. - Uso de mensajes de error genéricos sin contexto de identificación del paciente devuelto a los clientes de la API. - Comodidad trabajando exclusivamente con datos sintéticos o mock. - Conciencia de las prácticas de codificación segura, incluyendo no tener credenciales hardcodeadas, vigilancia de OWASP Top 10 y bloqueo/remediación de hallazgos de Brakeman. Tecnologías y Herramientas Trabajarás con las siguientes tecnologías como parte del stack de CSD Cloud Apps: Backend (Primario) - Lenguaje: Ruby - Framework: Ruby on Rails 8.1 (modo API-only) - Base de datos: Azure PostgreSQL Hyperscale (Citus) para datos de aplicación; Azure Cosmos DB (NoSQL) para datos DPMS; PostgreSQL 16 para desarrollo local. - Serialización: JBuilder - Trabajos en segundo plano: Sidekiq con Redis 7 - Acceso a datos: Azure Cosmos DB SDK (vía cliente Ruby o REST) - Cliente HTTP: Typhoeus (o Faraday) para integraciones de servicios externos - Autenticación: Validación Azure AD B2C JWT vía JWKS (middleware personalizado) - Escaneo de seguridad: Brakeman, bundler-audit - Pruebas: RSpec, FactoryBot, WebMock, VCR - Linting: RuboCop, rubocop-rails, rubocop-performance Frontend (Colaborativo) - Lenguaje: TypeScript 5 - Framework: React 19 (componentes funcionales, hooks) - Estilo: Tailwind CSS 4 - Estado del servidor: TanStack Query (React Query) v5 Entorno de Desarrollo Compartido: Docker Compose Herramientas de Despliegue: Kamal, Thruster Control de Versiones: Git con ramas de funcionalidades y pull requests Cualificaciones Preferidas / Deseables - Experiencia con despliegues basados en Kamal y flujos de trabajo de producción contenerizados. - Familiaridad con ActionCable u otras funcionalidades en tiempo real basadas en WebSockets. - Experiencia en el dominio de la salud o dental. - Experiencia previa trabajando con modelos de datos de sistemas de gestión de consultorios dentales o normalización de datos de salud. - Experiencia con Azure Cosmos DB, incluyendo su API SQL, estrategia de claves de partición y modelado de documentos. - Familiaridad con Azure PostgreSQL Hyperscale (Citus) u otras soluciones de PostgreSQL distribuidas. - Experiencia práctica con validación de JWT Azure AD B2C. - Experiencia con Jbuilder o enfoques alternativos de serialización JSON en Rails. - Experiencia con servicios de Azure AI (ej. Azure AI Speech, Azure OpenAI) o construcción de funcionalidades impulsadas por IA como dictación o procesamiento inteligente de documentos. - Familiaridad con estándares de intercambio de datos de salud o APIs de procesamiento de pagos. - Conocimiento práctico de React y TypeScript para contribuciones de frontend. Cómo trabajamos - Ingeniería asistida por IA: Se utilizan herramientas de IA para acelerar, pero todo el código es revisado y propiedad de los ingenieros. - Desarrollo basado en ramas: Todo el trabajo se realiza en ramas de funcionalidades con pull requests obligatorios. - Estándares de commit: Se requieren commits convencionales; los commits asistidos por IA incluyen metadatos de trazabilidad (ej. AI-Tool: claude-code). - Revisiones de código: Las revisiones incluyen verificaciones de riesgos OWASP Top 10, exposición de PHI, secretos hardcodeados, bloques `rescue` excesivamente amplios y dependencias inválidas o alucinadas. - Desarrollo Docker-first: Todo el stack se ejecuta en Docker Compose sin dependencias de runtime locales. - Trabajo remoto de lunes a viernes, 40 horas semanales (sin fines de semana). - Reembolso de Atención Médica - Reembolso por Estilo de Vida Activo - Reembolso Trimestral para Oficina en Casa - Bono por Aprendizaje Continuo - Acceso a Plataformas de Capacitación y Desarrollo Profesional ¿Mencionamos que es REMOTO?!! Uno de nuestros valores fundamentales en Zipdev es "Sé auténtico". Es por eso que te animamos a responder el formulario de solicitud con tus propias palabras; estamos interesados en conocerte a ti, no a un asistente digital. ¿Te preguntas cómo funciona nuestro entorno remoto o nuestro método de pago? Hemos reunido algunas respuestas útiles en nuestras Preguntas Frecuentes al final de nuestro sitio de carreras. ¡Échale un vistazo y haznos saber si tienes alguna otra pregunta!

Responsabilidades

  • Diseñar, construir y mantener una API Rails (modo solo API) que sirva datos de programación dental al frontend React
  • Modelar y evolucionar esquemas PostgreSQL utilizando migraciones ActiveRecord, apuntando a Azure PostgreSQL Hyperscale (Citus) en producción
  • Convertirse en el experto en mapeo de datos entre diferentes sistemas de gestión de consultorios dentales y la capa de datos de Cosmos DB
  • Consultar y consumir datos de Azure Cosmos DB
  • Diseñar y mantener esquemas de aplicaciones en Azure PostgreSQL Hyperscale (Citus)
  • Integrarse con sistemas y servicios externos de atención médica a través de HTTP
  • Implementar y mantener middleware de autenticación Azure AD B2C JWT
  • Construir y operar trabajos en segundo plano utilizando Sidekiq y Redis
  • Escribir y mantener suites de pruebas RSpec completas
  • Ejecutar y remediar hallazgos de Brakeman y bundler-audit
  • Contribuir a componentes y páginas del frontend React según sea necesario
  • Colaborar estrechamente con ingenieros centrados en el frontend y partes interesadas del producto
  • Participar en flujos de trabajo de desarrollo aumentados por IA
  • Seguir las mejores prácticas de Git
  • Actualizar proactivamente la documentación

Skills requeridas

Atención a la conformidad (HIPAA)Conocimiento de bases de datos NoSQLConocimiento de bases de datos relacionalesDiseño de APIs RESTIntegración con servicios externosAutenticación JWTValidación de JWKSProcesamiento de trabajos asíncronosDesarrollo con IASeguridad de aplicaciones webColaboraciónJuicio técnicoAtención al detalleCumplimiento normativoResponsabilidad

Beneficios

  • Reembolso de gastos médicos
  • Reembolso de estilo de vida activo
  • Reembolso trimestral para oficina en casa
  • Bono de aprendizaje continuo
  • Acceso a plataformas de formación y desarrollo profesional