Note from Editor: Readers can explore the latest trends in technical skills in demand for AWS Cloud Architects using Cloud Roster™, the data-driven job role matrix updated weekly.
How to become an AWS Cloud Architect? Here are areas you’ll need to work on.
As AWS grows ever stronger and more attractive, more and more companies are migrating their deployments. But there’s a large difference between designing for a physical environment versus a cloud environment. Architecturing for AWS requires a good understanding of AWS concepts and services. If you’ve got that knowledge, all kinds of AWS architect jobs will open up for you.
So: how to become an AWS Cloud Architect?
Transition into that role from admin has to be not so hard. Here are areas you’ll need to work on. If you’re already an AWS engineer, it is really not difficult to transition into an AWS Architect. All you need to do is focus on some very specific areas and work on them. This blog post will point you towards that goal.
The AWS Cloud Architect: key principles
An AWS architect must have a sound understanding of cloud computing principles like high availability, disaster recovery, scalability, and security. AWS Architects should also understand more general application and business requirements so you can better identify recovery time objectives (RTO) and recovery point objectives (RPO). An AWS architect should always design his architecture for failure by thinking through possible fail points and asking himself “what if a piece in my architecture failed an hour from now?
Will that failure affect functionality or cause a service outage?” If the answer to either question is “yes,” how can you avoid it?
Figuring out answers for these questions isn’t enough. You should also ask yourself what would happen if AWS itself has some kind of outage (it does happen)? Is your application ready to deal which an availability zone or regional failure? Do you have a disaster recovery plan ready? Identifying a correct disaster recovery plan for your architecture depends on your application’s RTO and RPO.
You’ll also need to understand your application’s scalability requirement. If you are designing architecture for an e-commerce website, you need to focus a lot upon scalability as the traffic on an e-commerce website can increase multiple folds from one hour to the next. This is where autoscaling and load balancing might make sense. If, on the other hand, you are hosting an internal ERP system on the cloud, it is fairly easy to predict the number of concurrent users and design accordingly.
Security is critical. Besides the AWS shared security responsibility model, an AWS Architect should understand a business’ security requirements and recommend appropriate compliance. If you are dealing with a financial institution or hold user credit card information, you’ll need to properly apply Payment Card Industry Data Security Standard (PCI-DSS) requirements within an architecture satisfying these compliance requirements and security assessment procedures. While working with healthcare organizations, you need to understand the Health Insurance Portability and Accountability Act (HIPAA) – or any local equivalent. General application security understanding that can help you close security loopholes at every level of your architecture can also be critical.
Hands-on AWS Experience
Continuing to explore the theme of how to become an AWS architect, we need to say that before transitioning into an AWS architect role, spending time getting hands-on experience on multiple AWS services while working as an AWS engineer can also help you to understand the complexity involved along with possible crucial workarounds. For example, AWS RDS SQL Server does not support timezone change: it’s always in UTC. But your customer might need his data in EST. So it is important for you to know how to satisfy the demand. (you can, by the way, either handle this at the application layer or set up a stand-alone SQL Server on an Amazon EC2 Instance).
Hands-on experience also helps you to understand the capability of each AWS service and how much it can support. While playing the role of an AWS architect, it is important to recommend correct instance sizing for your EC2, RDS, ElastiCache, etc instances. Incorrect instance sizing can lead to application functionality issues when a higher load is witnessed or wasteful over-provisioning of resources. Cost efficiency is very much a required consideration.
You’ll need to work with business analysts to predict application growth and identify an architectural model that can meet future demand. You have to be future-ready.
Operating System, Networking, and Storage
Cloud deployments may be an abstraction layer built on top of virtualization, but that doesn’t make the compute infrastructure any less real. To correctly design and predict system behavior and performance, AWS architects must understand operating systems, networking, storage, and basic application designing fundamentals just as much as anyone else. Intimate knowledge of operating system fundamentals helps you make the correct call when, for instance, choosing Windows or Linux for hosting your application. Networking fundamentals allow you to predict how your application components will connect to each other. If there are any routing or port issues with your environment, it will help you to trace the movement of traffic and identify whether it’s a VPC routing issue, blocked port at the security group level, or your firewall.
Understanding storage fundamentals help you to know whether to go with magnetic disks, general purpose SSDs, or provisioned IOPS SSDs. To be able to successfully recommend a suitable web server, or application, caching, or database servers for your applications, you’ll need to understand application layer fundamentals. For example: when designing for scalability, you should understand session management requirements and, thereby, recommend a suitable solution (whether AWS Elasticache, DynamoDB, etc).
How to become an AWS Cloud Architect: AWS feature updates
Amazon Web Services is evolving rapidly and regularly releases new features, upgrades, and services. Last year alone, AWS released nearly 400 features. It is very important for an AWS architect to be aware of these change so they can fine tune their architecture and create performance improvements, cost savings, complexity reduction, etc.
You should also keep up with the AWS community. There are many cool products being built around AWS which can provide great value to your architecture. For example, there is an open source tool called s3fs which allows you to mount your S3 buckets on your instances. You might also consider some of the AWS and application log analysis tools developed by AWS partners that are currently available, along with many others, through AWS Marketplace.
Documentation, whitepapers, case studies, and AWS videos
Concluding the topic “how to become an AWS Cloud Architect”: besides the material and courses available through Cloud Academy, AWS documentation is perhaps your strongest resource for information on AWS services and features. From sample use-cases to how-to guides, it is well written and thorough. For each AWS service, there is a getting started guide covering initial configuration and more detailed documentation for all the fine details you’re likely to encounter. There’s language-specific API information for developers, CLI tools for DevOps engineers, and management console guides for the cloud engineer.
AWS also produces a wide range of whitepapers, case studies, and videos which can get up to production quickly. Case studies and customer success stories videos also exist to help you to understand how other organizations are making use of AWS and designing their architecture.