Oji Life Lab: End-To-End eLearning Product Development
The dedicated development team of 6 Waverley engineers developed an end-to-end eLearning system to teach Emotional Intelligence. The native Android and iOS applications provide bite-sized learning steps, different card types, integrated video library, chats, group sessions, notifications system, integration with YouTube and Zoom, and a Mood Meter matrix.
Oji Life Lab offers a first-of-its-kind, digital learning system that helps individuals and teams thrive, gaining essential emotional and soft skills for work and life. Oji Life Lab is led by former Microsoft executive and tech veteran Matt Kursh (who ran the #4 site on the web while at Microsoft) with co-founders Dr. Marc Brackett of the Yale Center For Emotional Intelligence, noted psychologist and author, Dr. Robin Stern, and former Robert Half executive Andrea Hoban.
The Client reached out to Waverley with a request to help build a smartphone-based learning system aimed at helping individuals and teams improve performance by boosting emotional intelligence. Rather than simply delivering information, the native iOS and Android applications would provide a complete learning experience, combining a variety of activities to developing lasting habits. The Client had an app prototype, basic UI/UX and functional specifications. They needed our help to build a full-fledged platform that is scalable and could be sustained for the long-term.
Waverley assembled a team of 5 engineers under the supervision of an experienced project manager, which contained a Server-Side engineer, Android and iOS developers and a software QA engineer. During the first week, one of the founders came on-site for a week long intensive discovery and planning session. The team carefully estimated the client’s needs, helped structure the documentation, created use cases and selected the right tools and technologies.
After planning action items sprint-by-sprint, the team embarked on developing an MVP. It was released in November 2018 into app stores and contained a variety of features:
- Bite-sized learning steps
- Personalized learning flow, ability to track the learner’s level of progress
- Time-slots and time-based tasks
- Group sessions and one-on-one coaching
- Integrated Zoom and Layer text chats
- A library of text and video materials
- Mood Meter, a matrix for measuring the mood level was also integrated into the app
In order to quickly release an MVP version of the product, it was decided to work with ready-made elements, such as Zoom for video conferences, Layer chat for student conversations and Learnosity constructor and learning analytics. As a result, server-side developers had to deal with multiple integrations. The team evaluated GraphQL – the emerging data query and manipulation language and proved its feasibility for the projects. One of the interesting challenges in this project was the video transcoding functionality. With the help of Elastic Transcoding Service, our engineers enabled the creation of so-called progressive videos, adapted for the web, and also optimized for mobile device streaming.
The native Android app for Oji was developed from scratch based on Kotlin – the relatively new alternative to Java for Android. The team also used Google Architecture Components, a collection of libraries for improved design, testability and maintainability. The app consolidates all elements of the well-thought-out user learning flow and integrates both Layer and Zoom to provide industry leading capabilities in certain functional areas without reinventing technology that is already well designed and commercially available. In addition, mobile developers at Waverley integrated Learnosity, a web-based constructor for tests and assessments into the native mobile app, with no impact on performance or user convenience. Our engineers investigated the solution and advised the client on the advantages and risks of working with Learnosity, providing assistance in negotiations with this partner.
The native iOS application solves the same challenges as the Android app does. In order to cope with the situation when multiple data are updated simultaneously across various parts of the app, RxSwift and Realm were chosen. The app also supports numerous integrations, ensuring excellent performance and a high level of stability. Throughout the development, our iOS engineers consulted the client on various ways to implement the needed functionality, adjust user experience to maximize the experience on iOS devices and to smoothly submit the app to the App Store.
The biggest and most interesting challenge was extensive integration testing. All of the components had to be tested both separately and as one system. Luckily, the testing started on the early stages of the project, which helped to identify numerous issues way in advance of the MVP release. One more challenge was to test native iOS and Android applications on multiple mobile devices. QA team managed to solve this by using real devices in the Waverley test lab. The QA team was in close collaboration with the developers, reporting possible vulnerabilities and risks on the server-side, especially connected to the integration with clients, and third-party elements, such as chats, YouTube and Learnosity. The findings of ongoing testing often influenced major decisions on the architecture side.
For this client, we provided end to end software product development services. Waverley estimated the task, gathered a team and is taking full ownership of all parts of the project. The team works in two-week Agile sprints under the supervision of a project manager. Other specialists are pulled into the project if there’s a need for specific expertise or to assist with urgent tasks. The team communicates via Slack, keeps track of the tasks in Jira and reports bugs with the help of Instabug. The client is regularly in touch with the team and on-site knowledge sharing sessions have been conducted . Additionally, the team works with the client to prioritize product optimization, looking for out-of-the-box ways to improve performance and provide the best possible user experience.
The apps were launched on the App Store and Google Play and user downloads have now begun. The team continues working on the project by fixing any bugs in the current production releases, incorporating initial user feedback and adding new functionality to drive adoption forward.