Vicodo is a B2B communications platform from Germany for the exchange of experiences and sales activities.
It combines three main tools: video calls, appointment booking and live chats. Vicodo supports a wide range of industries: from insurance and banks to car manufacturers, consultants, and healthcare.
Vicodo approached us with a request to create new development, test, and production environments for the development of their software on AWS. Furthermore, the Vicodo platform had a video conferencing tool installed on another system. We decided to set up two systems in a new hybrid cloud environment.
We conducted an in-depth analysis of the environment and took steps to create a plan. Due to the sheer size of the project, we divided it into two parts. The first part was about data migration, while the other was dedicated to designing test and production environments.
At Vicodo, we analyzed the requirements, and then designed and implemented the infrastructure.
Currently, we are maintaining and expanding this environment and providing the client with consultancy services. We described the entire designed infrastructure in Terraform, and for the execution of the project, we used EC2 instances with ASG (Auto Scaling Group).
In simple terms, this means that instances may run automatically depending on the traffic they receive, not disrupting the availability of the service. We hosted FrontEnd on object storage (S3) via CloudFront.
We created a hybrid-cloud solution and installed the video conferencing elements (Signaling, SFU, Media Gateways) on the OVH platform.
We interconnected both platforms using AWS VPN service and software router with VPN Site 2 service based on IPsec protocol.
Using Proxmox and virtual machines with Docker installed, we were able to support video conferencing and produce conference transcripts.
WE USED THE SERVICES:
Can Terraform help prevent disorder?
We created new production and test environments from scratch. We made sure that these environments were identical by describing the infrastructure using code (Infrastructure as Code).
Thanks to this, we will be able to create new environments from scratch, should the need arise. An infrastructure or a specific environment described by means of IaC is much easier to manage, offers the possibility of auto-documentation, and thus makes keeping the infrastructure in order much less problematic.
As part of our work on optimizing the process of deploying new functionalities, we prepared a blue/green deployment process so that the deployment of new versions of the application does not cause downtime in providing services to Vicodo’s customers.
How did we help Vicodo?
Thanks to the designed environments and leveraging the benefits of cloud infrastructure, Vicodo does not have to worry about the availability of its systems. The current environment flexibly adjusts its performance as needed and allows for rapid deployment of new software versions. Vicodo developers have also gained the ability to work simultaneously in multiple repeatable environments, which has greatly simplified their work and accelerated the development of the application itself.