Caravelo logo

Caravelo

TravelPlatform

Sobre nosotros

Caravelo stands at the cutting edge of TravelTech innovation, merging financial and travel solutions into a seamless subscription service. Based in the vibrant city of Barcelona, we pride ourselves on being the world’s sole provider of specialized subscription platforms for the travel industry. Our solutions empower airlines and other travel providers to enhance their product offerings, achieve greater profitability, and ensure operational stability.

With a dedicated global team of 40 members, Caravelo has experienced significant growth and embraces a hybrid work model. Our headquarters in Barcelona foster creativity and collaboration, creating a dynamic workplace where ideas thrive.

Vídeos

¿Qué estamos buscando?

Proactive Excellent communication skills Honest Persistent Resourceful Flexible and open-minded Enthusiastic High standards Open to feedback Team player

Ofertas de trabajo en Caravelo

We're looking for an experienced Frontend Tech Lead to shape frontend engineering practices, strengthen shared foundations, and help teams build reliable, scalable products.

🎯 Role overview

  • Join the Platform team and participate in Engineering Leadership.
  • Report to the CPTO and work closely with frontend engineers across Product and Platform, backend and platform engineers, Product Managers, Designers, Professional Services, and engineering leadership.
  • Remain highly hands-on by building features, shared capabilities, and platform improvements.
  • Extend your impact beyond the code you write by improving architecture, engineering practices, developer experience, and team autonomy.
  • Lead through technical judgment, clarity, consistency, and the quality of the foundations you help create, without requiring direct reports.

🎯 Responsibilities

  • Build and improve shared frontend capabilities used across the organization.
  • Evolve the design system and component foundations in collaboration with Design and other frontend engineers.
  • Improve developer experience across local development, CI/CD, testing, and deployment.
  • Keep the frontend architecture healthy as new features and product lines are introduced.
  • Make pragmatic architectural decisions without adding unnecessary complexity.
  • Define and evolve frontend architecture conventions and engineering standards.
  • Facilitate RFCs and technical decision-making.
  • Raise the quality and consistency of code reviews.
  • Run or contribute to the frontend guild.
  • Mentor frontend engineers and help them become more autonomous.
  • Strengthen E2E testing, regression coverage, monitoring, alerting, performance visibility, production debugging, and troubleshooting.
  • Improve confidence in releases and changes by making failures easier to detect and understand.
  • Increase visibility into frontend work and technical decisions.
  • Document architecture, patterns, and shared capabilities.
  • Improve collaboration between Platform, Product, and Professional Services.
  • Share knowledge so engineers can move forward without depending on a small number of people.
  • Follow up on architectural decisions so they become consistent practices.
  • Use AI tools to accelerate implementation, testing, debugging, and documentation.
  • Encourage reusable workflows and consistent patterns for AI-assisted development.
  • Help engineers review and challenge AI-generated code.
  • Use specifications and clear technical intent to guide AI-assisted development.
  • Maintain strong judgment, ownership, and maintainability while increasing development speed.

🛠️ Requirements

  • Experience operating as an experienced Tech Lead, or strong experience as a Senior Frontend Engineer ready to grow into that scope.
  • Deep experience with Vue 3 and its ecosystem.
  • Strong professional experience building modern frontend applications.
  • Excellent software engineering fundamentals.
  • Experience improving reliability through testing, observability, performance work, and production debugging.
  • Experience leading technical decisions, architecture discussions, and code review practices in a frontend environment.
  • Ability to mentor engineers, communicate technical decisions clearly, and influence without relying on hierarchy.
  • Pragmatic judgment: you know when to improve architecture, when to keep things simple, and when not to build something.
  • Interest in mentoring, reviewing code, and helping other engineers improve.
  • Ability to consider whether functionality already exists, belongs in the shared platform, and will be understandable and reusable by the next engineer.
  • Ability to measure your impact by the autonomy and effectiveness of the engineers around you.
  • Enjoyment of technical discussions, with a focus on turning decisions into conventions and reusable foundations.
  • Continued interest in writing code, balanced with an understanding that writing more code is not always the best solution.
  • Interest in practical architecture rather than architecture for its own sake.

➕ Nice to have

  • Experience with the Nuxt meta-framework.
  • Experience working with design systems and shared component libraries.
  • Experience with monorepos, developer tooling, and frontend CI/CD.
  • Experience with Playwright, Vitest, or similar testing frameworks.
  • Experience with Datadog or similar monitoring and observability tools.
  • Experience leading or shaping frontend practices across multiple teams.

🧰 Frontend platform

  • Vue 3
  • Nuxt 4
  • TypeScript
  • Vitest
  • Reka UI
  • Turborepo
  • Monorepo architecture.
  • Full SPA delivery through a CDN.
  • Decoupled deployment for assets and translations.
  • GitLab pipelines for CI/CD.

The goal is to make the existing stack increasingly effective, robust, understandable, and scalable—not to replace it for its own sake.

📈 Success in this role

  • Frontend engineers ship features with less friction and greater confidence.
  • The frontend architecture remains coherent as the product grows.
  • Shared components and the design system are actively reused and evolved.
  • Frontend work is easier to understand across teams because standards, documentation, and decisions are visible.
  • Reliability improves through stronger E2E coverage, monitoring, alerting, and performance practices.
  • Engineers become more autonomous, with fewer frontend decisions depending on a small number of people.
  • AI-assisted development increases speed without increasing architectural inconsistency.
  • Future frontend initiatives are evaluated pragmatically without chasing trends for their own sake.

🔭 Future opportunities

  • Deepen your impact as a technical leader.
  • Take on broader platform responsibilities.
  • Shape larger frontend initiatives as they emerge.
  • Contribute to potential hybrid or native app experiences.
  • Support further platform productization.
  • Continue evolving developer tooling and frontend reliability.

🤗 Benefits

  • Company events.
  • Tax-free transport, food, gym, and childcare benefits.
  • Flexible hours.
  • Free coffee and beer.
  • Competitive salary and progression framework.
  • Salary range: 55,000–65,000.

🗣️ Hiring process

The process usually takes around 3–4 weeks from application to offer and includes five stages:

  • Intro call — 15–20 minutes: A conversation with the People team about your experience, goals, and the role.
  • Hiring Manager interview — 30–45 minutes: A deeper discussion about your experience, technical leadership, and the frontend challenges you would help address.
  • Practical assessment: A short, role-specific exercise focused on frontend architecture, technical trade-offs, and engineering quality.
  • Team interview — 45–60 minutes: Meet future colleagues to discuss your experience and assessment, explore technical decisions, and understand how you would work together.
  • Founder or leadership interview — 30–45 minutes: A final conversation to align on expectations, ways of working, and any remaining questions.

Tell us about a frontend system, practice, or architecture you helped improve for other engineers.

OfficeBarcelona, SpainGitlabTest AutomationTypeScriptVue.JSNuxtJS
Ver oferta

We're looking for a Customer Solutions Engineer (Java / Full Stack) to turn customer requirements into clean, production-ready implementations built on a common platform.

🎯 Responsibilities

  • Work with Project Managers and customer stakeholders to understand business and technical requirements.
  • Translate requirements into concrete implementation plans and solutions.
  • Configure and extend the platform using capabilities provided by Product and Platform teams.
  • Build and maintain customer plugins containing customer-specific logic, integrations, business rules, and behaviours.
  • Decide whether each requirement should be addressed through configuration, extension, integration, or a dedicated service or module.
  • Take implementations through development, testing, launch, and production stabilisation.
  • Integrate the platform with complex airline technology ecosystems, including:
      Airline reservation and passenger service systems Payment gateways and payment infrastructure Identity and authentication platforms CRM and communication systems Loyalty platforms Data platforms Internal airline APIs Third-party and legacy systems
  • Investigate and resolve problems involving incomplete API documentation, environment differences, and incompatible system assumptions.
  • Build additional connectors, extend workflows, create customer-specific business logic, and develop isolated services or modules when there is a genuine platform gap.
  • Implement data transformation and migration processes.
  • Investigate and debug production issues across multiple systems and external dependencies.
  • Maintain customer-specific integrations and upgrade connectors as external systems evolve.
  • Support technical migrations while keeping customer services running.
  • Replace or introduce integrations and improve existing implementations as platform capabilities evolve.
  • Work with Project Managers and customer teams on migration planning, validation, and rollout.
  • Work primarily with Java and backend systems while following problems across APIs, integrations, databases, scripts, data migrations, and occasional Vue frontend changes.
  • Use AI-assisted development tools such as Claude Code, Cursor, Devin, and similar assistants for implementation, code exploration, testing, debugging, refactoring, documentation, API work, integrations, and occasional frontend development.
  • Apply engineering judgment when using AI tools and validate that all resulting work is production-quality.

🛠️ Requirements

  • Strong professional experience building production software in Java, with solid backend engineering fundamentals.
  • Strong debugging and problem-solving skills, particularly across multiple systems and external dependencies.
  • Experience designing and integrating APIs, distributed services, and cloud-based systems.
  • Good understanding of testing, CI/CD, databases, observability, and production software quality.
  • Strong communication skills and the ability to collaborate with Project Managers, engineers, and technical customer stakeholders.
  • Ability to understand an existing platform and extend it cleanly rather than rebuild it.
  • Comfort working with unfamiliar API documentation, tracing production issues across several systems, and developing practical solutions.
  • Pragmatic approach to architecture and software design.
  • Comfort working on problems where the solution is not always predefined.
  • Interest in understanding how systems behave, not only implementing predefined tickets.
  • Ability to work effectively with complex or legacy systems, including systems whose behaviour may differ from their documentation.

➕ Nice to have

  • Experience in travel technology, airlines, reservation systems, or similarly integration-heavy industries.
  • Experience in Professional Services, implementation engineering, solutions engineering, or customer-facing technical delivery.
  • Experience with payments, payment gateways, data migrations, or other business-critical integrations.
  • Experience integrating enterprise or legacy systems in complex customer environments.
  • Familiarity with Vue/Nuxt, Couchbase, or Datadog.
  • Experience working in security-, compliance-, or reliability-sensitive environments.
  • Interest in Spec-Driven Development (SDD), including clearly defining what needs to be built before using AI to assist with implementation.

✅ Success in this role

  • Turn customer requirements into clean, production-ready solutions.
  • Launch customers successfully without unnecessary changes to the core platform.
  • Keep customer-specific behaviour isolated, understandable, and maintainable.
  • Build integrations that are observable, reliable, and clear to engineers beyond their original authors.
  • Diagnose complex problems across the platform and customer systems.
  • Know when to configure, when to extend, and when custom development is genuinely necessary.
  • Become increasingly independent in understanding new customer technology landscapes.
  • Deliver migrations and integration changes without destabilising customer services.

💰 Compensation

  • Salary range: €35,000–€45,000.

🤗 Benefits

  • Fun environment and company events.
  • Tax-free benefits for transport, food, gym, and childcare.
  • Flexible hours and remote work options.
  • Spacious office with free coffee and beer.
  • Competitive salary and progression framework.

🧭 Hiring process

The hiring process usually takes around 3–4 weeks from application to offer and includes five stages:

  1. Intro call (15–20 minutes): A conversation with the People team about your experience, what you are looking for, and the role.
  2. Hiring Manager interview (30–45 minutes): A deeper discussion about your experience, the role, and the problems you would solve within the Professional Services team.
  3. Practical assessment: A short, role-specific take-home assignment focused on technical problems and real-world scenarios.
  4. Team interview (45–60 minutes): Meet two or three future colleagues to discuss your experience and assignment, explore technical topics, and discuss how you would work together.
  5. Founder interview (30–45 minutes): A final conversation to align on expectations, ways of working, and any remaining questions.

The process is designed to be practical, transparent, and efficient. Timelines may vary depending on the role and availability.

OfficeBarcelona, SpainAPI DesignDatabase ManagementData IntegrationDistributed SystemsJava
Ver oferta