Three Architectural Patterns You MUST Know for Interviews and Cloud Jobs


Hello Reader,

In this edition, we will go over three important architectural patterns for interviews, as well as production projects. I bet "pen and paper" architects and influencers don't talk about the third pattern coz that one you only know if you implemented actual projects ;)

Microservice

This is the most common architectural pattern. You use microservices every day without knowing. Checking bank balances, reserving dinner at a restaurant, posting a movie review, buying something from Amazon, etc., all done via microservice. There are many ways to implement a microservice, but the most common pattern is the one below, with Application Load Balancer (ALB)

  • Separate target groups handle each microservice
  • Each functionality can be backed by different compute options. For example, /browse is being served by EC2 + Auto Scaling Group, /buy is being served by AWS Lambda, and Kubernetes are serving others.
  • The ALB is associated with a DNS system such as Amazon Route53, so that users can access the ALB using a nice domain name (example: cloudwithraj.com) instead of the cryptic default URL ALB provides you
  • In the above example cloudwithraj.com/browse will go to target group 1, cloudwithraj.com/buy will go to target group 2, everything else will go to target group 3.

Event-Driven Architecture

An event-driven architecture decouples the producer and processor. In this example producer (human) invokes an API, and send information in JSON payload. API Gateway puts it into an event store (SQS), and the processor (Lambda) picks it up and processes it. Note that, the API gateway and Lambda can scale (and managed/deployed) independently

Benefits of an event-driven architecture (remember these for interviews)

  • Scale and fail independently - By decoupling your services, they are only aware of the event router, not each other. This means that your services are interoperable, but if one service has a failure, the rest will keep running. The event router acts as an elastic buffer that will accommodate surges in workloads.
  • Develop with agility - You no longer need to write custom code to poll, filter, and route events; the event router will automatically filter and push events to consumers. The router also removes the need for heavy coordination between producer and consumer services, speeding up your development process.
  • Audit with ease - An event router acts as a centralized location to audit your application and define policies. These policies can restrict who can publish and subscribe to a router and control which users and resources have permission to access your data. You can also encrypt your events both in transit and at rest.
  • Cut costs - Event-driven architectures are push-based, so everything happens on-demand as the event presents itself in the router. This way, you’re not paying for continuous polling to check for an event. This means less network bandwidth consumption, less CPU utilization, less idle fleet capacity, and less SSL/TLS handshakes.

Batch Job

This one is something that people don't talk about much. But if you have worked on any real-world production project, you know that batch plays a critical role. Like microservices, you also utilize this every day. Your scheduled mortgage loan payment, credit card payment, stock transactions settlement, bulk discounts generation, etc.

  • Use EventBridge scheduler to schedule jobs. You can also trigger jobs based on EventBridge rules which give you great flexibility and power!
  • Then the batch job is submitted via AWS Batch. Obviously you are thinking, I see container image and then ECS/EKS, why can’t I submit a container job directly from EventBridge without AWS Batch. it’s because AWS Batch maintains job queues, restart, resource management etc. that is not available if you skip it.
  • The actual steps of the job need to be in a container
  • The job running in a container gets submitted in either ECS or EKS. AWS Batch supports both EC2 and Fargate

Guys and girls - if you get any of these questions in your interview, knock it out of the park 🎯

If you have found this newsletter helpful, and want to support me 🙏:

Checkout my bestselling courses on AWS, System Design, Kubernetes, DevOps, and more: Max discounted links

AWS SA Bootcamp with Live Classes, Mock Interviews, Hands-On, Resume Improvement and more: https://www.sabootcamp.com/

Keep learning and keep rocking 🚀,

Raj

Fast Track To Cloud

Free Cloud Interview Guide to crush your next interview. Plus, real-world answers for cloud interviews, and system design from a top Solutions Architect at AWS.

Read more from Fast Track To Cloud

Hello Reader, We all heard it - Gen AI is taking away your job. The reality is, it is for sure impacting your job functionalities. However, there is a bigger reason why many folks are failing interviews and not growing in their career, due to Gen AI, but NOT for the reasons you think! Let's dive deep You're Learning the Wrong Gen AI Tools ⚙ There are countless Gen AI tools and services out there. But here’s the key question you should be asking: Which tools are actually being used by the...

Hello Reader, MCP is all the rage now. But does this make RAG obsolete? This is becoming a burning question in real-world projects and in interviews. In today's edition, let's take a closer look and find out the answer. Let's go over what is what quickly. RAG (Retrieval Augmented Generation) RAG (Retrieval Augmented Generation) is used where the response can be made better by using company specific context that the LLM does NOT have. You store relevant company data into a vector database....

Hello Reader, Gen AI hype is at an all-time high, and so is the confusion. What do you study, how do you think about it, and where are the most jobs? These are the burning questions in our minds. I love first-principles thinking, which means breaking down a problem into the smallest logical chunks, and I approach Gen AI the same way. Gen AI can be broken down into the following four layers: The bottom layer is the hardware layer, i.e., the silicon chips that can train the models. Example -...