Joynd

  • Business operation
  • HR tech
  • USA
  • 2021 - ongoing

Joynd is an integration middleware solution provider, dedicated to delivering repeatable HR integrations. Joynd’s builds a standard connector between each HR application and the Joynd hub. They then deploy the connector to their proprietary integration platform.

Joynd

About the client

Once a vendor is connected to their hub, Joynd's customers now have access to their vast library of integrations through a simple deployment process. Joynd has experience working through a vast range of HR processes and integration scenarios, with the application expertise to navigate integrations that range from turnkey to custom.

Problem:

The idea Joynd stakeholders presented to us was fairly complicated from the technical point of view: the requested product basically was thought out as a functional middleground between clients (companies hiring people) and software providers to create a Portal for internal and external users to manage their integrations. This request entailed a range of implementational challenges:

  • Integrating the product (Joynd itself) and the HR solutions;
  • Ensuring the possibility of fast and effective integration with different software;
  • Thinking out user flow and user experience;
  • The issue of different level access.
  • Provide software that is understandable and usable for many “levels” of users

Challenges:

Requirements Gathering

At the beginning of our collaboration, Joynd’s stakeholders’ idea wasn’t backed by any tangible documentation or description. The client came to us with verbal requirements, presenting the first challenge on the development path – the needs assessment. The Devox team helped the client shape the product requirements, dividing them into functional and non-functional and clearing them up into clear and tangible documentation assembled according to the project management best practices. Later, in further development after completing the MVP, we went with a learning-by-doing pattern to show our client the possibility of how the solution might look like.

Solution:

MVP

According to the requirements Devox and Joynd teams shaped together, the MVP version had to feature the connector that would transfer the HR data from one system (the HR software) to the other (the Joynd platform itself as an assemblage point).

Bringing different software and a platform together

The key challenge around developing a system like Joynd was a physical embodiment. We had to unite two ingredients: a number of different software with its own unique user flow and a platform where all of it is unified like in a library. 

Design

After conducting thorough UX research, our team of designers worked on the user path from scratch. We thought out a range of user identities, including different levels of access, and tuned their dashboards and user flows. In particular, we set up an admin side (with more default access) and a client side (with selected access).

Back-end integrations

After creating a platform, we created a system of back-end integrations to provide functionality and seamless integrations with suppliers’ software.

Access points: Federated Identity

The first approach we employ on the back-end is federated identity. This approach allows managing user’s data within different systems. 

A federated identity is the means of linking a user’s identity information stored across different identity management systems. In Federated Identity Management, an arrangement is made between multiple organizations, such that users can use the same credentials to access networks of all the organizations in the group.

How it works

The user makes a request on the front-end. This request goes to two back ends: the service provider’s (the integrated solution) and the Joynd platform’s. The user’s identity is checked on both sides, which is how it’s federated from both angles.

As Joynd as a system offers access to multiple services that have to stay public as they are not united by a single category, the issue of security and secure connection arises. This is why we implemented permission-based authentication, where permissions are checked to be coming strictly from Joynd’s UI – not the related providers’ application or website. For such authentication, we use JSON Web Token.

Recently, we have implemented the Transit API: from token – user – called command chain, we switched to a different one in order to, first of all, upgrade the system’s security, and secondly, streamline the Joynd portal workflow regarding multiple accesses. Before, all the users used to call a single back-end, while now, each user gets their own unique JWT token. This token is preserved on the back-end and communicates with the Transit API when the log in happens: when the user tries to log in, the system sends their token via transit API along with their user name. It is generated upon the successful log in on the front-end and is destined for a Transit API to back-end communication

Architecture

We’ve chosen the approach of hexagonal architecture in order to separate the business logic from the external factors (databases, APIs, transit APIs). Hexagonal allows separating the inner core from different ports and adapters as ambassadors of business logic operating with other services. This approach allows us to leverage flexibility and agility of complicated sign-in operations, streamlining upcoming types of testing (end-to-end, integration, unit testing in particular) as well. This is how interchanging external services without major changes in the core business logic is possible.

Security Implementations within Hexagonal Architecture

Hexagonal architecture facilitates enhanced security measures:

First of all, it offers isolated security operations: for example, authentication and authorization are managed by dedicated security adapters, which helps to isolate these critical operations from the main business logic.

Secondly, this architecture ensures that data flows are secure and comply with regulatory standards by using adapters that encapsulate the logic for data exchange, minimizing risks of data leaks.

Scalability and Adaptation

The modular nature of hexagonal architecture allows Joynd to easily adapt to new requirements and scale up operations without significant rewrites of the core logic. As Joynd integrates more HR software tools, we’ve developed new adapters that plug into the existing architecture without impacting other system components. Also, to address scalability, we implemented adapters that manage different loads or by distributing requests across multiple instances of the same adapter.

Error Handling Strategies

We’ve ensured more effective error handling thanks to the decoupled nature of system components.

The first is resilience: we’ve designed adapters to handle failures in external systems gracefully, ensuring that the core application remains unaffected.

Error logging and recovery capabilities come next. We’ve made it so specific adapters are responsible for error logging and recovery processes, helping maintain the system’s reliability and integrity.

Performance Optimization

Dealing with multiple external interfaces requires fortified and optimized performance. For this, we implemented two approaches:

First is asynchronous communication. Using asynchronous adapters improves system responsiveness and reduces dependency on external services’ performance.

Second is caching mechanisms. We implemented caching strategies in data access adapters to reduce latency and load on the core system.

Technologies

Insight:

  • Back End

    • .NET
  • Front End

    • Angular
    • HTML/CSS
    • JavaScript 
    • TypeScript
  • Database Development

    • PostgreSQL
  • DevOps & Cloud

    • AWS
    • Docker

Project

management model:

Starting with Scrum, our collaboration shifted to Scrumban and eventually to Kanban because of the delays from the client’s side. For example, having completed a feature, our development team couldn’t list it as completed as we lacked data from the client, which complicated delivery in sprints.

Results:

Currently in our collaboration, Joynd Portal is on its way to becoming an interface uniting the entire set of integrated systems, which is Devox’s and Joynd’s long-term perspective. Together with Devox, Joynd as a project could be realized in the full potential of its business value, giving life to a range of complicated processes and UX flows. Together, we achieved:

Integration of Diverse Software

Joynd effectively integrated different HR tools into a unified platform, allowing client companies to access and utilize a variety of HR software solutions seamlessly. This integration overcomes the challenge of disparate user flows and functionalities inherent in using multiple HR systems.

User-Centric Design and Experience

The platform’s development involved extensive UX research, leading to a thoughtful design of user paths. This approach included creating distinct identities for various user types, such as admins and clients, each with tailored levels of access and dashboard configurations.

Back-End Integrations for Functionality

The platform’s functionality hinges on a robust system of back-end integrations. These integrations enable seamless interactions between the client’s chosen HR solutions and the Joynd platform, ensuring a smooth user experience. One of the unprecedented ways of integration was employing a federated identity approach, a key aspect of Joynd’s access flow. This method allows for efficient management of user data across different systems by verifying user identities on both the service provider’s and Joynd’s platforms, ensuring secure and streamlined access.

Contact Us

Schedule a Meeting to Discuss Your Goals

Well contact you within a couple of hours to schedule a meeting to discuss your goals.

Let's discuss your project!

Share the details of your project – like scope or business challenges. Our team will carefully study them and then we’ll figure out the next move together.







    By sending this form I confirm that I have read and accept the Privacy Policy

    Thank You for Contacting Us!

    We appreciate you reaching out. Your message has been received, and a member of our team will get back to you within 24 hours.

    In the meantime, feel free to follow our social.

    Thank you for contacting us! You will get answer within the next 24 hours.