Home Case Studies Recorem Building multi-tenant GraphQL applications
How Recorem made onboarding fast, seamless and more security-rich in a multi-tenant environment
Woman having video call on her laptop

Recorem matches prequalified job seekers to employment opportunities during professional events. Its platform enables companies to discover talent, for job seekers to find opportunities at events, and for event organizers to monetize events by helping them deliver value for their attendees.

Recorem’s users include organizers of events such as industry conferences, open houses and job fairs. Other users include job seekers, recruiters and hiring managers, as well as their teams and organizations across the globe. Recorem manages information about job seekers, job opportunities and events to support all of these users. It is critical that the platform protects all user data and has the right controls in place so that the right people have access to the right data.

The nature of the business and the growth of Recorem’s own business means that it is imperative to onboard new users quickly and cost-effectively. The Recorem platform is a multi-tenant service, where each tenant of the service corresponds to an event or client. For example, a conference and a university placement team are each representative of tenants. Therefore, Recorem must ensure that data belonging to one tenant does not leak to any other tenant.

Building a unified GraphQL layer

Recorem turned to StepZen1 (link resides outside of ibm.com), an IBM Company. Using the StepZen solution, Recorem stitches multiple APIs together into a unified GraphQL layer. Consequently, a single GraphQL call fetches data from numerous back ends. The ability to access data across back ends and stitch them together on the server side drastically reduces lines of code. StepZen’s custom GraphQL directive @dbquery streamlines the process of configuring connections to Postgres and MongoDB for data access and mutations. Using another custom directive (@rest), Recorem integrates the public and private REST APIs that implement the business logic and mutations to change application metadata, including user account creation and password changes.

The unified GraphQL endpoint and configuration-driven approach simplify what would otherwise be complex code to write and maintain, especially as continuously onboarding new users and events is a key success metric for Recorem’s business. For example, Recorem plans to soon integrate with a number of event platforms. This will allow organizers to enable job discovery using Recorem instead of the inbuilt matching that the event platform offers. These integrations allow Recorem to deliver the power of its matching algorithms to its clients. (Recorem evaluates multiple parameters like skills and proficiency for prequalifying job seekers to display relevant jobs.)

Recorem deploys a shared multi-tenant application on StepZen. Authorization and authentication capabilities using self-signed JWT tokens, which StepZen validates and respects, enable Recorem to use a security-rich process to isolate data belonging to different tenants within the same database. Because these signed, short-lived JWT tokens identify both tenants and users, the application can implement data isolation in a security-rich and efficient way.

Both public and private API calls are integrated into the single GraphQL endpoint. The public queries are open, and the private ones are restricted to those with valid JWT keys enabling Recorem to deliver a full range of user experiences, from pre-login experiences to personalized or secure content provided after the user logs in with valid credentials.

 

1StepZen is now part of IBM API Connect. This organization's purchase of the solution occurred before StepZen was acquired by IBM in February 2023, therefore StepZen is referred to as a standalone solution in this case study.

Onboarding quickly and securely 

The talent and job matching landscape is a complex one. Recorem’s core business is in matching third-party events, companies and job seekers and involves managing data from numerous back ends: APIs, databases, applicant tracking systems, HRM systems and more. StepZen helps Recorem integrate data and enable talent discovery and connections in a seamless and security-rich way. Using StepZen’s declarative and configuration-based approach to building the GraphQL API layer, Recorem developers avoid thousands of lines of programming logic to fetch and stitch data from multiple back ends.

Recorem deploys its service on StepZen’s hosted infrastructure, helping to ensure almost zero downtime. Recorem developers can focus on their business and quickly onboard new tenants on the platform, not on the building and maintaining a performant service.

The security and access control model, including the ability to define public and protected API calls, provides the security this platform needs to support its business and users. Last but not least, the StepZen team, with decades of deep expertise in database technology, is thrilled to partner with Recorem to tune its database for high performance.

Celestica Inc. logo
About Recorem

Recorem’s (link resides outside of ibm.com) vision is to help companies leverage professional conferences to discover passive talent. Its web application is designed for companies to discover talent and for job seekers to find opportunities at live, online and hybrid events.

StepZen

The only declarative approach for federated access to data.

Learn more Subscribe to the IBM newsletter Work and Co

Achieving faster scalable application development 

Read the case study
Persistent Systems

One API for data scattered across MSSQL, Salesforce and Oracle backends

Read the case study
 
Legal

© Copyright IBM Corporation 2023. IBM Corporation, New Orchard Road, Armonk, NY 10504

Produced in the United States of America, July 2023.

IBM and the IBM logo are trademarks or registered trademarks of International Business Machines Corporation, in the United States and/or other countries. Other product and service names might be trademarks of IBM or other companies. A current list of IBM trademarks is available on ibm.com/legal/copyright-trademark.

This document is current as of the initial date of publication and may be changed by IBM at any time. Not all offerings are available in every country in which IBM operates.

All client examples cited or described are presented as illustrations of the manner in which some clients have used IBM products and the results they may have achieved. Actual environmental costs and performance characteristics will vary depending on individual client configurations and conditions. Generally expected results cannot be provided as each client's results will depend entirely on the client's systems and services ordered. THE INFORMATION IN THIS DOCUMENT IS PROVIDED “AS IS” WITHOUT ANY WARRANTY, EXPRESS OR IMPLIED, INCLUDING WITHOUT ANY WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND ANY WARRANTY OR CONDITION OF NON-INFRINGEMENT. IBM products are warranted according to the terms and conditions of the agreements under which they are provided.

Statement of Good Security Practices: No IT system or product should be considered completely secure, and no single product, service or security measure can be completely effective in preventing improper use or access.  IBM does not warrant that any systems, products or services are immune from, or will make your enterprise immune from, the malicious or illegal conduct of any party.