DVA-C02 Sprint Dashboard

21 days · 1–1.5 hrs/day · Maarek (Udemy) + Whizlabs + TutorialsDojo mapped out

SAA background ✓ Maarek videos pinpointed Whizlabs 504 Q ready
32%
Development
26%
Security
24%
Deployment
18%
Troubleshooting
Your 3 resources — nothing else
🎯
Whizlabs — DVA-C02 Practice Questions
504 questions · 115 labs · your primary drill tool
Open →
📝
TutorialsDojo — DVA-C02 Practice Exams
Best explanations for wrong answers · closest to real exam
Open →
🎬
Maarek — DVA-C02 Video Course
Watch only the videos listed per day · skip hands-on labs Week 1
Open →
📖 How to use labs + Anki

Labs: You don't need them to pass — the exam is scenario-based multiple choice, not console work. But if by end of Week 1 you've seen a concept in 3 practice questions and still got it wrong, that's your lab list. Use Day 15 to do only those 3–5 stubborn ones in the Whizlabs sandbox. Don't do all 115.

Anki: Make cards after practice questions, not after videos. When you get something wrong and read the explanation — that's the moment to make the card. The pain of getting it wrong is what makes it stick.

On weak areas: Deployment (31%) and Troubleshooting (36%) are your domain-level gaps — that's the durable signal. The specific services that tripped you up will change with every mock. Don't memorise which service; learn the domain patterns.

Your progress

Week 1
0%
Week 2
0%
Week 3
0%
0%
Sprint complete
0 of 0 tasks done
D1
Diagnostic — take the cold exam first
Maps your real gaps. Most critical day.
START HERE90 min
▶
✓
Do NOT open Maarek today
Opening the course before the diagnostic defeats the point. You'll anchor on what you just watched instead of seeing real gaps.
↩ Skip Maarek on Day 1
✓
Take the Whizlabs free test — 65 questions, timed
whizlabs.com → DVA-C02 → "1 Free test". Set timer to 130 min. No looking anything up. A low score is the goal — it's a map, not a grade.
45 min
✓
Categorize every wrong answer by domain + service
For each wrong Q, note: Domain (Dev / Sec / Deploy / Debug) + Service (Lambda, DynamoDB, IAM…). Tally counts. This is your priority list for the next 20 days.
30 min
✓
Write your 3 weakest services on paper and pin them
Literally write them down somewhere visible. These get priority 1 treatment in weeks 1–2.
15 min
↗
Open Day 1 Gap Log — all 33 wrong answers analysed
Your diagnostic results: Deployment 31% · Troubleshooting 36% · Security 61% · Development 60%
D2
Beanstalk deployment modes — all 5 cold
Your #1 gap — Q18 and Q30 both lost here
~80 min
▶
✓
Memorize the 5 deployment modes as a table
All-at-once = fastest, downtime. Rolling = batches, reduced capacity. Rolling with additional batch = no capacity loss. Immutable = new instances, safest, slowest. Blue/Green = swap URL, instant rollback. "Full capacity throughout" = Immutable OR Rolling with additional batch (your Q30 miss).
▶ Watch: Elastic Beanstalk Overview + Elastic Beanstalk Deployment Modes
20 min
✓
Worker tier — cron.yaml for periodic tasks (your Q18 miss)
Worker tier periodic tasks require exactly cron.yaml in the source bundle root. Not cron.config, not appspec.yaml. Write it out 3 times if needed — this is a pure memorization question.
▶ Watch: Elastic Beanstalk Overview (Worker environment section)
10 min
✓
.ebextensions config files — what they do and where they live
.ebextensions/ folder in source bundle root. Files end in .config. Used to configure environment (install packages, run commands, set env vars). Different from cron.yaml.
▶ Watch: Elastic Beanstalk Deployment Modes (ebextensions section)
10 min
✓
Maarek: Quiz 14 — Elastic Beanstalk (bottom of Beanstalk section, ~5 Q)
Then: Whizlabs → DVA-C02 → Practice Tests → do one set, focus on any Deployment/Beanstalk questions. No dedicated Beanstalk quiz in Whizlabs — Maarek Quiz 14 is your primary drill here. For every deployment mode question write which modes maintain full capacity before picking.
25 min
D3
CodeDeploy — AppSpec + Lambda traffic shifting
Q25 and Q34 both lost here — pure concept gaps
~85 min
▶
✓
AppSpec file for Lambda — what it specifies and where version lives (your Q25 miss)
AppSpec.yaml for Lambda specifies: (1) function name, (2) the version to deploy, (3) validation hooks. The version is declared IN the AppSpec file — not via aliases. Aliases are for traffic routing, not version declaration in CodeDeploy.
▶ Watch: CodeDeploy Overview + CodeDeploy for Lambda and ECS
15 min
✓
Lambda traffic shifting: All-at-Once vs Canary vs Linear (your Q34 miss)
All-at-Once = 100% traffic shifted instantly. Canary = small % first (e.g. 10% for 10 min) then rest. Linear = gradual equal increments over time. "Instantaneously" in any question = All-at-Once. Every time.
▶ Watch: CodeDeploy for Lambda and ECS
12 min
✓
CodeDeploy EC2 lifecycle hooks — BeforeInstall, AfterInstall, ApplicationStart, ValidateService
appspec.yml hooks run in this order. ValidateService is the last hook — used to verify deployment worked. Know which hooks you can use to run scripts.
▶ Watch: CodeDeploy for EC2 and ASG ↩ Skip: CodeDeploy hands-on console
12 min
✓
CodeBuild: buildspec.yml phases + CodePipeline: stages and artifacts
buildspec.yml phases: install → pre_build → build → post_build. CodePipeline stages: Source → Build → Test → Deploy. Artifacts pass between stages via S3.
▶ Watch: CodeBuild Overview + CodePipeline Overview
12 min
✓
Maarek: CI/CD section quiz (bottom of CodePipeline section) → then Whizlabs Quiz #9: AWS CI-CD (5 Q, 15 min)
For every traffic shifting Q — write All-at-Once / Canary / Linear meanings before reading options. The Whizlabs CI-CD quiz is short — do it twice if needed.
25 min
D4
CloudWatch + X-Ray + Lambda metrics
Q10, Q21, Q24 — three specific concept gaps
~80 min
▶
✓
High-resolution custom metrics — 10-second alarm periods (your Q10 miss)
Standard metrics = 1-minute minimum. High-resolution custom metrics = 1-second granularity, alarms every 10 or 30 seconds. "Monitor every 10 seconds" = high-resolution custom metric. CloudTrail = API logging, not monitoring metrics.
▶ Watch: CloudWatch Metrics + CloudWatch Alarms
15 min
✓
IteratorAge — Lambda + Kinesis metric for falling behind (your Q21 miss)
IteratorAge = age of the last record in each batch Lambda reads from Kinesis. High IteratorAge = Lambda falling behind, records aging toward retention limit. Throttles = invocations exceeding concurrency. ConcurrentExecutions = aggregate across all functions. "Data not delivered fast enough from Kinesis" = IteratorAge.
▶ Watch: CloudWatch Metrics (Lambda section) + Kinesis Data Streams Overview
12 min
✓
CloudWatch Logs Insights, Log Groups, subscription filters → Lambda/Kinesis
Log Insights = query language for logs. Subscription filters stream logs to Lambda, Kinesis, or Firehose in real-time. Metric filters extract metric data from log events.
▶ Watch: CloudWatch Logs + CloudWatch Logs Insights
10 min
✓
X-Ray with Lambda — IAM role needs AWSXRayWriteOnlyAccess (your Q24 miss)
Lambda has X-Ray daemon built in — you don't install it. To enable: (1) add AWSXRayWriteOnlyAccess to the Lambda execution role, (2) enable active tracing in Lambda config. No daemon install needed. No "X-Ray function" — it's the X-Ray service.
▶ Watch: X-Ray Overview + X-Ray Instrumentation ↩ Skip: X-Ray hands-on console
12 min
✓
Whizlabs Quiz #10: X-Ray (5 Q) + Maarek: CloudWatch section quiz → then Whizlabs Quiz #16: Management and Governance (covers CloudWatch alarms)
CloudTrail = API calls audit log. CloudWatch = metrics/logs/alarms. X-Ray = tracing. Keep these three separate in your head.
25 min
D5
SQS + CloudFormation + DynamoDB expressions
Q4, Q11, Q12 — quick wins, single concept each
~75 min
▶
✓
SQS visibility timeout — increase with ChangeMessageVisibility (your Q11 miss)
Multiple consumers getting same message = visibility timeout expired before processing finished. Fix = INCREASE visibility timeout via ChangeMessageVisibility API. UpdateMessageVisibility does not exist. Decreasing makes it worse.
▶ Watch: SQS Message Visibility Timeout + SQS Dead Letter Queue + SQS Long Polling
12 min
✓
SQS standard vs FIFO, DLQ, delay queue — full picture
Standard = at-least-once, best-effort ordering. FIFO = exactly-once, ordered, 3000 msg/s. DLQ = after MaxReceiveCount failures. Delay queue = postpone delivery up to 15 min.
▶ Watch: SQS Overview + SQS FIFO Queues
12 min
✓
CloudFormation Parameters section — runtime values (your Q12 miss)
Parameters = values passed INTO template at runtime. Outputs = values exported FROM stack. Metadata = extra template info. Transform = SAM declaration. "Base creation on runtime values" = Parameters section every time.
▶ Watch: CloudFormation Overview
10 min
✓
DynamoDB expression types — Projection vs Filter vs Condition vs Update (your Q4 miss)
Projection Expression = which attributes to return. Filter Expression = filter results after read (still consumes RCU). Condition Expression = conditional writes. Update Expression = how to modify an item. "Return only Colour and Size" = Projection Expression.
▶ Watch: DynamoDB Basic APIs
10 min
✓
Whizlabs Quiz #7: DynamoDB (5 Q) + Quiz #11: SQS and SNS (5 Q) + Maarek CloudFormation section quiz
Three short focused quizzes back to back — 15 questions total, all high-density. Any wrong answers → make an Anki card immediately.
25 min
D6
ECS IAM + DynamoDB GSI + API Gateway + S3 CORS
Q26, Q28, Q29, Q33 — all single concept gaps
~80 min
▶
✓
ECS task role vs instance role — and container network isolation (Q28 + Q33)
Task role = IAM permissions for the container (assign per task, not instance). Instance role = for the EC2 host running ECS. By default containers CAN access instance profile credentials — security risk. Block with ECS_AWSVPC_BLOCK_IMDS=true. Network isolation between containers = Security Groups on EC2 instances.
▶ Watch: ECS IAM Roles + ECS Overview
15 min
✓
DynamoDB GSI — no consistent reads, only eventual (your Q26 miss)
GSI does NOT support ConsistentRead=true. Attempting it throws a ValidationException. For "latest results with least RCU on GSI" = Query with EventualRead. Eventual reads cost half the RCU of consistent reads.
▶ Watch: DynamoDB WCU and RCU + DynamoDB Basic APIs
10 min
✓
API Gateway method vs integration — front-end vs back-end (your Q29 miss)
Method request/response = frontend (client-facing side). Integration request/response = backend (how API GW talks to Lambda/backend). "Control front-end API behavior" = Method request + Method response. Never pick Integration for front-end questions.
▶ Watch: API Gateway Integration Types
10 min
✓
S3 CORS elements — AllowedMethod controls HTTP verbs (your Q13 miss)
AllowedOrigin = which domains. AllowedMethod = which HTTP methods (GET/PUT/POST/DELETE/HEAD). AllowedHeader = which request headers. MaxAgeSeconds = preflight cache duration. "Only allow GET" = AllowedMethod element.
▶ Watch: S3 CORS
8 min
✓
Whizlabs Quiz #12: Amazon ECS Docker EKS (5 Q) + Quiz #14: S3 (5 Q) + Maarek API Gateway section quiz
Three focused quizzes. DynamoDB GSI and API Gateway method vs integration are exam staples — these quizzes will surface them.
25 min
D7
Lambda deep dive — now with context
Triggers · concurrency · layers · versions · SAM
~90 min
▶
✓
Lambda invocation types — sync vs async vs event source mapping
Sync = API GW calls Lambda directly, waits for response. Async = S3/SNS triggers, Lambda retries on failure. Event source mapping = SQS/Kinesis polling, Lambda reads batches. Error behavior differs for each.
▶ Watch: Lambda Overview + Synchronous Invocations + Asynchronous Invocations + Event Source Mapping
20 min
✓
Lambda concurrency — reserved vs provisioned, throttling
Default 1000 concurrent limit (soft, per region). Reserved = cap + guarantee for that function. Provisioned = eliminates cold start. Throttled = 429 error returned to caller.
▶ Watch: Lambda Concurrency and Throttling
12 min
✓
Lambda versions, aliases, layers
Versions = immutable snapshots. Aliases = mutable pointer to version (used for blue/green Lambda). Layers = shared code/dependencies across functions. Alias weighted routing = canary deployments.
▶ Watch: Lambda Versions and Aliases + Lambda Layers ↩ Skip: Lambda hands-on console demos
12 min
✓
Whizlabs Quiz #8: AWS Lambda and Serverless Architecture (5 Q) + Maarek Lambda section quiz
Minimum viable day — two short quizzes, 10 questions total. Keep the streak alive.
25 min
✓
If higher energy: Whizlabs full practice test #1 — 65 Q timed
Week 1 benchmark. Target 58–65% — you've now covered your actual gaps. Compare domain scores to your Day 1 diagnostic. Deployment should be up from 31%.
130 min
📬 Job search language — build this in parallel with the sprint tap to expand
Your lane: Java/AWS modernization + cloud architecture

This runs in parallel with the sprint — not after it. By day 60 of your 100-day sprint you should already be speaking interview language fluently, not starting to learn it. The cert proves the knowledge. This is how you package it.

RECRUITER PITCH — memorize this

"I'm a Java/AWS modernization engineer with 10+ years in enterprise systems. Most recently I worked as a Technology Lead on Vanguard retirement-platform modernization, moving legacy workflows toward Spring Boot microservices, AWS infrastructure, GraphQL APIs, and cloud-native release patterns. I'm strongest where Java backend, AWS architecture, and business-critical modernization meet."

LinkedIn headline
Java/AWS Solutions Architect | Spring Boot Microservices | Cloud Modernization | Enterprise Platform Migration | Former Vanguard Tech Lead
Running alongside the sprint — target day 60 of your 100-day sprint
Now–Day 45 Build 3 interview stories (Vanguard modernization · AWS microservices incident · production debugging) + LinkedIn rewrite — do 20 min/day alongside study
Day 45–60 Build Terraform/AWS project: Spring Boot → ECS Fargate → RDS → S3 → CloudWatch → GitHub Actions. Frame it as "Retirement Plan Enrollment Modernization Platform" — connects directly to Vanguard story.
Day 60–70 Turn project into GitHub README + architecture diagrams + talking points
Day 70–100 Recruiter pipeline · mock interviews · CRM follow-up · daily outreach

Your strongest market identity: Java/AWS modernization architect who can lead enterprise backend migration work. That's where your money is. Don't chase generic "cloud engineer."