Client
Belitsoft migrated to Azure the IT infrastructure (around one of their core business applications including this application itself) of the global creative technology company Technicolor (17,000 employees) to provide steady web access to its staff employees in the USA, the UK, Canada, Australia, and other countries.
Challenge
Technicolor's IT infrastructure initially composed of a single server for European employees.
Over the years, Technicolor evolved from a local European company to an international enterprise. The company had been growing and opening offices in different locations, including Asia.
Accordingly, the current requirements of the global enterprise grew beyond the legacy IT infrastructure, which resulted in slowing business operations performance.
The core web app was slow and sometimes didn't work.
Additionally, the speed also slowed down owing to the VPN usage. Waiving of the VPN, however, contradicted the client's security requirements.
As a result, employees struggled to access the key web application they needed for work.
This led to 500 hours of downtime per month just waiting for the app to load.
Solution
Here is a step-by-step solution offered to the client for resolving the pressing business issues:
- Selecting between On-premise and Cloud. When the access and performance issues impeded business evolution and prosperity started, our development team suggested solving them urgently. The options were adding new physical servers or migrating to Cloud. Having evaluated the expenses and risks, the client opted for Azure cloud migration.
- Carrying out a Proof of Concept (POC). Our development team did a POC to test how the application would function in the Cloud. It included validating a suitable cloud migration method and evaluating enterprise cloud adoption (the possibility of scaling up and down cloud resources based on the enterprise workflows).
- Assessment of expenses and scope of work. We evaluated the scope of work and cost of migration to the Cloud and offered the Client ways to decrease these expenses significantly by modernizing the core business app.
- Application modernization to optimize it for Cloud. For that, we applied active geo-replication and adapted the database structure to meet Azure requirements.
- Migration to Azure. Our team migrated the SQL Database of the core business app, enhanced its security by integrating with the Okta-based solution, and finally launched the core business app with the entire IT infrastructure of the enterprise in Azure. Further optimization and reduction of expenses are in the process.
Applied Technologies and Tools
Development tools: Visual Studio, Visual Studio Code, SSMS, DataGrip, Data Migration Assistant for migrating the SQL database.
Azure architecture components: Azure Front Door, Azure App Service, Virtual Machines, Azure Functions, Azure SQL Database, Application Insights, Azure VPN, Network Interfaces, Network Security Groups, Private Endpoints, Storage Accounts.
Process
To migrate to the Cloud without risks and to resolve all the pressing business issues, Belitsoft's web development team took the following steps:
Step 1. To Cloud or Not to Cloud
The company considered either migrating to the Cloud or creating additional physical servers in other countries.
Thus, the Client was perfectly aware of the high expenses and difficulties of adding extra physical servers, primarily in India - a country with tough security problems and natural disasters.
After considering expenses and risks, the client migrated to the Cloud.
The choice of the provider was obvious for the enterprise. As they used Microsoft infrastructure (Microsoft Teams, etc.), it was decided to migrate to Azure.
Step 2. Doing a Proof of Concept
Before embarking on the migration process, our development team realized a Proof of Concept (POC) to check the viability of a migration technique, the potential troubles that could appear during the migration, and the ways to mitigate any issues and risks.
At this stage, we evaluated which components of the infrastructure could be used, what are the ways of transferring them to the cloud, how they will function in the cloud, how they will interact with on-premise apps and other details that may affect the smooth migration and further app performance.
Step 3. Assessment of expenses and scope of work
The Client had its core web application as is, not specifically modernized for migration. The Cloud service costs might have increased significantly in this case.
- Belitsoft experts were to evaluate the cost of migration of the app without its modernization.
- We also suggested possible ways of app modernization to decrease expenses.
Step 4. App modernization to optimize it for Cloud
Having defined what peculiarities of the core business app could skyrocket the subscription fee, we fixed these nuances and optimized the app.
At this step, Belitsoft:
- Adapted the database structure to comply with Azure requirements. It included transferring all requests from several databases to a single one, database normalization (structuring a database to reduce data redundancy and improve data integrity), and some other steps.
- Active geo-replication in Azure, which is the creation of a secondary database synchronized with a primary database. It allows us to decrease the load for the main server of the database in the period of peak load. It also enables quick recovery of the database in case of any local disaster.
Step 5. Migration to Azure
The business app had integrations with other in-house apps.
In this case, migrating only a core app into the cloud without the entire infrastructure can stop business.
To avoid this issue, Belitsoft's developers divided the entire migration process into smaller steps:
- SQL Database Migration
- Enhancement of security
- Launching apps in Azure
- Further optimization and reduction of expenses
Step 5.1. SQL Database Migration
Here is what our .NET development team made:
- analyzed the ways of SQL DB migration using either Data Migration Assistant, or Manual Transfer, or GeoReplication, or others;
- created a Proof Of Concept of the best way to migrate the DB;
- Azure SQL DB went live with the ability to work with on-premise apps (that were a part of the IT infrastructure but didn't migrate together with the core business app).
Step 5.2. Enhancement of security
The major concern of the Client and our primary task was ensuring the ultimate security of the company's data after migration to the Cloud.
So together with transferring the data to Azure, it was necessary to set up a new user access system instead of the on-premise Active Directory they initially used.
We fulfilled the task through integration with the identity platform Okta, which enabled multifactor authentication and an SSO (Single Sign-On) solution.
To set up interaction between the core business app and OKTA, we used several approaches (protocols), like Open Authorization (OAuth) and Security Assertion Markup Language (SAML).
Okta became a single place to monitor, manage, and secure employees' access and permissions for the core business app through Cloud.
We also synchronized Azure VPN with on-premise VPN to enable smooth work of the entire infrastructure.
Step 5.3 Launching apps in Azure
In short, our development team realized:
- listed all the apps and integrations and determined in what sequence to migrate them;
- tuned the interaction between on-premise components and Azure;
- migrated the core app;
- migrated collateral apps and integrations to the cloud;
- ran QA and software testing to ensure that everything goes fine;
- delivered the ready and fully functioning solution to the Client.
Step 5.4. Further optimization and reduction of expenses
Now with migrating to the Cloud accomplished, the Client wants to continue improving the app performance, reducing expenses, and expanding the capabilities of Azure services, which requires further app modernization.
We are planning to reduce the client's costs by using Azure components. For example, switching from RabbitMQ to Azure Service Base.
Regarding to faster performance, we are going to tune the active geo-replication further to minimize the ping time for each region.
Throughout the entire migration process, Belitsoft collaborated with the client's Cloud Operation Team, Networking Team, Microsoft Azure Team, Security Team, and others.
Results
Thanks to involving experienced .NET experts in the project, Belitsoft delivered a Resource Management System with a highly scalable architecture and much faster performance while maintaining a high level of security.
Our retention of core specialists in the development team helped us deliver the project ahead of schedule, exceeding expectations.
Besides, our development team scaled up and down on demand. We were also proactive in recommending any options that could save the Client's budget whenever it was possible.
Belitsoft and Technicolor continue the partnership to further enhance the Resource Management software functionality while keeping its fast and reliable performance.
Ron Edwards, Global Head of Commercial Development
L&D at Technicolor Corporation (USA/UK)
Related cases
Our Clients' Feedback
They use their knowledge and skills to program the product, and then completed a series of quality assurance tests. We were working in an agile way with them. Belitsoft performed very well throughout our project. We are definitely looking at Belitsoft as a long-term partner.
Service Delivery Director at Crimson (United Kingdom)
I highly recommend Belitsoft for website design and development. We were up against a tight deadline to launch the project. The work was delivered on time and within budget! I will continue working with Belitsoft as a valued partner for our web development!
Program Administrator at UC Berkeley (United States)
We have worked with Belitsoft team over the past few years on projects involving much customized programming work. They are knowledgeable and are able to complete tasks on schedule, meeting our technical requirements. We would recommend them to anyone who is in need of custom programming work.
Main Partner at Hathway Tech (United States)
Belitsoft company is able to make changes instantly. One of our internal engineers has commented about how clean their code is. Belitsoft seems to know what they're doing, which I appreciate.
Co-Founder at HOWCAST MEDIA (United States)
It was a great pleasure working with Belitsoft software development company. New requirements and adjustments were implemented fast and precisely. We can recommend Belitsoft and are looking forward to start a follow-up project.
Head of Division at Fraunhofer FIT (Germany)
Belitsoft company has been able to provide senior developers with the skills to support back end, native mobile and web applications. We continue today to augment our existing staff with great developers from Belitsoft.
CEO at Apollo Matrix (United States)
Belitsoft company delivered dedicated development team for our products, and technical specialists for our clients' custom development needs. We highly recommend to use this company if you want the same benefits.
Managing Director at Key2Know A/S in 2012 (Denmark)
We approached BelITsoft with a concept, and they were able to convert it into a multi-platform software solution. Their team members are skilled, agile and attached to their work, all of which paid dividends as our software grew in complexity.
COO at Regenerative Medicine LLC (United States)
Having worked with Belitsoft as a service provider, I must say that I'm very pleased with the company's policy. Belitsoft guarantees first-class service through efficient management, great expertise, and a systematic approach to business. I would strongly recommend Belitsoft's services to anyone wanting to get the right IT products in the right place at the right time.
CEO at Moblers (Israel)
If you are looking for a true partnership Belitsoft company might be the best choice for you. They have proven to be most reliable, polite and professional. The team managed to adapt to changing requirements and to provide me with best solutions. I strongly recommend Belisoft.
Director at ShowCast Limited (Germany)
I expected and demanded a lot of you at Belitsoft company, but you exceeded my expectations. You acted pro-actively, challenged me at the right moments. Thanks!"
CEO at Ticken B.V. (Netherlands)
We have been working for over 10 years and they have become our long-term technology partner. Any software development, programming, or design needs we have had, Belitsoft company has always been able to handle this for us.
СEO at ElearningForce International (United States/Denmark)
13-103 Elektoralnaya st,
00-137 Warsaw, Poland
Belitsoft has been the driving force behind several of our software development projects within the last few years. This company demonstrates high professionalism in their work approach. They have continuously proved to be ready to go the extra mile. We are very happy with Belitsoft, and in a position to strongly recommend them for software development and support as a most reliable and fully transparent partner focused on long term business relationships.
Global Head of Commercial Development L&D at Technicolor