Desarrollador Senior Backend
- A jornada completa
- Contract type: Permanent contract
Descripción de la empresa
Devoteam es una consultora europea líder enfocada en estrategia digital, plataformas tecnológicas, ciberseguridad y transformación empresarial a través de la tecnología. Centrada en 6 áreas de especialización, abordamos los desafíos estratégicos de nuestros clientes: Digital Business & Products, Data-driven Intelligence, Distributed Cloud, Business Automation, Ciberseguridad y la Sostenibilidad conseguida por la Digitalización.
La Tecnología está en nuestro ADN y creemos en ella como una palanca capaz de impulsar el cambio para mejorar, manteniendo un equilibrio que nos permite ofrecer a nuestros clientes herramientas tecnológicas de primer nivel pero siempre con la cercanía y profesionalidad de un equipo que actúa como guía durante el camino.
Nuestros 25 años de experiencia nos convierten en una consultora innovadora, consolidada y madura que permite el desarrollo de nuestras 10000 personas , certificando continuamente a nuestros consultores en las últimas tecnologías y contando con expertos en: Cloud, BI, Data Analytics, Excelencia en Procesos de Negocio, Gestión de la Relación con clientes, Ciberseguridad, Marketing Digital, Machine Learning, Ingeniería y desarrollo del Software. Devoteam ha sido premiado como Partner del año 2021 de los 5 líderes de la nube: AWS, Google Cloud, Microsoft, Salesforce y ServiceNow.
#TecnologíaCreativaParaUnMejorCambio
Descripción del empleo
Buscamos un Desarrollador Backend Senior (con al menos 5 años de experiencia) para incorporarse a nuestro equipo de manera estable y en modalidad 100% teletrabajo.
Requisitos
Experiencia: Al menos 5 años de experiencia demostrable en desarrollo Backend
Tipo de estudios:
Preferible: Ingeniero Superior Informático / Ingeniero Técnico Informático (o similar)
FP Superior (Dual o simple). Se valorarán perfiles de Bootcamp si aportan experiencia sólida y demostrable en los requisitos técnicos
Tecnologías:
Lenguajes y Frameworks: Dominio de Java Spring Boot o Python FastAPI. Se valoran otros lenguajes con frameworks similares: Ruby on Rails o Sinatra o Rust Axum
Arquitectura: Experiencia real trabajando con Arquitectura de Capas (Layered Architecture) y sistemas orientados a eventos (Event-Driven Architecture)
Bases de Datos y Migraciones: Experiencia sólida con bases de datos relacionales y versionado de esquemas mediante herramientas de migración (Flyway, Alembic, Liquibase o similar) para asegurar la paridad entre entornos.
Testing & Calidad: Práctica demostrable en TDD y API First. Experiencia creando tests de integración robustos (Testing Trophy)
Infraestructura Local: Dominio de Docker (creación de imágenes, Docker Compose, Testcontainers). Se valora minikube.
Gestión de Código y Tareas: Uso fluido de GitFlow. Experiencia con gestores de tareas (Jira, Linear, etc.), trazabilidad estricta (commits y ramas siempre asociados al ticket)
Actividades:
API RESTFul: Diseño y desarrollo de endpoints.
TDD, Rojo-Verde-Refactor: Escritura de tests de integración y unitarios al inicio.
Layered Architecture: Implementación de lógica de negocio en capas (Controller, Service, Repository, Request DTO, Response DTO) y gestión de eventos asíncronos (Publishers/Listeners).
UML y Documentación: Participación activa en refinamientos técnicos para despejar dudas funcionales antes de codificar.
Idiomas: Inglés B2 mínimo (capacidad para leer documentación técnica, escribir código/commits y comprender conversaciones técnicas).
Soft Skills:
Cultura de Code Review (CR): Capacidad para dar y recibir feedback técnico constructivo, sin egos. Buscar la excelencia y uniformidad del código del equipo mediante revisiones críticas pero empáticas.
Comunicación Escrita y Documentación: Hábito de no dejar el conocimiento solo en el código. Capacidad para redactar documentación técnica clara, diagramas de secuencia y guías de onboarding en Confluence, Draw.IO (o herramientas similares).
Proactividad Analítica: No ser un simple "picador de código". Capacidad para levantar la mano y consultar con Producto/Analistas cuando un requisito funcional choca con la lógica técnica durante la fase de diseño de tests
Opcional (Se valorará positivamente):
Diseño de Software: Conocimiento sólido y aplicación práctica de Patrones de Diseño (GoF) y capacidad para modelar soluciones complejas utilizando UML (Diagramas de Clases, Secuencia, Estado) antes de programar
Ecosistema Distribuido: Experiencia real enfrentando los desafíos de una arquitectura pura de Microservicios (comunicación entre servicios, resiliencia, trazabilidad distribuida, paginación progresiva).
Bases de Datos NoSQL: Experiencia trabajando con motores no relacionales, especialmente documentales (ej. MongoDB) o almacenes de clave-valor (ej. Redis).
Ecosistema Orientado a Eventos Avanzado: Experiencia práctica trabajando con brokers de mensajería de alto rendimiento, idealmente Apache Kafka (o alternativas como RabbitMQ/AWS SQS). Garantizar idempotencia en el procesamiento de eventos. SAGAS
Resiliencia y Observabilidad: Patrones de estabilidad en sistemas distribuidos, como Circuit Breaker, Retry y Fallback, para evitar fallos en cascada. Observabilidad, instrumentando logs mediante TraceIDs y utilizando stacks de monitorización (ej. OpenTelemetry, Prometheus, Grafana, ELK o Datadog).
DevOps & Cloud: Conocimientos en plataformas de nube pública (AWS, GCP o Azure), creación y mantenimiento de pipelines de CI/CD (GitHub Actions, GitLab CI, Jenkins) y despliegues en clusters de Kubernetes (K8s).
Poliglotismo: Experiencia profesional o proyectos serios en otros lenguajes de backend como PHP, Ruby, Rust o Go.