Setting the foundation for future cloud work

Our EdTech leader client provides LMS solutions for 100 million learners each day in 90+ countries.

Teaming up with them for the third time, we enabled cloud automation improvements to level up product performance and support their development teams.

Cloud

What We Did

Cloud Microservices, DevOps, AWS Infrastructure, Infrastructure as Code (IaC), DevOps Automation, Cloud Automation

Tech Stack

Python, AWS, Kubernetes, Go, Terraform, Packer

Opportunity

Our client is the world’s largest Learning Management System (LMS) provider. This EdTech company provides LMS solutions for students, parents, teachers, and schools in 90+ countries. 100 million learners rely on our client’s tools to collaborate in and out of the classroom.

We previously teamed up with them to speed up development on their cloud based LMS product and to streamline their DevOps practices. Looking to the future, our client wanted to build a solid foundation in Amazon Web Services (AWS) for their suite of cloud-based microservices. Having gone through many acquisitions, their tool base was fragmented, leading to product and team inconsistencies. This made it difficult for developers to move between products to accomplish work efficiently. 

Our client hired SEP to improve their cloud automation, empowering their development teams with the right tools and enhancing performance of their products.

Solution

To create this foundation, we built reusable infrastructure for their microservices. The infrastructure has two aspects: 

  • Resources to run their apps (for example, automation to setup and run a Kubernetes cluster)
  • Tooling to support their services (things like shared logging, static code analysis, etc). 

The infrastructure we built with our client automates a Continuous Integration (CI) and quality check pipeline. When developers commit code, the pipeline automatically runs, giving them almost instantaneous feedback on build problems, failed tests and code metrics. Our client’s developers loved the Packer pipeline we made to automate a portion of the AWS build process.

Using microservices makes a system more complicated, requiring more experts to keep the system running. However, it allows developers to specialize, instead of needing to know everything about the whole system. Microservices also make it easier for our client to integrate newly acquired products in the future. The performance and scalability make this the right path for them as they continue to serve more and more education institutions.

Results

Previously, our client’s product was a considered monolith and only had the capability to run on an on-premises or hosted server. Switching over to the cloud-based microservices model allows them to scale up performance only where needed, saving money. It also yields a better uptime percentage – if one part of the product isn’t working, our client can repair that specific area without impacting the whole product. 

This effort was a long term play, providing a big return to our client over the next several years. We helped them build this foundation for their cloud microservices and empower product development teams with powerful tools that accelerate development across the company’s suite of products.

Recent Case Studies

Automating secure transactions

We automated a tedious manual process, allowing our client to retain a critical client and scale to many others.
Read More

Setting the foundation for future cloud work

Teaming up with our EdTech client, we improved cloud automation to level up development efforts and app performance.
Read More

Preventing rework in the field

We built an embedded solution to transmit telemetry data from one ag machine's display to another via a cellular network in near-real time.
Read More

Let’s develop something special.

Reach out today to talk about how we can work together to shake up your industry.