About the customer

Andersen was contracted by a US-based university as a dependable developer of the best examples of eLearning platforms. This higher education establishment offers a wide range of educational programs at various levels: undergraduate, postgraduate, and professional courses for students from all over the globe. The institution has over 10,000 employees and takes pride in having over 58,000 students. Most of them – around 70% – are located in the US.

[object Object] on the map

Project overview

As a well-known university established in the 18th century, the customer needed to swiftly and cost-effectively adapt to new challenges resulting from the pandemic. The situation with COVID-19 made all educational institutions revisit and reassess the way they delivered learning. Due to strict lockdowns, many people were forced to stay home and practice social distancing. Thus, the customer had to find a new way to fulfil its missions. The solutions available on the market didn’t meet the customer’s requirements in terms of reliability – all of them could be easily overwhelmed due to a high load or poor Internet connection. This fact mandated the need for a brand-new, custom-built, and fully dependable eLearning video platform with advanced conferencing capabilities.

Duration24 months






GitLab CI, Docker, Kubernetes


    • 3 Solution Architects
    • 3 Business Analysts
    • 5 Front-end Developers
    • 4 Back-end Developers
    • 3 Mobile App Developers
    • 1 UI/UX Designer
    • 4 QA Engineers
    • 1 Project Manager

Project details

The customer’s business was under COVID-19 pressure. The forced pandemic restrictions made in-person learning almost impossible, entailing lost opportunities and reduced profits by 7.53% for the university. This happened because the education process wasn't digitalized at the required level, with all the needed features in place. The institution also lacked the ability to share content and communicate with a wider audience around the world by using popular up-to-date technologies, namely, an eLearning video platform.


The customer's intention was to enhance student loyalty in the region and expand to other regions by developing a web-based eLearning platform powered by WebRTC (Web Real-Time Communications) technology. This technology was supposed to complement existing educational programs and techniques, offering an opportunity to totally digitalize them in the future.

The platform was expected to provide high-quality real-time communications services, giving users easy access to media content (streaming, screen sharing, interactive whiteboards, an inclusive+ version, etc.) on all types of devices (web/mobile). For our customer's business, this meant the capability to distribute their content online without gathering many people in one space and hence without exposing them to COVID-19. The university was determined to comply with all applicable norms, provide educational services of high quality, and distribute new digitized business offerings to the regions of Europe and Asia. This, in turn, meant getting a larger share of the educational market without being tied to a specific offline location.

And that is why, due to the terms of use of some platforms in the international market and the lack of the necessary functionality in existing platforms (such as Skype, Slack, Microsoft Teams, Zoom, Discord, etc.), the university decided to create its own platform that would meet all its requirements.


The university wanted to restore student loyalty and confidence, increase the business's profitability, and become a leader among educational service providers by obtaining its own web-based eLearning platform. The resulting solution was expected to cover most needs of the educators and students and cope with a large user load level. The main business requirements set by the customer were:

  • Wide functionalities. The resulting web-based eLearning platform was expected to enable full-fledged educational activities via various visualization, documentation, and online testing tools;
  • Ease of use. The eLearning video platform was expected to enable all users of different ages and abilities to work with the system's functionalities easily and intuitively;
  • High load. The ordered eLearning platform for students was required to handle numerous users (up to 3,000 people) concurrently (6K+rpm) – with stable performance, reduced errors, and fast response times;
  • Inclusion. As one of the best and most modern examples of eLearning platforms, the solution needed to be accessible to people with visual impairments and other similar issues;
  • Guaranteed content security. The eLearning platform for students was expected to effectively limit or complicate various illegal activities with digital content to protect intellectual property rights.

Apart from that, user interviews and market research conducted by our Business Analysts during the Discovery phase identified some extra major user requirements:

  • Availability. As one of the top-notch eLearning platform examples, the solution was expected to allow users to view video streams adapted to various networks: 3G, Wi-Fi, and LTE. Moreover, users needed to be able to connect via browsers, smartphones, and desktop apps (including different operating systems, device models, screen resolutions, etc.) to use new WebRTC technologies and enjoy a comfortable online education experience with no limits.
  • Content addition by tutors. The platform was supposed to allow tutors to edit and update the content of the training programs on their own, without the help of the IT team.
  • Favorite tools. The solution was expected to remember the frequently used tools and show them at the top of the list during the next session.

Ongoing market trends

The market of WebRTC solutions is growing worldwide. Due to a forced need that started in 2020, organizations are actively engineering their own solutions for comfortable user communication via audio and video conferences. Existing solutions do not always and do not fully cover the needs of a particular business; moreover, they can't be further customized or improved. On top of that, the education sector in the US has always been in demand, which allows various institutions to accumulate sufficient resources to invest in the production of their own educational solutions and compete with professional educational platforms (e.g., Udemy Business, LinkedIn Learning, Moodle, etc.). And the crucial advantage, in this context, is that each institution can tailor the learning process to make it as close to the real (offline) educational experience they provide as possible.


Architecture overview

In order to satisfy the customer's requirements for eLearning processes, our team needed to propose an effective, scalable, and robust architecture that would make it possible to provide communication services on various web and mobile platforms with different network configurations. The use of WebRTC technology enabled the introduction of enterprise-grade and proven architecture solutions.

Visual concept

In general, the server-side solution consists of four primary components:

  • Application servers
  • Signaling servers
  • STUN/TURN servers
  • Media servers

The following types of platforms are supported on the client side:

  • Web browsers
  • Windows apps
  • Mobile apps

Application servers

Application servers are primary app and website hosting servers that contain custom functionality entirely built around WebRTC technology.

Signaling servers

A WebRTC signaling server is a server that manages the connections between client devices. It doesn't transmit the media traffic itself but focuses on signaling. This includes enabling one user to find another in the network, establishing the connection itself, resetting the connection, if needed, and closing it down.

All peers send notifications to the server they are connected to, and the server forwards them. These notification requests can be executed over WebSockets or HTTP protocols, such as REST for sending and long polling for receiving. Both need extra effort to receive notification messages – WebSocket needs to be open and running and cannot be used on demand; long polling, in turn, needs to make multiple HTTP requests over time, which consumes bandwidth.

STUN/TURN servers

WebRTC peer communication can work in three different ways, depending on a peer's network configuration:

  • Option 1 – both peers are on the Internet, with static IPs, and with any firewall or NAT (network address translation) devices.

In this case, they can communicate directly without the involvement of any external systems.

Visual concept
  • Option 2 – peers are behind a NAT device (e.g., a Wi-Fi router).

In this case, our solution uses a protocol called STUN (Session Traversal Utilities for NAT) that allows clients to discover their public IP address and the type of NAT they are behind. This information is used to establish a media connection. In most cases, a STUN server is only used during the connection setup, and once this session is established, media will flow directly between the peer and the Video Gateway (WebRTC).

Visual concept
  • Option 3 – peers are behind a firewall.

There are very restrictive corporate networks (e.g., UDP traffic forbidden, only 443 TCP allowed, etc.) where, due to security reasons, all non-standard communication ways are blocked by corporate policies and standards. This requires clients to use a TURN (Traversal Using Relays around NAT) server to relay traffic. In this case, there is no direct communication between peers – all the traffic goes via the TURN server.

Visual concept

The Interactive Connectivity Establishment (ICE) protocol enables devices to identify which network option is currently in place, communicate its public IP, and connect to other devices.

WebRTC media servers

A WebRTC media server is a type of so-called multimedia middleware (located between the communicating peers), through which media traffic passes as it travels from source to destination. Media servers can:

  • process media streams and group communications, which means distributing media streams created by a peer between several receivers – i.e., Multi-Conference Unit, acting as an MCU;
  • convert several incoming streams to a single composite stream;
  • transcode by adapting codecs and formats between incompatible clients;
  • ensure permanent storage of media exchanged between peers, etc.

Client channels

Nowadays, WebRTC is fully supported in all up-to-date browsers and app platforms. This allows our app to seamlessly run in all modern browsers – Chrome, Firefox, and Microsoft Edge – with no need to install any extra software.

Visual concept

A special app for Windows is also available. It was crafted via Electron – a framework that provides a means to build cross-platform desktop apps using JavaScript and other web technologies. This approach makes it possible to reuse 90% of the code base for both Windows and web apps, as well as greatly simplifies Windows app development. A similar approach with Electron for Windows apps was applied by multiple big vendors in the domain of web communications – such as Skype, Microsoft Teams, Slack, WhatsApp, etc. – and became the de facto standard approach. On top of shared functions, Windows apps reveal extra possibilities – e.g., downloading materials offline, which is impossible in browsers.

In today's market, cross-platform capabilities are crucial, so our platform offers both Android and iOS mobile apps.

Overview of app types and features

The contemporary communications software market is extremely competitive and has multiple types of apps:

  • Messenger apps (WhatsApp, Telegram, etc.) enable direct texting and video calls within small groups;
  • Corporate solutions (Webex, Microsoft Teams, etc.) enable communication and, on top of that, some features like integration with corporate employee structures and call recording;
  • Zoom and similar solutions enable communication within large groups.

Unfortunately, the existing solutions are not fully adjusted for eLearning and have to be used together with other commercial products so that tutors can deliver effective learning experiences.

Audio and video conferencing with multiple participants

This key functionality is designed to allow tutors to give lectures to multiple students simultaneously. Both tutors and students can use any possible channel, but Microsoft App is recommended for tutors because it simplifies screen sharing flows and has some extra functionalities.

It is also possible to write in the chat in real-time to avoid distracting tutors with questions as they speak.

Visual concept

Noise suppression

It is not always possible to eliminate background noise, both for tutors and students. In order to tackle this issue, a number of noise suppression software solutions exist. Since keeping the lecturer's voice clear and comprehensible is crucial for the learning process, it was agreed to take one of the best vendor solutions that is already successfully used by various communications and streaming platforms and integrate it with our app.

Session recording

All sessions are recorded and stored in the cloud. Students can access recordings of their courses online at any time. Access to existing sessions is important to help students learn at their own pace and be able to revise complicated materials. Tutors can review such recordings and mark time codes to simplify navigation and add comments.

Screen sharing

The solution supports screen sharing for both tutors and students. In order to guarantee the best learning experience, multiple people can share their screens simultaneously - this allows a tutor to quickly help several students at once while continuing to share their own screen.

Visual concept


An online whiteboard is an interactive tool that enables tutors and students to collaborate remotely and in real-time via writing notes, drawing figures, and attaching images. Such whiteboards imitate physical ones and are widely used in virtual classrooms.

Just like a real-life whiteboard, an interactive whiteboard is an excellent tool to:

  • structure topics for discussion;
  • note key information;
  • show topic-related media.
Visual concept

Whiteboards on our platform additionally support displaying mathematical formulas in TeX notation, which is essential for technical classes.

Visual concept

Tutors can prepare such boards for their courses in advance and switch between them easily during the class. This greatly speeds up the eLearning process and keeps students focused all the time.

Automatic subtitles

The system supports the automatic creation of subtitles from speech in near real-time. This is vital for students with hearing impairments, allowing them to keep up with the course content like the rest of the group.

Currently, there are multiple vendors in the market offering Cloud APIs with voice recognition and caption generation. Since developing such functionality from scratch is very time-consuming, we agreed to select one of such platforms as a partner vendor and develop integration with their APIs.


The system contains an internal engine to build simple, multiple-choice, or more complicated tests. Some courses require passing the test with flying colors to access the next chapter. Depending on the test type, it will be either graded automatically or manually by a tutor. During manual grading, it is possible to add extra notes to make sure the student understands the grading logic. Tutors can always access the test results of their students, and they can also help those struggling with some questions.

In the case of stricter tests for certifications, the system can monitor students' activities and automatically invalidate the test if they try to access the Internet or minimize the screen, thus preventing cheating.

After finishing a course or a set of courses, the system automatically generates a completion certificate.


As one of the best available eLearning platform examples, the solution is expected to keep students engaged in the learning process. Adding some gamification and competition elements to it has increased student interaction on the platform:

  • Achievements and badges – virtual prizes awarded to students for their high grades on tests, completing courses on time, and other performance-related activities;
  • Activity points – each successful use of the platform allows a student to earn activity points and increase their score;
  • Leaderboards – the highest achieving students are displayed in the portal.

Notes and comments

Students can write notes related to course content, which are then saved on the server and available to view at any moment. Notes can be either private or visible to the tutor – this way, it is possible to ask questions and interact with the tutor even after the actual meeting has ended. Notes can also be linked to a recording's time codes in case some specific moments require additional explanations.


The eLearning video platform has been successfully designed and developed by Andersen's architects and development team. It is currently in the beta testing phase.

While crafting the custom eLearning solution for WebRTC, Andersen's experts introduced a range of useful and popular features. This has significantly enhanced the learning process for both tutors and students. Our solution not only provides a standard way for one-to-one and one-to-many communication but also adds great value to learning.

According to analytic reports and surveys conducted among both tutors and students, our eLearning platform for students has enabled higher engagement. Students spend more time on our platform taking tests, writing comments, and reviewing other content. This has improved their overall performance and satisfaction with the learning process in general. Tutors can now better prepare for their lessons and use more media options to make lectures more interactive and engaging.

  • 10% increase in students' scores
  • 15% less time taken to pass tests
  • 15% higher student engagement rates

Let's talk about your IT needs

What happens next?

An expert contacts you after having analyzed your requirements;

If needed, we sign an NDA to ensure the highest privacy level;

We submit a comprehensive project proposal with estimates, timelines, CVs, etc.

Customers who trust us


Let's talk about your IT needs