Most brands now look to give people an experience. That could be in the form of a service or a product. But, no matter what, the customer should walk away with a pleasant experience. They must remember the next time they want to buy a product; it must be from the same brand. In the same way, our client believes in promoting communities and societies for a common group.
One such product that our client has developed helps students manage their student life with details such as events, ID proof, and discounts – all at their fingertips. This product has now grown to over 1 million members and offers more features and benefits to its audiences.
But that is where the problem lies!
Our client was left with the problem of managing so many members. Also, multiple services they offered were deployed on a server – the maintenance of which became difficult. Again, hosting these services came with high costs, which reduced the profit margin.
So, what was the challenge?
We were challenged with understanding the current technology and optimising the costs incurred for the management of services by the client.
Let’s take a look at our client first!
Our client is an agency that believes in creating digital products and services that connect people with common interests to one another. They bring together the best talents to build engaging communities with common interests. One of their best services in the market is this product – a platform where college students can get the best money advice, offers, discounts, and more.
The platform is now facing problems due to an overload of servers!
Once we understood the existing services and the infrastructure used, we devised a solution plan to re-platform the current services offered on AWS serverless components.
Why did we look into AWS serverless components for them?
AWS provides technology for managing data, running code and integrating apps without managing servers. The serverless technology component has features such as automatic scaling and a pay-for-use billing model that helps optimise costs and improve agility.
Serverless applications must start with AWS Lambda, and it helps:
- Eliminate operational overheads so that teams can launch their product in the market faster
- A pay-for-value billing model that optimises automatically
- Automatically scale technology from zero to peak demands and adapt to customer requirements as fast as possible
- Build better applications faster and easier
So, how did we solve the problem?
The journey starts with a solution involved in strategic steps that solution architects orchestrate. To start with, a comprehensive analysis of existing codes is taken first. This includes a careful examination of the present architecture. Once the assessment was complete, the next phase of porting and platforming was started to modify the codes.
The back-end engineers were pivotal in the entire transformation process by leveraging their expertise and migrating the code to AWS Lambda Serverless components. This move redefined the architecture to enable the decoupling of functionalities into modular units that operate independently within the AWS serverless ecosystem.
Central to this was the integration of AWS Lambda, which functions as the entire brain of the operation. But this plays a dual role:
- Executing the business logic
- Interacting with AWS API gateways
This operation helps streamline communications between serverless components and the external environment, providing a seamless user experience.
The solution used AWS DevOps tools such as AWS Code Pipeline, CodeDeploy, and CodeBuild during the deployment. This helped speed up the launching of new products and features, minimising launch to the market timeline and bolstering the application of competitive edge.
One of the biggest advantages of the new architecture is the dynamic resource allocation. Unlike traditional server models with fixed resource allocation, back-end computation was executed based on the requirement. This strategy led to substantial cost savings, as charges were based on actual usage rather than the lease of the entire server.
What technology stacks did we use?
The technology stacks we used for this project are AWS Lambda, AWS API Gateway, Python, Boto3, AWS Code pipeline, Code Build and Code Deploy, and AWS CloudWatch logs.
What did our solution achieve?
Transforming the existing server-based components to AWS Serverless components saw major results. As the model changed from conventional payments to actual usage, there was a notable change in the costs involved. The change in costs aligned better with real-time resource consumption, resulting in a better cost-effective utilisation of the cloud.
One of the biggest outcomes our solution saw was a reduction of over 50% in AWS expenses but no reduction in functionality. This highlights the efficiency of the serverless approach and its positive impact on the bottom line.
Another benefit of AWS serverless components is the individual modification and deployment of specific components. This heightened the level of flexibility of the entire process. Each service can now be independent of the other, meaning responses to user demands and updates are faster. This takes a more adaptive approach that is required in the evolving market.
Adopting AWS Serverless components does provide tangible outcomes. This shift can be quite advantageous, especially with the real-time usage aspect. So, even though the components can be quite expensive, using them with a well-executed plan can, in the end, bring better returns.
On the other hand, the modular nature of the components is perfect for empowering businesses with the flexibility required for modifying and deploying specific aspects requirements of users.
So, our partnership was the perfect combination of a dream meant to help millions and the backing to provide a seamless application.
Want to gain in-depth insights into reducing your cloud expenses and improving the overall services you provide?
Connect with Arrk Group today!