Top 50 AWS Interview Questions (2026)

The 50 AWS questions interviewers actually ask, with direct answers, real console and CLI snippets, and what the interviewer is listening for. Grouped for freshers, intermediate, and experienced rounds.

50 questions with answers

What Is AWS?

Key Takeaways

  • AWS is Amazon's cloud platform: on-demand compute, storage, networking, and higher-level services you rent by the second or by usage instead of buying servers.
  • The building blocks interviews come back to are EC2 (compute), S3 (object storage), IAM (permissions), VPC (networking), and Lambda (serverless functions).
  • Interviews test judgment, not just service names: when to pick S3 over EBS, how you'd secure an account, what breaks at scale, and how billing bites you.
  • This page is a question bank: work your tier first, read one tier up, and say answers out loud because delivery and reasoning are evaluated too.

AWS (Amazon Web Services) is a cloud platform that rents you computing resources on demand: virtual servers, storage, databases, networking, and hundreds of managed services, billed by usage rather than bought up front. Instead of racking hardware, you launch an EC2 instance in minutes, drop files into an S3 bucket, and wire up permissions with IAM, all through an API, the CLI, or the console. The AWS overview documentation is the canonical reference for how the services fit together, and it's the map worth knowing before an interview. In interviews, AWS questions probe how you reason about trade-offs: which storage service fits which workload, how you'd lock down an account, how a VPC keeps resources private, and where costs quietly balloon. This page collects the 50 questions that come up most, each with a direct answer plus real CLI snippets and comparison tables. Pair it with our AI interview preparation guides for the live-interview format, since the first AWS round is increasingly an AI-driven technical screen.

50Questions with answers on this page
3Difficulty tiers: freshers, intermediate, experienced
3Comparison tables covering core service trade-offs
45-60 minTypical length of an AWS technical round

Watch: Top 50+ AWS Services Explained in 10 Minutes

Video: Top 50+ AWS Services Explained in 10 Minutes (Fireship, YouTube)

Test yourself and earn a certificate

10 quick questions. Score 70%+ to download your AWS certificate.

Jump to quiz

All Questions on This Page

50 questions
AWS Interview Questions for Freshers
  1. 1. What is AWS and why do companies use it?
  2. 2. What are Regions and Availability Zones in AWS?
  3. 3. What is Amazon EC2?
  4. 4. What are the main EC2 instance families and how do you pick one?
  5. 5. What is Amazon S3 and what is it good for?
  6. 6. What is the difference between S3, EBS, and EFS?
  7. 7. What are buckets, objects, and keys in S3?
  8. 8. What is IAM in AWS?
  9. 9. What is the difference between an IAM user, group, and role?
  10. 10. How does an IAM policy work?
  11. 11. What is a VPC in AWS?
  12. 12. What is the difference between a public and a private subnet?
  13. 13. What is the difference between a security group and a network ACL?
  14. 14. What is AWS Lambda?
  15. 15. When would you choose EC2 over Lambda, or the other way around?
  16. 16. What is the AWS shared responsibility model?
  17. 17. What are the main EC2 pricing models?
  18. 18. What is Amazon CloudWatch?
  19. 19. What is an Elastic Load Balancer and what types exist?
AWS Intermediate Interview Questions
  1. 20. What is the difference between Amazon RDS and DynamoDB?
  2. 21. What is the difference between an RDS Multi-AZ deployment and a read replica?
  3. 22. How do S3 storage classes affect cost, and how do you choose?
  4. 23. How does EC2 Auto Scaling work, and what triggers it?
  5. 24. What is the difference between vertical and horizontal scaling on AWS?
  6. 25. Why should an application be stateless to scale on AWS?
  7. 26. How do you protect and secure data in an S3 bucket?
  8. 27. What is Amazon CloudFront and when do you use it?
  9. 28. What is the difference between SQS and SNS?
  10. 29. What is a NAT gateway and why do private subnets need one?
  11. 30. What are the main EBS volume types and how do you choose?
  12. 31. What is AWS CloudFormation?
  13. 32. What is Amazon ElastiCache and when would you use it?
  14. 33. What is Amazon Route 53 and what routing options does it offer?
  15. 34. What is the difference between CloudWatch and CloudTrail?
  16. 35. How do you connect multiple VPCs, and what are the options?
AWS Interview Questions for Experienced Engineers
  1. 36. What is the AWS Well-Architected Framework?
  2. 37. How do you secure an AWS account from the ground up?
  3. 38. How do you grant secure access across AWS accounts?
  4. 39. Why use multiple AWS accounts, and how do you manage them?
  5. 40. What disaster recovery strategies does AWS support, and how do you choose?
  6. 41. How do you approach AWS cost optimization without hurting reliability?
  7. 42. How do you design a serverless architecture on AWS, and what are the gotchas?
  8. 43. How do you choose between ECS, EKS, and Fargate?
  9. 44. How do you connect an on-premises network to AWS?
  10. 45. How does encryption work on AWS, and what is KMS?
  11. 46. Where does eventual consistency show up in AWS, and how do you handle it?
  12. 47. What causes Lambda cold starts, and how do you reduce them?
  13. 48. How does S3 perform at scale, and how do you design for high request rates?
  14. 49. How do microservices communicate on AWS, and how do you keep it resilient?
  15. 50. Design question: architect a scalable, highly available web application on AWS.

AWS Interview Questions for Freshers

Freshers19 questions

The fundamentals every entry-level round checks: what AWS is, the core services, and the identity and networking basics underneath. If any answer here surprises you, that's your study list.

Q1. What is AWS and why do companies use it?

AWS (Amazon Web Services) is a cloud platform that rents computing resources on demand: virtual servers, storage, databases, and hundreds of managed services, billed by usage instead of bought up front. You launch what you need through an API, the CLI, or the console, and turn it off when you're done.

Companies use it to skip buying and running hardware, to scale up or down with demand, and to reach global regions quickly. Instead of a six-week server order, you get an instance in minutes and pay only for what you run, which shifts big capital spending into flexible operating cost.

Key point: Lead with 'rent resources on demand, pay for usage'. Interviewers open with this to hear whether you grasp the cloud model, not just recite service names.

Watch a deeper explanation

Video: AWS Certified Cloud Practitioner Certification Course (CLF-C01): Pass the Exam (freeCodeCamp.org, YouTube)

Q2. What are Regions and Availability Zones in AWS?

A Region is a separate geographic area (like us-east-1 or ap-south-1) with its own set of data centers. An Availability Zone (AZ) is one or more discrete data centers within a Region, with independent power, cooling, and networking, connected to the other AZs by fast, low-latency links.

The point is fault isolation: you spread instances across multiple AZs so that if one zone fails, your app keeps running in the others. Regions matter for latency to users, data residency, and which services are available, since not every service launches in every Region at once.

Key point: Say 'deploy across multiple AZs for high availability'. That single design habit is what this question is really checking.

Q3. What is Amazon EC2?

EC2 (Elastic Compute Cloud) gives you resizable virtual servers, called instances, that you launch in minutes and pay for by the second or hour. You pick an instance type (CPU, memory, network), an Amazon Machine Image for the operating system, and a size, then you manage the server like any other machine.

It's the default compute service when you need full control: install what you want, run long-lived processes, tune the OS. The trade-off is you own the operational work, patching, scaling, and the cost of instances that sit idle.

bash
# launch a small instance from an AMI
aws ec2 run-instances \
  --image-id ami-0abcd1234 \
  --instance-type t3.micro \
  --key-name my-key \
  --security-group-ids sg-0123456789

Key point: Know that EC2 is 'full control, you own the ops'. Contrasting it with Lambda's 'no servers to manage' is a frequent follow-up.

Watch a deeper explanation

Video: Amazon EC2 Basics and Instances Tutorial (Stephane Maarek, YouTube)

Q4. What are the main EC2 instance families and how do you pick one?

Instance families group instances by what they're tuned for. General purpose (T and M) balance CPU and memory for typical web apps. Compute optimized (C) favor CPU for heavy processing. Memory optimized (R and X) suit databases and caches. Storage optimized (I and D) give fast local disk, and accelerated (P and G) add GPUs.

You pick by the workload's bottleneck: profile whether it's CPU-bound, memory-bound, or I/O-bound, then choose the matching family and the smallest size that meets the need. Starting small and scaling up beats guessing large and overpaying.

Key point: the choice maps to the workload's bottleneck (CPU, memory, or I/O). Naming a family without a reason indicates memorized, not understood.

Q5. What is Amazon S3 and what is it good for?

S3 (Simple Storage Service) is object storage: you store files (objects) in containers called buckets, each object addressed by a key, and reach them over HTTP. It's built for near-unlimited capacity and is designed for 11 nines of durability, so data loss is extremely unlikely.

It's good for static assets, backups, data lakes, logs, and hosting static websites. It's not a filesystem or a block device, you don't mount it like a disk, and it's not a database. When you need a mountable volume for an instance, that's EBS, not S3.

bash
# make a bucket and upload a file
aws s3 mb s3://my-app-assets
aws s3 cp ./logo.png s3://my-app-assets/logo.png

# list what's in it
aws s3 ls s3://my-app-assets

Key point: Say S3 is 'object storage, not a filesystem'. Confusing it with a mountable disk (that's EBS) is a common junior slip.

Watch a deeper explanation

Video: Introduction to Amazon Simple Storage Service (S3): Cloud Storage on AWS (Amazon Web Services, YouTube)

Q6. What is the difference between S3, EBS, and EFS?

The three are different storage types. S3 is object storage reached over HTTP, great for files, backups, and assets. EBS (Elastic Block Store) is block storage: a virtual disk you attach to a single EC2 instance, like a hard drive for the operating system and databases. EFS (Elastic File System) is a shared filesystem you can mount on many instances at once.

You pick by access pattern. Need durable object access from anywhere, use S3. Need a disk for one instance, use EBS. Need many instances sharing files, use EFS. Mixing these up is one of the most common storage mistakes in an interview.

ServiceStorage typeAttaches toBest at
S3Object (over HTTP)Anything, via APIFiles, backups, assets, data lakes
EBSBlock (a virtual disk)One EC2 instanceOS disk, databases, low-latency I/O
EFSShared filesystemMany instances (NFS)Shared files across a fleet

Key point: Anchor each to its access pattern: object vs single-instance disk vs shared filesystem. That framing is exactly what the question screens for.

Q7. What are buckets, objects, and keys in S3?

A bucket is a top-level container for your data, with a globally unique name. An object is a single stored item: the file's bytes plus metadata. A key is the object's full name within the bucket, which acts like a path even though S3 has no real folders.

So s3://my-bucket/images/logo.png means bucket my-bucket, key images/logo.png. The slashes are just part of the key; the console shows them as folders for convenience, but the storage is flat. Knowing that keys are flat, not a real directory tree, explains why prefixes matter for listing and performance.

Key point: Mention that S3 has no real folders, just keys with slashes. That detail signals you understand how S3 actually stores data.

Q8. What is IAM in AWS?

IAM (Identity and Access Management) controls who can do what in your account. It manages identities (users, groups, roles) and policies (JSON documents that allow or deny specific actions on specific resources). Every API call is checked against these policies before it runs.

The habit that matters is least privilege: grant only the permissions an identity actually needs, nothing more. IAM is the front door to your account's security, so a sloppy policy that grants too much is one of the most common and dangerous real-world mistakes.

Key point: Say 'least privilege' in practice. Interviewers ask about IAM largely to hear whether you default to over-granting or to tight permissions.

Q9. What is the difference between an IAM user, group, and role?

A user is a permanent identity for a person or an application, with its own long-lived credentials. A group is a collection of users so you attach permissions once and every member inherits them, which keeps permissions manageable. A role is an identity with no permanent credentials that gets assumed to receive temporary ones.

Roles are the modern preference for anything non-human: an EC2 instance or Lambda function assumes a role instead of holding access keys, and cross-account access works by assuming a role too. Temporary credentials that expire beat long-lived keys sitting in code.

IdentityCredentialsTypical use
UserLong-lived (password, keys)A specific person or a legacy app
GroupNone of its ownAttach permissions to many users at once
RoleTemporary, assumed on demandEC2, Lambda, cross-account, federation

Key point: Push roles over users for services. 'An EC2 instance should use a role, not stored access keys' is the answer that lands here.

Q10. How does an IAM policy work?

An IAM policy is a JSON document listing statements, each with an Effect (Allow or Deny), one or more Actions (like s3:GetObject), and Resources the actions apply to, optionally narrowed by Conditions. AWS evaluates all applicable policies for a request and decides whether it's permitted.

The evaluation rule to know: an explicit Deny always wins over any Allow, and if nothing explicitly allows an action, it's denied by default. So access is deny-by-default, opened by Allow statements, and an explicit Deny is the override you use to guarantee something never happens.

json
{
  "Version": "2012-10-17",
  "Statement": [{
    "Effect": "Allow",
    "Action": ["s3:GetObject"],
    "Resource": "arn:aws:s3:::my-app-assets/*"
  }]
}

Key point: The rule 'explicit deny always wins, default is deny'. That single sentence is what the question is checking under the JSON.

Q11. What is a VPC in AWS?

A VPC (Virtual Private Cloud) is your own isolated virtual network inside AWS. You define its IP address range, carve it into subnets, and control routing and traffic, so your resources run in a private network you shape rather than on the open internet.

Inside a VPC you place subnets across Availability Zones, attach an internet gateway for public access, and use route tables, security groups, and network ACLs to decide what can talk to what. It's the networking foundation almost every other service sits inside.

Key point: Describe a VPC as 'your own isolated network in AWS'. Interviewers use this to check whether you think about network boundaries at all.

Q12. What is the difference between a public and a private subnet?

The difference is routing, not a checkbox. A subnet is public when its route table sends internet-bound traffic (0.0.0.0/0) to an internet gateway, so resources there can be reached from and reach the internet. A private subnet has no such route, so it's isolated from direct internet access.

The common pattern puts web-facing servers or load balancers in public subnets and databases and application servers in private ones. Private resources that need outbound internet (for updates) reach it through a NAT gateway in a public subnet, which allows outbound traffic without exposing them to inbound connections.

Key point: Say the difference is 'a route to the internet gateway'. Candidates who think it's a setting on the subnet itself miss how VPC routing works.

Q13. What is the difference between a security group and a network ACL?

Both filter traffic, but at different levels and with different behavior. A security group acts as a firewall at the instance (elastic network interface) level and is stateful: if you allow inbound traffic, the return traffic is allowed automatically. Security groups only have allow rules.

A network ACL acts at the subnet level and is stateless: you must allow both the inbound and the matching outbound traffic yourself, and it supports both allow and deny rules. In practice, security groups do most of the work; network ACLs are a coarser second layer at the subnet edge.

Security groupNetwork ACL
LevelInstance (ENI)Subnet
StateStateful (return traffic auto-allowed)Stateless (allow both directions)
RulesAllow onlyAllow and deny

Key point: The precise line is 'security groups are stateful and per-instance, NACLs are stateless and per-subnet'. Mixing up stateful vs stateless is the classic error here.

Q14. What is AWS Lambda?

Lambda is a serverless compute service: you upload a function, and AWS runs it in response to events (an S3 upload, an API Gateway request, a schedule, a queue message) without you provisioning or managing any servers. It scales automatically from zero to many concurrent runs.

You pay per request and per millisecond of execution, so idle costs nothing. The trade-offs are real: a 15-minute maximum runtime, cold starts when a function hasn't run recently, and a stateless model where you keep no local state between invocations. It fits event-driven and spiky work, not long-running processes.

Key point: The limits (15-minute cap, cold starts, stateless). Knowing where Lambda doesn't fit is more convincing than only listing what it does.

Watch a deeper explanation

Video: Top 50+ AWS Services Explained in 10 Minutes (Fireship, YouTube)

Q15. When would you choose EC2 over Lambda, or the other way around?

Choose Lambda for event-driven, short, spiky, or unpredictable workloads: a function triggered by an upload, an API endpoint with bursty traffic, a scheduled job. It scales to zero, so you pay nothing when idle, and there's no server to manage.

Choose EC2 (or containers) for steady, long-running, or stateful workloads, anything needing more than 15 minutes, heavy or predictable traffic where reserved capacity is cheaper, or full control over the runtime. The honest framing is: Lambda for bursty event work, EC2 for sustained control, and containers when you want portability in between.

Key point: Frame it as 'spiky and event-driven vs steady and long-running'. Reaching for Lambda for a heavy always-on service is the wrong answer this question hunts for.

Q16. What is the AWS shared responsibility model?

It splits security between AWS and you. AWS is responsible for security of the cloud: the physical hardware, the hypervisor, the global infrastructure, and the managed-service internals. You are responsible for security in the cloud: your data, your IAM permissions, your network configuration, and, for services like EC2, the guest OS and application.

The line shifts by service. For EC2 you patch the operating system; for a managed service like Lambda or DynamoDB, AWS handles more of the stack and you mainly own data and access control. Knowing where the line sits for each service is the point of the question.

Key point: Say 'AWS secures the cloud, you secure what's in it', then note the line moves toward AWS for managed services. That nuance is the senior touch.

Q17. What are the main EC2 pricing models?

On-Demand charges by the second or hour with no commitment, best for short-term or unpredictable use. Reserved Instances and Savings Plans give a large discount in exchange for a one or three year commitment, best for steady baseline load. Spot Instances offer the deepest discount using spare capacity, but AWS can reclaim them with short notice.

The practical mix: reserved or savings plans for the always-on baseline, on-demand for variable load on top, and spot for fault-tolerant or batch work that can survive interruption. Matching the pricing model to the workload's tolerance for interruption is where real cost savings come from.

ModelDiscountBest for
On-DemandNone (list price)Short-term, unpredictable workloads
Reserved / Savings PlansLarge, for a 1 or 3 year commitSteady, always-on baseline
SpotDeepest, but reclaimableFault-tolerant, batch, flexible jobs

Key point: Match each model to interruption tolerance: spot for work that survives being killed, reserved for the steady baseline. That reasoning beats reciting names.

Q18. What is Amazon CloudWatch?

CloudWatch is AWS's monitoring and observability service. It collects metrics (CPU, memory with the agent, request counts), stores logs, and lets you set alarms that fire when a metric crosses a threshold, which can trigger notifications or actions like scaling.

You use it to watch health, alert on problems, and drive Auto Scaling decisions. CloudWatch Logs centralizes application and system logs, and CloudWatch Alarms plus dashboards give you the at-a-glance and the wake-me-up layers. It's the default answer when an interviewer asks how you'd monitor an AWS system.

Key point: CloudWatch alarms connects to Auto Scaling. Showing that monitoring drives an action, not just a dashboard, is the stronger answer.

Q19. What is an Elastic Load Balancer and what types exist?

An Elastic Load Balancer (ELB) spreads incoming traffic across multiple targets (instances, containers, IPs) and routes only to healthy ones via health checks, which is how you get high availability across Availability Zones. The main types are the Application Load Balancer for HTTP and HTTPS with content-based routing, and the Network Load Balancer for TCP and UDP at very high performance.

You'd reach for an ALB for web apps that need path or host based routing (send /api to one target group, /app to another), and an NLB when you need raw throughput, static IPs, or non-HTTP protocols. The Gateway Load Balancer exists for inserting network appliances, but ALB and NLB cover most interview cases.

Key point: Match the type to the protocol: ALB for HTTP routing, NLB for raw TCP/UDP performance. Naming both and when to use each is what scores here.

Back to question list

AWS Intermediate Interview Questions

Intermediate16 questions

For candidates with working experience: databases, scaling, storage internals, and the judgment questions that separate service users from architects.

Q20. What is the difference between Amazon RDS and DynamoDB?

RDS is managed relational databases: it runs engines like PostgreSQL, MySQL, and SQL Server, so you get SQL, joins, and strong consistency, and AWS handles backups, patching, and failover. DynamoDB is a managed NoSQL key-value and document store built for single-digit-millisecond latency at any scale, with no servers to size.

You pick RDS when your data is relational and you need SQL and complex queries, and DynamoDB when you need predictable low latency at huge scale with simple access patterns you can design around a key. The tell of experience is knowing DynamoDB rewards designing your table around access patterns, not normalizing like a relational schema.

Amazon RDSDynamoDB
ModelRelational (SQL)NoSQL key-value / document
ScalingVertical, plus read replicasHorizontal, automatic, near-unlimited
Best fitJoins, transactions, complex queriesKnown access patterns, low latency at scale

Key point: Add that DynamoDB is designed around access patterns, not normalized like SQL. That single insight signals real NoSQL experience.

Q21. What is the difference between an RDS Multi-AZ deployment and a read replica?

Multi-AZ is for availability. RDS keeps a synchronous standby copy in another Availability Zone, and if the primary fails, it automatically fails over to the standby. The standby isn't used for reads; it exists purely so a failure doesn't cause an outage.

A read replica is for scaling reads. It's an asynchronous copy you can send read queries to, offloading the primary. Replicas can lag slightly behind and don't provide automatic failover for writes. So Multi-AZ solves availability, read replicas solve read load; teams often use both together.

Key point: The clean distinction is 'Multi-AZ for availability, read replicas for read scaling'. Thinking a read replica gives failover is the mistake this question catches.

Q22. How do S3 storage classes affect cost, and how do you choose?

S3 storage classes trade retrieval speed and access frequency against storage cost. Standard is cheapest to access but priciest to store, for frequently used data. Standard-Infrequent Access lowers storage cost with a per-retrieval fee for data you touch rarely. Glacier and Glacier Deep Archive are cheapest to store but take minutes to hours to retrieve, for archives.

Intelligent-Tiering moves objects between tiers automatically based on access, which is the safe default when access patterns are unknown. You choose by how often you'll read the data and how fast you need it back, and you automate the transitions with lifecycle rules rather than moving objects by hand.

json
{
  "Rules": [{
    "ID": "archive-old-logs",
    "Status": "Enabled",
    "Filter": { "Prefix": "logs/" },
    "Transitions": [{ "Days": 90, "StorageClass": "GLACIER" }]
  }]
}

Key point: Mention lifecycle rules to move objects automatically. Manual tier management is a red flag; automation is what an experienced answer includes.

Q23. How does EC2 Auto Scaling work, and what triggers it?

An Auto Scaling group maintains a desired number of instances between a minimum and maximum, launching from a launch template and replacing any that fail health checks. Scaling policies change that desired count: target tracking keeps a metric (like average CPU at 60%) steady, step scaling adds capacity in jumps as a metric climbs, and scheduled scaling handles known traffic patterns.

The triggers are usually CloudWatch metrics: CPU utilization, request count per target, or a custom metric. Paired with a load balancer, new instances register automatically and start taking traffic once healthy. The design goal is matching capacity to demand so you neither drop requests nor pay for idle servers.

Key point: The target tracking as the default policy and CloudWatch as the trigger source. That specificity separates someone who's configured scaling from someone who's read about it.

Q24. What is the difference between vertical and horizontal scaling on AWS?

Vertical scaling means making one instance bigger: more CPU and memory by changing the instance type. It's simple but has a ceiling (the largest instance size) and usually needs a restart, and a single big instance is still a single point of failure.

Horizontal scaling means adding more instances behind a load balancer. It has no hard ceiling, tolerates the loss of any one instance, and is what Auto Scaling automates, but it requires the app to be stateless so any instance can serve any request. AWS architecture favors horizontal scaling for exactly these reasons.

Scaling approaches: how far they take you

Relative headroom before the approach hits a wall. Vertical scaling caps at the largest instance; horizontal scaling adds instances but needs stateless design.

Vertical (bigger instance)
30 relative headroom
Horizontal (more instances)
90 relative headroom
  • Vertical (bigger instance): Simple, but capped at the largest instance size
  • Horizontal (more instances): Near-unlimited, but the app must be stateless

Key point: Say horizontal scaling 'needs a stateless app'. Naming that prerequisite shows you understand why AWS designs push state out of instances.

Q25. Why should an application be stateless to scale on AWS?

Stateless means an instance keeps no session or user data locally between requests, so any instance can handle any request. That's what lets a load balancer spread traffic freely and Auto Scaling add or remove instances without losing anyone's session.

You push state out of the instances into shared stores: sessions into DynamoDB or ElastiCache, files into S3, data into RDS. If state lived on the instance, terminating one during a scale-in would drop user sessions, and requests would break when routed to a different instance. Statelessness is what makes instances disposable.

Key point: statelessness connects to 'instances become disposable'. That phrase captures why every AWS scaling and resilience pattern depends on it.

Q26. How do you protect and secure data in an S3 bucket?

access: keep buckets private by default (Block Public Access on), grant access through IAM policies and bucket policies scoped tightly, and use presigned URLs for temporary, limited sharing rather than making objects public comes first. Most S3 data breaches trace back to a bucket accidentally left open.

Then add durability and confidentiality: enable versioning so overwrites and deletes are recoverable, turn on server-side encryption (SSE-S3 or SSE-KMS) so objects are encrypted at rest, and use lifecycle rules and MFA delete for retention. Encryption in transit comes from requiring HTTPS.

  • Block Public Access at the account and bucket level unless a bucket must be public.
  • Grant least-privilege access via IAM and bucket policies; use presigned URLs for temporary sharing.
  • Enable versioning to recover from overwrites and deletes.
  • Enable server-side encryption (SSE-S3 or SSE-KMS) for data at rest and require HTTPS in transit.

Key point: Lead with 'keep buckets private, Block Public Access on'. Interviewers ask this partly to see if you know the number-one S3 mistake.

Q27. What is Amazon CloudFront and when do you use it?

CloudFront is AWS's content delivery network. It caches content at edge locations close to users, so a request is served from a nearby edge instead of traveling all the way to your origin (an S3 bucket, a load balancer, or any HTTP server). That cuts latency and offloads traffic from the origin.

You use it to speed up static assets and cacheable responses globally, to add TLS and DDoS protection at the edge with AWS Shield, and to serve a static website fronting an S3 bucket. The hard part, as with any cache, is invalidation: deciding TTLs and purging the edge when content changes.

Key point: cache invalidation and TTLs matters.

Q28. What is the difference between SQS and SNS?

SQS (Simple Queue Service) is a message queue: producers put messages in, and one consumer pulls and processes each message, decoupling components and absorbing bursts. It's point-to-point, and messages wait until something processes them, which smooths spikes and adds resilience.

SNS (Simple Notification Service) is publish-subscribe: a message published to a topic fans out to many subscribers at once (queues, Lambda functions, HTTP endpoints, email). A common pattern is fan-out: SNS publishes to a topic, and several SQS queues subscribe, so multiple services each get their own copy to process independently.

SQSSNS
PatternQueue, point-to-pointPub/sub, fan-out
DeliveryOne consumer pulls each messagePushed to many subscribers
Use forDecoupling, buffering, retriesNotifications, broadcasting events

Key point: Describe the SNS-to-SQS fan-out pattern. Knowing how they combine, not just their definitions, is the intermediate-level signal.

Q29. What is a NAT gateway and why do private subnets need one?

A NAT (Network Address Translation) gateway lets resources in a private subnet reach the internet for outbound traffic (downloading updates, calling external APIs) without being reachable from the internet inbound. It lives in a public subnet and translates the private instances' addresses to its own public IP.

Private subnets have no route to the internet gateway by design, so without a NAT gateway their instances can't fetch anything from the internet at all. The NAT gateway gives one-way outbound access while keeping the instances shielded from inbound connections. It's a managed, highly available service, but it does cost per hour and per gigabyte, which surprises people on the bill.

Key point: Say 'outbound-only, keeps instances private' and mention it costs per GB. The cost note shows you've actually run one, not just diagrammed it.

Q30. What are the main EBS volume types and how do you choose?

EBS volumes come in SSD-backed and HDD-backed families. General Purpose SSD (gp3, gp2) is the balanced default for most workloads, including boot volumes. Provisioned IOPS SSD (io2, io1) gives the highest, guaranteed IOPS for demanding databases. Throughput Optimized HDD (st1) suits large sequential workloads like big data, and Cold HDD (sc1) is the cheapest for infrequent access.

You choose by the I/O profile: gp3 for general use because you can tune IOPS and throughput independently and cheaply, io2 when a database needs guaranteed high IOPS and durability, and the HDD types when the workload is large and sequential rather than random. Starting with gp3 and measuring is the sensible default.

Key point: Default to gp3 and justify io2 only for high-IOPS databases. Reaching for provisioned IOPS everywhere signals you don't watch cost.

Q31. What is AWS CloudFormation?

CloudFormation is AWS's native infrastructure-as-code service. You describe your resources in a template (JSON or YAML), and CloudFormation provisions and manages them as a single unit called a stack, in the right order and with dependency handling. Updating the template updates the stack; deleting the stack tears down everything it created.

The wins are repeatability and cleanup: you version the template, spin up identical environments, and avoid orphaned resources because the stack tracks what it owns. Many teams use Terraform instead for multi-cloud, or the CDK to write infrastructure in a real programming language that compiles to CloudFormation.

yaml
Resources:
  AssetsBucket:
    Type: AWS::S3::Bucket
    Properties:
      BucketName: my-app-assets
      VersioningConfiguration:
        Status: Enabled

Key point: Mention that a stack tracks its resources so teardown is clean. Naming the CDK as a way to write it in code is a nice extra.

Q32. What is Amazon ElastiCache and when would you use it?

ElastiCache is a managed in-memory cache offering Redis and Memcached. It sits between your app and a slower backing store (like RDS) to serve hot data straight from memory in sub-millisecond time, which cuts database load and speeds up reads. AWS runs the nodes, failover, and patching so you don't operate the cache yourself.

You reach for it to cache expensive query results, store session data for stateless apps, and hold frequently read values. Redis adds persistence, replication, and data structures; Memcached is simpler and purely a cache. The hard parts are the usual cache problems: choosing what to cache, setting TTLs, and invalidating stale entries.

Key point: caching maps to 'take load off the database'. Adding that invalidation and TTLs are the hard part shows you've run a cache, not just added one.

Q33. What is Amazon Route 53 and what routing options does it offer?

Route 53 is AWS's managed DNS service. It translates domain names into addresses and also registers domains and runs health checks. Beyond basic name resolution, it offers routing policies that decide which endpoint a query resolves to, which is where it gets useful for architecture.

The policies worth naming: simple (one record), weighted (split traffic by percentage, handy for canaries), latency-based (send users to the lowest-latency Region), failover (route to a standby when the primary fails a health check), and geolocation (route by user location). Those turn DNS into a traffic-management tool, not just a lookup.

Key point: The weighted and failover routing specifically. They map to real patterns (canary releases, disaster recovery), which is what the interviewer is probing for.

Q34. What is the difference between CloudWatch and CloudTrail?

They answer different questions. CloudWatch is about performance and health: it collects metrics, logs, and alarms that tell you how your resources are behaving (CPU, latency, error rates) and alert you when something crosses a threshold. Think of it as the tool for watching whether the system is running well right now.

CloudTrail is about auditing: it records API calls made in your account, who did what, when, and from where. When you need to know who deleted a bucket or changed a security group, that's CloudTrail. CloudWatch tells you the system is unhealthy; CloudTrail tells you what actions were taken. Security and compliance work leans on CloudTrail.

Key point: The crisp line is 'CloudWatch for health and metrics, CloudTrail for who-did-what auditing'. Confusing the two is a common intermediate slip.

Q35. How do you connect multiple VPCs, and what are the options?

The simplest is VPC peering: a direct, private connection between two VPCs so their resources talk over private IPs. It's cheap and low-latency, but it doesn't route transitively, if A peers with B and B peers with C, A still can't reach C, so peering many VPCs becomes a tangle.

For connecting many VPCs and on-premises networks, Transit Gateway acts as a central hub: every network attaches once to the gateway and routes through it, which scales far better than a mesh of peerings. PrivateLink is the third option, exposing a single service privately across VPCs without opening up whole networks.

Key point: Note that VPC peering isn't transitive and Transit Gateway solves the mesh problem. That limitation is a favorite follow-up.

Back to question list

AWS Interview Questions for Experienced Engineers

Experienced15 questions

advanced rounds probe architecture, security, cost, and production scars. Expect every answer here to draw a follow-up about trade-offs and failure modes.

Q36. What is the AWS Well-Architected Framework?

It's AWS's set of best-practice pillars for evaluating and improving an architecture: operational excellence, security, reliability, performance efficiency, cost optimization, and sustainability. Each pillar is a lens with questions you ask of a design to find weaknesses before they bite.

In an interview it's useful as a structure: when asked to critique or design a system, you can walk the pillars to show you think beyond just making it work. The point isn't reciting the six names, it's using them to reason about trade-offs, because improving one pillar (say, reliability) often costs another (cost), and naming those tensions is what senior review looks like.

Key point: Use the pillars to show trade-off thinking, not as a memorized list. Naming that reliability and cost pull against each other is the strong move.

Watch a deeper explanation

Video: AWS Certified Solutions Architect Associate 2020 (Pass The Exam) (freeCodeCamp.org, YouTube)

Q37. How do you secure an AWS account from the ground up?

the root user: enable MFA on it, stop using it for daily work, and remove any root access keys comes first. Then run everything through IAM with least privilege, prefer roles and temporary credentials over long-lived keys, and require MFA for humans. Turn on CloudTrail for a full audit log and AWS Config to track resource changes.

Layer on the account structure: use AWS Organizations with separate accounts per environment and Service Control Policies to set guardrails no one can exceed, enable GuardDuty for threat detection, and centralize secrets in Secrets Manager. The threat model to name is credential compromise and misconfiguration, so the controls target both identity and drift.

Key point: Lead with 'lock down the root user, MFA everywhere, least privilege'. Those three are table stakes; missing them signals inexperience fast.

Q38. How do you grant secure access across AWS accounts?

You use role assumption, not shared credentials. In the account holding the resource, create an IAM role with a trust policy that names the other account (or a specific principal) as allowed to assume it, and attach a least-privilege permissions policy. Principals in the other account then call AssumeRole to get temporary credentials scoped to that role.

For extra safety on third-party access, add an external ID to the trust policy to prevent the confused-deputy problem. This pattern keeps credentials temporary and auditable: every assumption shows up in CloudTrail, and you never copy long-lived keys between accounts. AWS Organizations and IAM Identity Center make this cleaner at scale.

Cross-account access with an assumed role

1Create the role
in the resource account, with a least-privilege permissions policy
2Set the trust policy
name the other account or principal allowed to assume it; add an external ID for third parties
3Call AssumeRole
a principal in the other account requests the role
4Use temporary credentials
scoped, short-lived, and logged in CloudTrail; no keys are copied

No long-lived keys move between accounts, and every assumption is auditable in CloudTrail.

Key point: The external ID for third-party roles and 'temporary credentials, no shared keys'. That detail proves you've set up real cross-account access.

Q39. Why use multiple AWS accounts, and how do you manage them?

Multiple accounts give hard isolation: a blast radius boundary so a mistake or breach in dev can't touch production, clean per-environment or per-team billing, and separate service quotas. One giant account mixing everything is fragile and hard to reason about at scale.

You manage them with AWS Organizations: a management account, organizational units grouping accounts, and Service Control Policies that set maximum permissions across whole OUs (like denying a Region or a risky action everywhere). IAM Identity Center handles single sign-on across accounts, and consolidated billing rolls it up. The model is 'many accounts, centrally governed'.

Key point: Frame accounts as 'blast-radius boundaries' and name SCPs as org-wide guardrails. That's the language senior AWS architects use.

Q40. What disaster recovery strategies does AWS support, and how do you choose?

The four common tiers trade cost against recovery speed. Backup and restore is cheapest: keep backups, rebuild after a disaster, with recovery in hours. Pilot light keeps a minimal core (like a replicated database) always running and scales the rest up on demand. Warm standby runs a scaled-down full copy ready to take traffic in minutes. Multi-site active-active runs full capacity in multiple Regions for near-zero downtime.

You choose by the business's RTO (how fast you must recover) and RPO (how much data loss is acceptable), because active-active is expensive and complex while backup-and-restore is cheap but slow. Start from those two numbers, not from the architecture, and rehearse the failover, since an untested DR plan usually fails when it's needed.

StrategyRecovery timeCost
Backup and restoreHoursLowest
Pilot lightTens of minutesLow
Warm standbyMinutesMedium
Multi-site active-activeNear zeroHighest

Key point: Anchor the answer in RTO and RPO. Jumping to active-active without the cost-versus-recovery discussion indicates inexperienced.

Q41. How do you approach AWS cost optimization without hurting reliability?

Measure first: use tagging and Cost Explorer to attribute spend to teams and services, because cutting blind hurts reliability. Then work the big levers: right-size over-provisioned instances, buy Savings Plans or Reserved Instances for steady baseline load, use Spot for fault-tolerant work, move cold data to cheaper S3 tiers, and delete waste like idle instances, unattached EBS volumes, and old snapshots.

The guardrail matters: don't cut the redundancy that protects availability, and don't chase savings that add so much operational risk that one incident erases them. The best wins are usually turning off forgotten resources and right-sizing, not degrading production. Watch the sneaky costs too: NAT gateway data, cross-AZ traffic, and orphaned load balancers.

Key point: Lead with 'attribute spend before cutting' and name a sneaky cost like cross-AZ data transfer. That specificity beats a generic list of discounts.

Q42. How do you design a serverless architecture on AWS, and what are the gotchas?

A common shape is API Gateway in front of Lambda functions, with DynamoDB for state, S3 for files, SQS or EventBridge for async work, and Step Functions to coordinate multi-step workflows. Each piece scales independently and you pay per use, so it fits event-driven and spiky workloads well.

The gotchas are what senior interviews probe: cold starts adding latency (mitigate with provisioned concurrency), the 15-minute Lambda limit ruling out long jobs, connection limits when many Lambdas hit a relational database (use RDS Proxy or DynamoDB), harder local testing and debugging across many small functions, and cost that can exceed a plain server at very high steady volume. Serverless isn't free of operations, the operations just move.

Key point: The cold starts, the 15-minute cap, and Lambda-to-RDS connection limits. Knowing the gotchas is what separates serverless experience from a diagram.

Q43. How do you choose between ECS, EKS, and Fargate?

ECS is AWS's own container orchestrator: simpler, tightly integrated, a good default when you're all-in on AWS and don't need Kubernetes. EKS is managed Kubernetes: pick it when you want the Kubernetes ecosystem, portability across clouds, or your team already knows it, at the cost of more complexity to run.

Fargate is a launch mode, not a separate orchestrator: it runs ECS or EKS tasks without you managing the EC2 nodes, so you skip node patching and scaling but pay a premium per unit and give up some low-level control. The decision: ECS for AWS-native simplicity, EKS for Kubernetes portability, and Fargate on top of either when you don't want to manage servers.

OptionWhat it isPick it when
ECSAWS-native orchestratorAll-in on AWS, want simplicity
EKSManaged KubernetesWant the K8s ecosystem or portability
FargateServerless nodes for ECS/EKSDon't want to manage EC2 nodes

Key point: Clarify that Fargate is a launch mode, not a rival to ECS/EKS. Treating it as a third orchestrator is the common mistake here.

Q44. How do you connect an on-premises network to AWS?

Two main options. A Site-to-Site VPN sets up encrypted tunnels over the public internet between your data center and a VPC: quick to stand up and cheap, but throughput and latency ride on the internet. Direct is a dedicated private physical link connects to AWS: consistent low latency and high bandwidth, but it takes time to provision and costs more.

Many enterprises use both: Direct Connect for the primary private path and a VPN as an encrypted backup. At scale, a Transit Gateway centralizes the hybrid connectivity so many VPCs and the on-prem network route through one hub rather than a mesh. The choice comes down to whether you need guaranteed performance (Direct Connect) or fast, cheap setup (VPN).

Key point: Contrast VPN (fast, cheap, internet-bound) with Direct Connect (dedicated, consistent, pricier), and mention using both. That's the hybrid answer the question needs.

Q45. How does encryption work on AWS, and what is KMS?

AWS Key Management Service (KMS) manages the encryption keys most services use. It holds customer master keys, and services like S3, EBS, and RDS use those keys to encrypt data at rest, typically with envelope encryption: KMS encrypts a data key, the data key encrypts your data, and the encrypted data key is stored alongside the data.

You control keys with IAM and key policies, get an audit trail of every use through CloudTrail, and can rotate keys automatically. For the highest assurance, CloudHSM gives you a dedicated hardware security module. Encryption in transit is separate and comes from TLS. The senior points are envelope encryption, key policies as a second access layer, and CloudTrail-audited key usage.

Key point: Explain envelope encryption and that key access is governed by key policies plus IAM. Naming those shows you've handled real KMS setups, not just ticked 'encrypt at rest'.

Q46. Where does eventual consistency show up in AWS, and how do you handle it?

It shows up wherever data is replicated across machines or regions. DynamoDB offers eventually consistent reads by default (cheaper and faster) and strongly consistent reads on request; a read right after a write might see stale data unless you ask for strong consistency. RDS read replicas lag the primary asynchronously, so a read replica can return slightly old data.

S3 is now strongly consistent for reads after writes, which removed a classic gotcha, but cross-region replication is still asynchronous. You handle it by choosing strong consistency where correctness demands it (accepting the cost and latency), designing flows that tolerate slight staleness, and reading from the primary when you just wrote and must see the result immediately.

Key point: Give a concrete example, like a DynamoDB read after write or read-replica lag, and how you'd force strong consistency. Abstract definitions read as untested.

Q47. What causes Lambda cold starts, and how do you reduce them?

A cold start happens when Lambda has to spin up a fresh execution environment for your function: it downloads the code, starts the runtime, and runs your initialization before handling the request. That setup adds latency, and it happens on the first invocation and when scaling up to more concurrent instances. A warm environment reused for a later request skips all that.

You reduce cold starts by keeping the deployment package and dependencies small, choosing a faster-starting runtime, and moving heavy setup out of the request path. For latency-sensitive functions, provisioned concurrency keeps a set number of environments always warm, at extra cost. Putting a Lambda inside a VPC used to worsen cold starts, though AWS improved that with better networking.

Key point: The provisioned concurrency as the direct fix and 'small package, light init' as the free ones. Knowing the VPC history is a nice senior detail.

Q48. How does S3 perform at scale, and how do you design for high request rates?

S3 scales to very high request rates per prefix: thousands of GET and PUT requests per second per prefix, and it scales horizontally as you spread load across more prefixes. Older guidance about randomizing key prefixes to avoid hotspots is largely outdated now, but distributing keys across prefixes still helps for extreme request volumes.

For read-heavy or global workloads, put CloudFront in front so most requests hit the CDN edge, not S3 directly. Use multipart upload for large objects to parallelize and recover from failures, S3 Transfer Acceleration for long-distance uploads, and byte-range fetches to parallelize large downloads. The design instinct is to cache reads and parallelize large transfers rather than hammer a single object.

Key point: Mention that the old prefix-randomization advice is dated and CloudFront fronts read-heavy workloads. That currency signals you follow how AWS actually evolves.

Q49. How do microservices communicate on AWS, and how do you keep it resilient?

Two styles. Synchronous, request-response over HTTP through API Gateway, an Application Load Balancer, or service discovery (Cloud Map), which is simple but couples services in time: if a downstream is slow, callers wait. Asynchronous, through queues (SQS) and events (SNS, EventBridge), which decouples services so a slow or down consumer doesn't break the producer.

Resilience comes from favoring async where you can, adding timeouts and retries with backoff and a dead-letter queue so failed messages aren't lost, and using idempotent handlers because at-least-once delivery means a message can arrive twice. EventBridge for event routing and Step Functions for orchestrating multi-step workflows keep the coupling loose. The instinct that scores: prefer events over synchronous chains to contain failure.

Key point: Push async messaging and name dead-letter queues plus idempotency. That combination is what proves you've run event-driven systems in production.

Q50. Design question: architect a scalable, highly available web application on AWS.

Clarify first: expected traffic and growth, read versus write mix, latency and availability targets, budget, and any compliance needs. Then lay out the tiers. Front it with Route 53 for DNS and CloudFront for edge caching and TLS. Put stateless application servers in an Auto Scaling group across multiple Availability Zones behind an Application Load Balancer, and keep session state in DynamoDB or ElastiCache so instances stay disposable.

For data, use RDS Multi-AZ (add read replicas for read-heavy load) or DynamoDB for scale, store files and static assets in S3 served through CloudFront, and cache hot reads in ElastiCache. Wrap it with the cross-cutting concerns: least-privilege IAM, private subnets for the app and database with a NAT gateway for outbound, CloudWatch monitoring and alarms, and a DR plan sized to the RTO and RPO you asked about. The structure that scores is clarify, multi-AZ stateless tier, managed data with replicas, cache and CDN, then secure and observe, each choice justified by the requirements.

text
Route 53  ->  CloudFront (edge cache, TLS)
            ->  ALB
                ->  Auto Scaling group (stateless app, multi-AZ, private subnets)
                    ->  RDS Multi-AZ + read replicas   (relational)
                    ->  DynamoDB                       (scale / sessions)
                    ->  ElastiCache                    (hot reads)
                    ->  S3 (assets, via CloudFront)

Key point: Open by asking clarifying questions before designing. Jumping straight to a service list, without requirements, is the most common way to underperform on a design prompt.

Back to question list

AWS Compute Options, and When Each One Fits

AWS gives you several ways to run code, and the key point is that you pick by workload, not by habit. EC2 hands you a full virtual server you manage; containers on ECS or EKS package and orchestrate services; Lambda runs a function with no server to manage and scales to zero; Fargate runs containers without managing the underlying instances. The trade-off runs from most control and most operational work (EC2) to least control and least operational work (Lambda). Saying where each fits, and why, is itself an interview signal.

OptionWhat you manageBest atWatch out for
EC2The whole virtual server (OS, patching, scaling)Full control, long-running or custom workloadsYou own patching, scaling, and idle cost
ECS / EKSContainer orchestration and often the nodesMany containers needing scheduling and rolloutsReal operational cost; overkill for one small app
FargateJust the container definition, not the serversContainers without managing EC2 nodesHigher per-unit cost; less low-level control
LambdaOnly your function codeEvent-driven, spiky, or short tasks; scales to zero15-minute limit, cold starts, per-request pricing

How to Prepare for a AWS Interview

Prepare in layers, and trade-offs out loud is the explanation path. Most AWS rounds move from service-definition questions to a design or scenario task to a security and cost discussion, so rehearse each stage rather than only reading answers.

  • Master your tier's core services (EC2, S3, IAM, VPC, Lambda) until you can explain them without notes, then read one tier up.
  • Open a free-tier account and click through it: launch an instance, make a bucket, write an IAM policy. Doing it sticks far better than reading.
  • Rehearse scenario answers with a structure: clarify the requirement, propose a design, The trade-off, describe how you'd secure and cost-control it.
  • Take the quiz on this page to find weak spots, then revisit those questions before the real round.

The typical AWS interview flow

1Recruiter or phone screen
background, services you know, a few concept checks
2Service concepts
EC2, S3, IAM, VPC, Lambda, databases, and their trade-offs
3Design or scenario
architect a system, pick services, justify each choice
4Security and cost
least privilege, network isolation, and where the bill grows

Earlier rounds increasingly run as AI-driven technical interviews. The service knowledge and trade-off reasoning on this page are what gets probed at every stage.

Test Yourself: AWS Quiz

Ready to test your AWS knowledge?

10 questions, about 6 minutes. Score 70% or higher to earn a shareable certificate.

10 questions Instant feedback Free certificate on 70%+

Frequently  Asked  Questions

Which AWS topics should I prioritize before a technical round?

Prioritize the areas that change real decisions: fundamentals, practical tasks, debugging, trade-offs, and evidence. The highest-value questions are tied to a project example, a validation check, or a failure mode.

Which AWS services matter most for interviews?

The core five come up in almost every round: EC2 for compute, S3 for storage, IAM for permissions, VPC for networking, and Lambda for serverless. After those, databases (RDS and DynamoDB), load balancing and Auto Scaling, and CloudWatch for monitoring round out the set. Know those well before spreading thin across niche services.

Do I need AWS certifications to pass an interview?

A certification like Solutions Architect Associate helps you get past a resume screen and forces you to learn the breadth, but it doesn't replace hands-on judgment. Interviewers can tell whether you've actually built on AWS. If you have the cert but no practice, spend time in a free-tier account so your answers come from doing, not just studying.

How long does it take to prepare for an AWS interview?

If you use AWS at work, one to two weeks of an hour a day covers this bank with practice runs. Starting colder, plan three to four weeks and build things in a free-tier account: launch an instance, host a static site on S3, write a Lambda. Reading answers without touching the console is how preparation quietly fails.

Do interviewers ask exactly these questions?

The concepts repeat far more reliably than the exact wording. Interviewers rephrase, chain follow-ups, and push toward whatever you claim confidence in. Prepare the underlying ideas, compute, storage, identity, networking, and cost, and the phrasing takes care of itself.

Is there a way to test my AWS knowledge?

Yes. The quiz on this page scores you as you go and explains every answer, so you find your weak spots fast. Pass the threshold and you can download a shareable certificate with your name and score, free and with no sign-up. It's the quickest way to check yourself before the real round.

From the team that builds coding interviews

Hyring builds the AI Coding Interviewer that runs live technical rounds in 20+ languages for 5,000+ hiring teams. These AWS questions and scoring notes reflect what actually gets asked and evaluated inside the interviews we host.

See how the AI Coding Interviewer works

Sources

Adithyan RKWritten by Adithyan RK
Surya N
Fact-checked by Surya N
Published on: 14 Jun 2026Last updated: 2 Jul 2026
Share: