To handle spikes in workload demand on the company’s learning validation platform, Examity needed to increase the scalability, availability, and security of its Microsoft Azure cloud environment. As the Covid pandemic prompted both higher-education and professional customers to move more test-takers to remote testing, the need to achieve these requirements escalated. To take on the challenge, Examity decided Amazon Web Services (AWS) would be a better cloud provider. Examity then turned to Mission to lead the migration to AWS. Mission advised that it would be best for Examity to leverage the AWS Migration Acceleration Program (MAP) to efficiently accelerate the project and reduce costs. Mission used an infrastructure-as-code approach to the cloud design and integrated the environment with an existing continuous integration and development (CI/CD) pipeline. They also enabled Examity to accelerate the roll-out of development, test, staging, and production environments, while reducing software development lifecycles. The results were immediate and impressive, as the new AWS environment sped up database response times and served static images faster. At the same time, Examity increased its security posture (with end-to-end encryption on AWS EC2 servers that helps maintain SOC 2 compliance) and now benefits from high availability through improved recovery point and recovery time objectives (RPO and RTO). The partnership with Mission (compared to hiring 4-5 internal resources) also reduced the design, build, and implementation costs for Examity by 30%.
- Designed a migration plan internal resources could execute on their own.
- Implemented an infrastructure-as-code environment featuring application containers.
- Integrated application containers with existing CI/CD pipeline tool.
- Autogenerated SSL certificates for end-to-end encryption.
- Deployed Amazon CloudFront content delivery network.
“I have gone through partner selections multiple times with AWS and could see the experience Mission brings to the table for handling migrations like ours. We also considered other partners, but we went with Mission for their knowledge of how to build optimal AWS infrastructures. They also provided excellent references as proof of the quality work they’ve done for other companies.”
As the workload on Examity’s learning validation platform running on Microsoft Azure continued to grow, the impact was made even greater when Covid impacted the world, and universities across the globe began remote learning. “The number of test sessions we processed increased by about 500%,” says Paiman Nodoushani, the Examity CTO. “Our infrastructure compute resources were pushed to their limit, so we needed to improve our horizontal and vertical scalability to automatically access more and bigger server instances.”
In addition to ensuring the scalability of the infrastructure, Nodoushani wanted to strengthen the security posture of the environment to maintain compliance with privacy regulations (such as GDPR) that are enforcing stricter requirements. High availability was another concern. Examity needs to make sure it can quickly restore proctoring services in the event of an outage.
Another drawback impacting Examity was the lack of robust containerization technologies. “We needed to speed up our DevOps lifecycle,” Nodoushani explains. “In some cases, it would take days to set up new development environments and roll out platform enhancements. We wanted to accelerate the time it takes to deliver new services to our customers.”
Having migrated application workloads to Amazon Web Services (AWS) while working for previous companies, Nodoushani knew exactly where he wanted to migrate the Examity platform. “AWS offers an unmatched depth and breadth of infrastructure functionality on a global scale—with hooks that can integrate easily into DevOps pipelines,” says Nodoushani. “AWS also has a large pool of potential partners with strong technical skills, and they always innovate. It seems like every other day, there’s a new service that's available that we might want to use.”
AWS also scales automatically to handle growing databases and offers lower data storage costs.
“During the process of selecting a new cloud environment to migrate to, we also consulted with our customers,” Nodoushani adds. “They too appreciate the scalability, high availability, and security that AWS offers; they depend on our test proctoring services to be fully functional at all times.”
Another key decision for Nodoushani was the partner his internal team would need to collaborate with to build the AWS environment and prepare for the migration from Azure. “From a hiring standpoint, it would have been difficult or even impossible to find the expertise we needed, and the cost for those 4 or 5 resources would have been exorbitant,” says Nodoushani.
Examity then turned to its private equity partner, Great Hill Partners, for advice on who to work with that had experience with Azure to AWS migrations. Great Hill Partners suggested Mission. The Mission executive team then met with the Examity leadership team to review the migration requirements, and Nodoushani was immediately impressed.
Strategy and Solution
Mission initially scoped the size of the migration and determined Examity qualified for the AWS Migration Acceleration Program (MAP). MAP provides project funding and tools to reduce the cost and simplify the execution of migrations while also using a proven framework (Assess, Mobilize, Migrate and Modernize) to build strong AWS cloud foundations and to keep projects on time and within budget. For Examity, MAP covered 50% of the project costs.
To prepare the AWS environment for the migration, Mission designed an infrastructure for the Examity platform consisting primarily of Amazon Elastic Compute Cloud (EC2), Amazon Simple Storage Service (S3), Amazon Elastic Container Service (ECS), and Amazon Relational Database Service (RDS). Key tools for the Mission team in building the solution included the Terraform open-source infrastructure-as-code software tool.
The containers (built for platform billing and proctoring processes) cache service and customer data into S3 buckets. The infrastructure-as-code approach allows Examity to quickly roll out new environments while the containers speed up the DevOps process. Mission also programmed the ECS instance to run Azure DevOps so the internal Examity team can continue to rely on the CI/CD (continuous integration and deployment) tool they are accustomed to.
Terraform also played a key role as Mission needed to create new Secure Sockets Layer (SSL) certificates and upload them into AWS Certificate Manager (ACM) as well as S3. This gives the EC2 instances and AWS Application Load Balancing end-to-end encryption. It was necessary because ACM does not allow for exporting a pre-generated certificate. Undeterred by this obstacle, Mission solved the challenge by using Terraform to autogenerate SSL certificates. This enabled the level of security Examity required.
Outcome and Results
- Accelerates roll-out of development, test, staging and production environments.
- Reduces software development lifecycles.
- Speeds up database response times.
- Serves up static images faster due to Amazon CloudFront.
- Enables end-to-end server and load balancer encryption.
- Increases security postures to help maintain SOC 2 compliance.
- Improves high availability by reducing RPO and RTO.
From the start of the project, Nodoushani had planned for the migration cutover to take place between college semesters when test proctoring needs are low. “With Mission doing such a good job in setting up the AWS environment, the migration cutover took us just six hours to complete—without any hitches,” Nodoushani emphasizes. “Afterwards, none of our customers experienced performance issues with our platform.”
The DevOps team at Examity also benefits from the AWS infrastructure designed and deployed by Mission. The infrastructure-as-code environment allows system administrators to quickly spin up development, test, staging and production servers. New application updates can now be rolled out in just a few minutes, and with the CI/CD pipeline flowing more smoothly, Examity customers benefit from accelerated enhancements.
Customers are also seeing faster response times from the Examity platform. This is largely due to Amazon CloudFront, a content delivery network implemented by Mission that speeds up the rendering of static images. Other benefits Nodoushani appreciates are enhanced business continuity and a stronger security posture.
“Mission designed high availability into our server and storage infrastructure that have reduced our RPO and RTO (recovery point and recovery time objectives), so we can recover quickly should a compute resource go down. Our production environment is completely locked down with revised roles and responsibilities. A limited number of users can log into our production environments, and we’ve added better security monitoring.”
The next project Nodoushani plans to collaborate with Mission on is the migration of a single-tenant Examity platform that currently runs in an on-premises data center. “We value how Mission listens to our needs and conducts weekly meetings to keep us informed on their progress when handling projects,” says Nodoushani. “With their focus on making sure our AWS infrastructure runs optimally—for performance, scalability, security, availability and cost—we can focus more of our time on ensuring our platform continues to meet customer needs.”
- Amazon Elastic Compute Cloud (EC2)
- Amazon Simple Storage Service (S3)
- Amazon Elastic Block Store (EBS)
- Amazon Relational Database Service (RDS)
- Amazon Elastic Container Service (ECS)
- AWS Application Load Balancing
- AWS Auto Scaling Groups
- AWS Certificate Manager (ACM)
- AWS Security Groups
- Amazon CloudFront
- AWS Directory Service
- Amazon Virtual Private Cloud (VPC)
- AWS Site-to-Site VPN
- AWS Client VPN
- Amazon Route 53
- AWS Identity and Access Management (IAM)
- AWS Backup
- AWS CloudTrail
- AWS Systems Manager
- AWS Secrets Manager
- AWS Key Management Service (KMS)
- Amazon ElastiCache for Redis
- Let’s Encrypt
- Microsoft Azure DevOps
- Microsoft Windows
- Microsoft SQL