Otoqi (previously Parkopoly) is a French start-up founded in 2016 whose main goal is to simplify the lives of drivers. Their platform allows car owners to have their vehicle delivered to any location within the platform’s service area. A car delivery mission and a freelance driver come to take the car to any desired location.
The Client wanted a cost effective and secure platform for development, testing, and production. The Client doesn't have any SysOps in their team, so the solution had to be resilient to any outages and require close to zero operational efforts. At the same time, the infrastructure could not limit the fast pace of the project.
Because of strict security requirements we had to revise the current infrastructure and reinforce it. The client's applications use some services managed by third-party companies, like MongoDB and ElasticCloud. From a security perspective, we implemented VPC peering with third-party providers to move sensitive traffic via the AWS backbone. All test environments are placed as separated VPCs. Additionally, we migrated their scheduled job to AWS Batch, which reduced the cost for it. For security reasons, we implemented a strict rule to use MFA for a wide range of services.
The Client decided to use AWS as the main platform for its solutions. The extensive collection of services that AWS offers gives flexibility and room for growth.
Using a wide range of AWS services reduces operational overhead for the Client. The ability to grow quickly and in a cost-effective manner was one of the most important goals for the client. The Development team widely uses AWS services for development. The code is stored in CodeCommit, while CodeBuild, CodePipeline, and CodeDeploy are used as CI/CD. AWS ElasticBeanstalk was chosen as a platform for application. All of these factors led to a simple and straightforward development process.
As the client's application continues to develop, our goal is to have it adapted to AWS services by choosing the most cost-effective size of instances, setting up environments, and selecting and recommending possible architecture according to the application’s requirements. It still uses some resources in Azure and is not ready to migrate them. Most of the client’s applications are monolith. They understand that they should consider future modifications for better performance and reliability.