State-of-the-art microservice architecture – development of the eSky booking system
For eSky, the leading travel company in Poland, we are implementing the next project in the field of software development. Our .NET programmers are developing a booking management system based on microservices and the Google Cloud Platform.
The need
eSky delivers a flight booking system that consists of a variety of applications. The system currently has a monolithic architecture that makes it impossible to implement self-service tools for users. The main goal of the development is to improve the user experience on the end-user side and to extend the functionality of the system so bookers can carry out as many online activities as possible without contacting customer service. This would improve post-sales activities such as adding extra services and managing orders.
The challenges
- The different parts of the system are closely connected – the existing monolithic architecture does not allow for self-service capabilities
- Transfer data from an SQL database to a Mongo DB database system
- High entry threshold – because of the many microservices involved and the scope of the work, eSky looks for experienced programmers and senior-level specialists for its projects, who are not easily accessible on the market
Project tasks
The developers and Inetum testers on the customer teams develop the system based on microservices. Our specialists have suggested and helped implement the Domain-Driven-Design (DDD) approach, which facilitates work. The aim of their effort is to unburden the monolithic legacy system and create a contemporary frontend with the Google Cloud Platform and Angular 11.
One of the architectural solutions suggested by our experts made improvements in the purchasing process possible: the booking user will be able to see the details of the order immediately after the purchase (previously, this information was only available later).
Moreover, the developers run the necessary unit tests and integration tests of the developed solutions in .NET, and the testers perform end-to-end tests using proven tools such as TypeScript and Cypress.io.
Advantages
- The developers joined the client’s teams to provide support at the required competency level
- Solutions proposed by our experts enabled quick UX improvement
- Experts share their knowledge and best practices, e.g., in the area of Domain-Driven Design. The customer is currently open to new standards and looks forward to support in standardizing processes and introducing good Agile practices