Need to fill the gap in your tech team?

Rapidly become your extended team or build a product from scratch. Top-notch engineering solutions by Uinno.

learn more

Tech consulting for SaaS project“Onyx”. e-Learning app for corporate training

see it live
onyx

offeredservices

Solution Architecture <br /> Consulting
Solution Architecture
Consulting
Software Refactoring <br /> Consulting
Software Refactoring
Consulting

techstack

PHP
PHP
Node.js
Node.js
React
React

clientoverview

overview

The Project

Onyx Learning is a SaaS private learning management system that provides onboarding, skills assessment, and training programs with gamification elements for employees of all-sized businesses. Among their clients are well-known global corporations that have utilized either the website, standalone app, or API integration as a foundation for their custom-built corporate training.

The Challenge

Having a pool of serious customers, Onyx required to meet high software quality standards but faced the problem of insufficient tech expertise level.

There are two existing versions of the product implemented with different technologies - one with a PHP language and the other is with Node.js platform along with React-based frontend part. Frontend parts are hardly integrated. While surfing the old website, web pages get updated, and occasionally clicking some button a user may accidentally bump into a React-based frontend part. The code is far from being clean. Sharing API with third-party platforms is a complicated, painful, and expensive task.

To solve all these challenges the client's development team needed a hand of highly professional specialists who can see the big picture, assist with preventing mistakes and make the right software development decisions.

They have turned to Uinno with a request of providing technology consulting services. Among other goals, the client saw the need to obtain higher expertise concerning software architecture and code quality under our guidance.

the core solutionsprovided by Uinno

core_solutions

We are always striving to not just solve the current issue but propose the most optimal solution from the business strategy perspective. Our experienced specialists offered to merge the existing product versions into a solid unified solution that can be easily shareable, widely scalable, and work smoothly with any third-party integration.

1. Creating a strategy of merging two product versions

1. Creating a strategy of merging two product versions

Our experts proposed to merge these two versions in order to maintain the old backend and new backend + frontend smoothly. The old functionality should be connected and available from the new frontend. Besides, it should allow new integrations of auxiliary digital solutions. In this case “merging” means building the proxy layer (some kind backend for frontend) which will be the gate to old and new backends and will provide the general and friendly API.

2. Refactoring code within each merge request

2. Refactoring code within each merge request

Once a new piece of code is written by the client's development team and merged through a pool request into a codebase, we review it, explain the outcomes from the identified flows, and how to fix it. After improvements and our final approval, it gets tested and goes live.

3. Educating the client's development team

3. Educating the client's development team

There were elements of coaching provided along the way. We have not only consulted about the best possible decisions to meet the business objectives but explained how to actually implement certain solutions with each chosen technology within the project.

polishedmanagement process

/assets/images/projects/onyx/managements-benefits/clock.pngDaily Meetings
/assets/images/projects/onyx/managements-benefits/retrospectives.pngRetrospectives

We adhere to the scrum methodology while collaborating with the client. Daily meetings with each sprint retrospectives allow us to inspect the project progress and make sure the set goals are viable. Besides, we are able to plan future improvements along the way.

During meetings with the client's tech lead, we discuss the current tasks, a range of possible solutions, and the potential implications of each decision. This way all the technical and architectural resolutions pass through the approval of our specialists.

What's in theoutcome?

outcome

The Uinno engineers have shared the knowledge on a variety of topics to help the client implement the best practices in writing the clean code and designing the smart solution architecture.

We have introduced high-standard code review services to ensure the quality of the software development process and established a new strategy for further product development to enable its future scalability and smooth maintainability.

The introduced merging strategy allows to:

  • Easily add new digital solutions without the need to re-write the existing code;
  • Build a unified API when third-party integrations are called with a single language instead of different ones;
  • Provide the API to end-users who are willing to apply their own frontend or integrate their own mobile app;
  • Ensure the consistency of the API in the future;
  • Integrate mobile applications without a hitch.

Ultimately, we have developed a turnkey product that utilized the full cycle of software development services: solution design, solution architecture, design concept, frontend and backend development, quality assurance, and project deployment.

Uinno experts assumed a role of a CTO to manage the development process and mentor the client's development team with a mission to bring a quality product on the market that best represents the client's business value.

explorenext project

arrow-right