Encuentra tu próxima oportunidad

Busca ofertas por puesto, competencia y ubicación. Revisa los requisitos antes de preparar tu candidatura.

Una buena búsqueda no termina al encontrar un título atractivo. Compara las tareas, los requisitos y las condiciones de cada oferta con tu experiencia. Esta guía te ayuda a crear una lista de oportunidades, preparar documentos relevantes y comprobar dónde enviar cada candidatura.

La interfaz está en español. Los títulos y las descripciones de las empresas se mantienen en el idioma original de publicación, que puede ser inglés.

Borrar filtros

Resultados: 12.763

← Volver a los resultados

Senior or Staff Java/Kotlin Developer - Remote Portugal

HumanIT Digital Consulting

Trabajo remoto

Ubicación
Remote (Portugal)
Retribución
EUR 2450-3250 per monthly
Jornada
Full Time
Publicado
11 oct 2026

Confirma que la oferta sigue abierta y revisa sus condiciones en el sitio web de la empresa antes de solicitar el puesto.

Descripción del puesto

La interfaz está en español. Los títulos y las descripciones de las empresas se mantienen en el idioma original de publicación, que puede ser inglés.

ABOUT THE OPPORTUNITY Join a global software engineering company working on cutting-edge distributed systems and cloud-native architectures serving international clients. Position for talented Backend Engineers to build scalable microservices using modern JVM languages, cloud infrastructure, and event-driven architectures. Operating with complete remote flexibility from anywhere in Portugal, you'll work with a sophisticated technology stack combining Java and Kotlin for backend development, Terraform for infrastructure as code, Kubernetes for container orchestration, and Kafka for event streaming. This role offers the opportunity to work with GraphQL Federation for API composition, deploy applications on Azure Cloud, and contribute to systems designed for scale, resilience, and performance. As part of a collaborative engineering culture, you'll participate in architectural decisions, write production-grade code following best practices, and work alongside talented professionals who value quality, innovation, and continuous learning while enjoying the benefits of full remote work and competitive compensation. PROJECT & CONTEXT You'll design, develop, and maintain backend microservices using both Java (preferably newer versions like Java 17+) and Kotlin within a cloud-native environment. Your work will involve building event-driven architectures using Apache Kafka for real-time data streaming and asynchronous communication between services, implementing GraphQL Federation for unified API layer across distributed microservices, and leveraging Spring Boot for rapid application development with enterprise-grade features. Operating on Azure Cloud, you'll manage infrastructure using Terraform for declarative infrastructure provisioning and version control, deploy and orchestrate containerized applications on Kubernetes ensuring high availability and scalability, and implement CI/CD pipelines using GitHub for version control and automated deployments. The role requires understanding distributed systems principles, designing APIs that serve various client applications, writing comprehensive tests to ensure code quality and reliability, and participating in code reviews to maintain engineering excellence. You'll collaborate with cross-functional teams including frontend developers, DevOps engineers, and product managers to deliver features aligned with business objectives while ensuring system performance, security, and maintainability across the full development lifecycle. WHAT WE'RE LOOKING FOR (Required) Java Proficiency: Strong hands-on experience with Java for backend development (experience with newer versions like Java 11+ or Java 17+ is highly valued) Kotlin Expertise: Solid practical experience developing applications with Kotlin, understanding Kotlin-specific features and idioms Spring Boot: Proven experience building microservices and enterprise applications using Spring Boot framework Terraform Skills: Hands-on experience with Terraform for infrastructure as code, provisioning cloud resources declaratively Kubernetes Experience: Practical knowledge deploying, managing, and troubleshooting applications on Kubernetes clusters Kafka Proficiency: Working experience with Apache Kafka for event streaming, message processing, and building event-driven architectures GraphQL Federation: Understanding of GraphQL and experience with GraphQL Federation for distributed API architectures Azure Cloud: Hands-on experience with Azure cloud services and cloud-native development patterns GitHub: Proficiency using GitHub for version control, collaborative development, and CI/CD workflows Microservices Architecture: Strong understanding of microservices design principles, patterns, and best practices RESTful APIs: Experience designing and implementing REST APIs following industry standards Testing Practices: Writing unit tests, integration tests, and maintaining high test coverage Containerization: Understanding of Docker and container-based application deployment Problem-Solving: Strong analytical and debugging skills for complex distributed systems Code Quality: Writing clean, maintainable, well-documented code following SOLID principles Language: B2 English (Upper Intermediate) minimum for team communication and documentation Location: Based in Portugal with full remote work capability NICE TO HAVE (Preferred) Advanced Java Features: Deep knowledge of Java 17+ features, virtual threads, pattern matching, records Kotlin Coroutines: Experience with Kotlin coroutines for asynchronous programming Spring Ecosystem: Spring Cloud, Spring Security, Spring Data for comprehensive backend solutions Infrastructure as Code: Additional IaC tools like Pulumi, ARM templates, or Bicep for Azure Helm Charts: Kubernetes package management with Helm for application deployment Service Mesh: Istio, Linkerd, or similar service mesh technologies for microservices communication Advanced Kafka: Kafka Streams, KSQL, or Kafka Connect for stream processing GraphQL Advanced: Schema stitching, Apollo Federation, or GraphQL performance optimization Azure Services: Azure Kubernetes Service (AKS), Azure Service Bus, Azure Functions, Cosmos DB Monitoring & Observability: Prometheus, Grafana, ELK Stack, Azure Monitor, Application Insights Message Patterns: CQRS, Event Sourcing, Saga pattern for distributed transactions Security Practices: OAuth 2.0, JWT, API security, Azure AD integration Database Technologies: PostgreSQL, MongoDB, Redis, or other database systems Performance Optimization: Application profiling, performance tuning, and optimization techniques Design Patterns: Advanced knowledge of enterprise integration patterns and architectural styles Functional Programming: Functional programming principles in Kotlin or Java gRPC: Experience with gRPC for high-performance service-to-service communication Testing Frameworks: JUnit 5, MockK, Kotest, TestContainers for comprehensive testing CI/CD Tools: GitHub Actions, Azure DevOps, Jenkins for deployment automation Agile Methodologies: Experience working in Scrum or Kanban environments Location: Remote Portugal (work from anywhere in Portugal) Compensation: €2,450 – €3,250/month net, depending on experience and seniority level. Why HumanIT people stay (4.4 Glassdoor, 89% recommend) - 15th month salary - Health insurance covering your family - Birthday off - Mobility program for digital nomads - Real work-life balance Full benefits What it's really like  Originally posted on Himalayas

Busca, compara y prepara tu candidatura

Empieza con un puesto o una competencia que quieras utilizar. Ajusta los filtros de ubicación y profesión y abre las ofertas para comparar sus responsabilidades. Si no encuentras resultados, prueba un término más corto o elimina un filtro cada vez.

Distingue los requisitos imprescindibles de las preferencias. Comprueba la jornada, la retribución y la ubicación cuando se indiquen. Un puesto remoto puede exigir residencia en un país, autorización para trabajar o coincidencia horaria. Confirma la oferta y las condiciones completas con la empresa.

Elige ejemplos reales de tu experiencia que respondan a los requisitos del puesto. Explica tu aportación y utiliza cifras solo cuando puedas justificarlas. Sigue las instrucciones de la empresa y revisa los datos de contacto, el contenido y el PDF antes de enviar la candidatura.

Antes de enviar tu candidatura

Preguntas sobre la búsqueda de empleo

¿Por qué algunas ofertas están en inglés?

Las empresas publican sus propios títulos y descripciones. Conservamos ese texto para no alterar requisitos o condiciones. La navegación y esta guía están en español. Si una búsqueda en español no encuentra ofertas, prueba también el título o la competencia en el idioma del anuncio, por ejemplo «software engineer».

¿Un puesto remoto permite trabajar desde cualquier país?

No necesariamente. La empresa puede limitar los países de residencia, exigir autorización para trabajar o fijar un horario. Comprueba estos puntos en la oferta original. Si no aparecen, consúltalos con la empresa antes de asumir que puedes trabajar desde tu ubicación.

¿Qué hago si no aparecen resultados?

Prueba un título más general o una sola competencia y elimina los filtros de uno en uno. Los nombres de los puestos varían entre empresas. Si una oferta concreta ha desaparecido, busca su referencia en la página de empleo de la empresa; ampliar los filtros no recupera una vacante cerrada.

¿La candidatura se envía desde ResumizeAI?

El botón de solicitud abre un destino externo. Sigue las instrucciones de la empresa o del proveedor de selección y confirma allí el envío. Preparar un currículum en ResumizeAI no equivale a presentar una candidatura. Si el enlace solo abre la web de la empresa, busca la vacante antes de continuar.

¿Cómo adapto el currículum y la carta de presentación?

Relaciona los requisitos con proyectos, tareas y resultados que puedas explicar. Destaca lo relevante sin inventar experiencia ni copiar competencias que no tienes. En la carta, explica tu interés y aporta un ejemplo concreto. Respeta el idioma y el formato pedidos y revisa ambos documentos antes de enviarlos.