About the project

Class 4 Kids is the market leader platform for extracurricular activities and classes for children in the United Kingdom. It offers teachers and coaches a simple way to create and manage payments, classes, students and also allows parents to find and book classes for their children from the comfort of their home. The C4K Team have already created an amazing solution built on Legacy systems, which supports tens of thousands of parents and coaches every day in the country. Focusing towards the growth of their platform, they decided to migrate some of their services into the AWS Serverless architecture, which would facilitate the addition of new features to provide an even more efficient service to their clients. For this migration, Westpoint architected and developed a notification system which would homogeneously integrate with their running system, as the first microservice to be migrated into the cloud.

Class for Kids logo
The project scope

The service requested to be migrated into AWS Serverless was the C4K notification service, which would reduce the processing power and network usage on their servers, due to the fact that hundreds of thousands email and SMS notifications are sent each day, notifying coaches, clubs and parents for updates such as class confirmations, reminders and payment confirmations. This initial delivery was the very first Serverless model which would be built on in the coming months and years.

How we designed the solution

To create the desired microservice, Westpoint developed a solution which integrates with both their legacy systems and any other AWS microservice to come, creating a smooth migration for their applications, so users wouldn't be affected or services would go down. Westpoint designed and developed the C4K solution using a variety of AWS microservices, such as: Amazon API Gateway, to receive incoming notification requests; Amazon Kinesis streams as the message bus to send each API call to their desired destination; AWS Lambda to create multiple functions that would process and retrieve notification templates; Amazon DynamoDB to store notification templates; and Amazon Pinpoint as the email and SMS notification sender. Amazon Kinesis Data Firehose, AWS Glue and Amazon S3 were also used to crawl, store and send daily logs containing the number of notifications sent, bounce rate and send success rate.

Technologies we used on this project

To build this project, Westpoint selected some of the best technologies available in the market. They are: AWS as the cloud environment, in which microservices such as AWS Lambda, Amazon Kinesis, Amazon Pinpoint, Amazon S3 and Amazon DynamoDB were used. JavaScript was used as the programming language for the AWS CDK components, and Python as the programming language for the Lambda functions.

Amazon Web Services logoPython logoJavaScript logo
×

Free Consultancy

Get in touch with us and let's arrange a free consultation!