The versatility of KrakenD allows us to use it as a ‘one size fits all’ solution. We’ve been able to migrate all our legacy API endpoints seamlessly, and it’s now the main gateway for our services and partners alike.
The JobTeaser tech ecosystem was initiated more than a decade ago. If our platform was initially a Ruby on Rails monolith, now we manage a fleet of ever-growing services built using Ruby and Go. We communicate between services using a combination of gRPC and Kafka events. Those services expose APIs called by our NextJS frontend. However, we didn’t choose to rely on grpc-web to allow our client app to contact our services. This means we need a way to translate incoming classical HTTP requests to gRPC calls. We built an internal and custom API gateway for this endeavour, allowing our software engineers to expose gRPC services as classical HTTP APIs through a simple YAML configuration. That served us well until our context changed.
Preparing for Public APIs: The Search for a Robust Gateway Solution
JobTeaser is now offering public APIs to its partner network, taking the occasion to move to an API-driven philosophy where every relevant feature would be accessible as an API to schools and companies. From a technical and developer experience, it changed everything:
- We were used to referring to internal Protobuf files to understand how endpoints worked; we now need a real OpenAPI documentation.
- We were used to seeing technical details leaked in API URLs. We now need to craft better, REST-like APIs.
- We were used to relying on a very custom authentication system. We now need to rely on standards.
- And more! (Custom rate limiting, an ACL system, security audit, better monitoring, …)
The time had come for us to say goodbye to our old API gateway and start looking at the market for a ready-to-use and well-engineered tool.
Integrating KrakenD as a Core Component in JobTeaser’s Infrastructure
KrakenD has been used in production at JobTeaser for a year now. It’s one of the core components behind every incoming request to our platform. Right after Cloudflare, a request will go to KrakenD before being dispatched to the right service in our infrastructure. The versatility of KrakenD allows us to use it as a “one size fit all” solution. We can migrate all our legacy API endpoints to it without any breaking changes thanks to flexible configuration, and we’re even able to handle some special routing for our client pages that we were previously dealing with using a combination of Nginx and a custom NodeJS server. Our partners use this new gateway daily, and it is now the main internal service gateway. Given the distributed nature of our architecture, we use Kubernetes as an orchestrator to handle the lifecycle of everything and deploying KrakenD on this ecosystem was simple, thanks to Equinix Metal’s Helm chart.
Positive Results and a Long-Term Commitment to KrakenD
We are only at the beginning of our KrakenD journey. However, we are pleased to see our new gateway used by a growing number of users. More partners are using public APIs exposed through this new gateway, and all our internal calls are quickly moving to KrakenD. The ability to generate OpenAPI documentation that can quickly be loaded in a standard tool (such as SwaggerUI or Stoplight) is appreciated by partners and JobTeaser’s software engineers. Our bet on KrakenD as a new gateway is now validated, and we choose to double down on this path. We have signed a multi-year contract on KrakenD and will continue investing in it. We have a vast plan for our new gateway, from custom features through the plugin system to custom tooling for an even better developer experience. As I said, we’re only at the beginning.
We needed a tool that could fit in our ecosystem and allow us to reach our goals without refactoring half of our existing stack… KrakenD’s support team handled our requests with great care and reactivity.
Why KrakenD Stood Out: Versatility, Compatibility, and Reliable Support
JobTeaser has a vast ecosystem, with some parts of our stack that we consider “legacy” (with all the inconvenience you can think of). Yet, we needed a tool that could fit in this ecosystem and allow us to reach our goals without requiring us to refactor half of our existing ecosystem. We found such versatility in KrakenD. Versatility in the backend configuration with HTTP, gRPC, Kafka, and web socket backend support. Versatility in the flexible configuration mechanism allows us to import all our previous gateway configuration files without breaking changes. Versatility in the plugin system that will enable us to bind KrakenD to other components of our stack (e.g., our authentication service). We also like the support of standard approaches and technologies such as JWT, Open API, and OpenTelemetry. Last but not least, we found KrakenD to have an excellent support team. The team handled our support requests with great care and reactivity.
About JobTeaser
JobTeaser is Europe’s leading provider of career guidance and recruitment services for young talent. Through its platform, integrated into over 800 higher education institutions, JobTeaser connects companies with more than 5 million students and recent graduates. By offering tools for job postings, employer branding, and direct engagement, the platform allows recruiters to efficiently target and attract qualified young talents. JobTeaser helps companies promote their values, culture and opportunities to a generation that is actively seeking internships, apprenticeships, and entry-level positions, making it an ideal partner for early-career recruitment.