PaaS Platform for Document Processing

Convert, edit and process documents in cloud, by making simple REST API calls.

Aspose Pty Ltd is the company that leads brands trusted by over 17,500 customers in more than 114 countries. More than 75% of Fortune 100 companies trust and use Aspose products.

Aspose’s core focus is to offer the most complete and powerful set of file management APIs on the market.

Client: Aspose Pty Ltd, Australia

Industry: Document Processing, Cloud Document Processing

Services: PaaS Platform for Cloud Document Processing, .NET, Angular, Amazon

Project description

The PaaS Platform offers RESTful APIs to Create, Edit & Convert over 100 File Formats from any Language, on any Platform.

The customer may download the SDK specific to their language and start making REST API calls to Aspose API to upload/download/convert/edit/process documents in the cloud. It may also not use the SDK but simply make calls to the API.

The project takes advantages of resources from Amazon to offer scalability and high availability for processing documents in the cloud.

Project is based on a infrastructure formed of a bunch of microservices, each of them being deployed to a Docker image, which then are deployed on a cluster. This cluster works as a container orchestration tool, scaling services up and down based on the usage.

Our contribution

We contributed with a team formed of 4-5 developers and lead the development of the platform from its inception to what it is today.

We have initially developed the platform as a monolith and launched it. After it gained traction from customers, we separated parts of the platform into pieces so multiple teams can work on different parts of the project.

We developed all services needed by the platform (storage service, apps services, usage service, billing services, pricing plans and purchase service, etc.).

Finally, we felt obligated to separated the monolith platform into a group of microservices, and then we have setup Amazon ECS as an orchestration tool for the microservices containers.

Today, we continue to lead the whole platform and also develop several application parts for it. Our current team goal is to build Kubernetes Operators and Kubernetes Charts for each micro-service/application in the platform’s infrastructure, since it was decided to switch our production environment to Kubernetes.