Reflections on learning AWS
I recently passed my AWS Solutions Architect Associate certification, and through the process learnt a whole load about the AWS platform. I am thoroughly impressed by the breadth of services that are offered on the platform, and here are my 3 key takeaways on what I love the most about the AWS cloud:
1. Power at your fingertips
Want to run a server in the cloud immediately? Want to host a highly available website for essentially no cost? Want to create an app that can cost less than a few dollars a month, and can possibly scale up to millions of users in a matter of minutes? Those are some of the promises that the cloud can deliver reliably upon, using the AWS backbone and infrastructure that is powering internet giants like Amazon, Netflix and Airbnb, to also scale up to meet your operational demands.
2. Provides a layer of abstraction
What I mean by this is that using the cloud simplifies a lot of tasks that were previously tedious and difficult to master, making it less of a hassle to deploy and experiment with new products or technologies. Instead of using Docker to build containerised apps, you can use AWS Lambda that is a Function-as-a-service that allows you to deploy your functions without worrying about the underlying hardware, OS or environment. Instead of purchasing networking equipment to connect your backend servers to serve your application, now all the work can be done with a few clicks using Elastic Beanstalk, which uses a Virtual Private Cloud, Application Load Balancers, and provisions some compute in EC2 automatically to deploy your application seamlessly. Even Machine learning can be made easier with Amazon Sagemaker, which simplifies the data collection, cleaning, training and deployment of machine learning models, which also brings me to my last point.
3. Unlocks the power of Machine Learning
Machine learning (ML) on the cloud is a match made in heaven. One way to look at it is that ML requires data pipelines that are capable of ingesting huge flows of data required to train and finetune models, it requires high performance compute that can handle the workload, and also requires scalable storage and database solutions to store all the data that has yet to be processed. All these requirements play to the strengths of the cloud, where it is easy to provision all these resources on-demand and pay-per-use without the upfront capital costs traditionally involved.
Yet another benefit of using ML in the cloud is that as enterprises shift their operations to the cloud, it will become increasingly easier for them to integrate AI solutions into their company (think of a small cafe using an automated chatbot to take orders online, or small law firm using AI to quickly process large physical documents). It will only become easier for traditional “non-IT" companies to deploy AI solutions to aid with their work, which will only become easier as more and more companies and enterprises adopt the cloud.
This is also why I have continued on to work towards taking the Machine learning specialty certification by AWS, as I strongly believe that AI/ML will only become more integrated into our daily experience, and the cloud will play a big part in making that happen!