Training course
This is a free, self-paced reading course for SOA-C03: AWS Certified CloudOps Engineer – Associate, the current version of AWS’s associate-level operations credential, which replaced the AWS Certified SysOps Administrator – Associate (SOA-C02) on September 30, 2025. The rename was not cosmetic. SOA-C03 expects less traditional systems administration and more automation-driven operations across accounts, Regions, and container platforms, and this course is written against that newer shape rather than the older SysOps one.
The course is organized as one module per official exam domain, in the order AWS publishes them in the exam guide, and each module carries that domain’s published weight. That matters more here than on most exams because SOA-C03 is unusually flat: three of the five domains sit at 22% each, so there is no single area you can lean on to carry a score. Reading in domain order and in domain proportion keeps you from over-investing in the monitoring material at the expense of deployment automation or networking. Every lesson closes with its key terms and suggested further reading, so the course stays useful as a reference after the first pass.
What the course covers
Monitoring, Logging, Analysis, Remediation, and Performance Optimization
Module 1 · 22%CloudWatch metrics, logs, alarms, dashboards, and the CloudWatch agent across EC2, ECS, and EKS; routing events with EventBridge and driving automated remediation through Systems Manager Automation runbooks; and performance analysis for compute, EBS, S3, EFS and FSx, and RDS. This domain absorbed the separate cost and performance optimization domain that SOA-C02 carried, so right-sizing, workload metrics, and remediation playbooks all land here.
Reliability and Business Continuity
Module 2 · 22%Scaling with EC2 Auto Scaling, ECS and EKS scaling, and managed database scaling across RDS, DynamoDB, ElastiCache, and CloudFront; building highly available architectures with Multi-AZ deployments and ELB and Route 53 health checks; and backup and restore strategy with AWS Backup, point-in-time restore, and versioning. The module works through the four standard disaster recovery patterns (backup and restore, pilot light, warm standby, and active/active) against stated RTO and RPO requirements, because the exam almost always frames the choice that way.
Deployment, Provisioning, and Automation
Module 3 · 22%Provisioning with CloudFormation, the AWS CDK, StackSets, and EC2 Image Builder; shipping container images through ECR and managing golden AMIs; and automating operations with Systems Manager Automation, Maintenance Windows, Run Command, and Patch Manager alongside event-driven workflows built on EventBridge, Lambda, and S3 Event Notifications. Third-party tooling, Terraform and Git, is explicitly in scope. This is the clearest new emphasis in SOA-C03 relative to the older SysOps exam, so it is the module to read carefully if you are coming from SOA-C02 material.
Security and Compliance
Module 4 · 16%IAM policies, roles, federation, MFA, resource policies, and conditions; auditing access with CloudTrail and IAM Access Analyzer; and multi-account control through AWS Organizations, service control policies, and IAM Identity Center. The module also covers data protection with KMS, ACM, and Secrets Manager, and continuous compliance monitoring with AWS Config and its conformance packs, Security Hub, GuardDuty, and Inspector.
Networking and Content Delivery
Module 5 · 18%VPC construction (subnets, route tables, network ACLs, security groups, NAT and internet gateways) and private connectivity through VPC endpoints, PrivateLink, peering, and Transit Gateway; the network protection stack of WAF, Shield, Network Firewall, and Route 53 Resolver DNS Firewall; Route 53 routing policies and content delivery with CloudFront and Global Accelerator; and troubleshooting with VPC flow logs, ELB access logs, and Reachability Analyzer.
How to use it
Read the modules in order and build as you go. SOA-C03 is an operations exam, and the questions are written for someone who has already watched an alarm fire, chased it through a log group, and fixed the thing on the other end, so if you have never wired a CloudWatch alarm to an EventBridge rule to a Systems Manager runbook, or deployed the same CloudFormation stack into three accounts with StackSets, do that in a sandbox account alongside the reading. AWS’s own target candidate has about a year of hands-on AWS operations experience plus at least a year in a related on-premises operations role; the course is written to fill the AWS half of that, not to replace the hands-on half. The course modules themselves open once you are signed in to a free Certifym account.
For exam logistics (the item count, the 130-minute window, the 720-of-1000 scaled cut score, registration cost, and how long the credential stays valid) see the SOA-C03 certification guide. If the deployment and automation module is where you feel thinnest, the DOP-C02 training course covers the same CloudFormation, CDK, and pipeline material at professional depth and is worth reading against.
Change sets, drift detection, stack policies, and failed deployments
Writing a template is the easy half. The operational half is knowing what an update will do before you run it, detecting changes someone made outside the template, and diagnosing a deployment that failed at three in the morning. This lesson is the one that most closely matches the day-to-day work SOA-C03 is testing.
Change sets
A change set is a preview. You submit a modified template or new parameter values, and CloudFormation computes what it would do without doing any of it. You then execute the change set or discard it.
What the change set shows you, per resource, is the action — Add, Modify, Remove, or Import — and, for modifications, the crucial Replacement field with a value of True, False, or Conditional. It also lists which properties changed and whether each is the cause of the replacement.
That replacement field is the whole point. A property change you thought was cosmetic can force CloudFormation to delete and recreate a database. Conditional means replacement depends on circumstances CloudFormation cannot fully determine in advance, and it should be treated as a warning to investigate rather than a reassurance.
Make change sets a required step in any pipeline that touches production. A pipeline that runs CreateChangeSet, publishes the result for human review, and then runs ExecuteChangeSet on approval is the pattern the exam expects when a scenario asks how to prevent an update from unexpectedly destroying a resource.
Change sets also cover nested stacks, so a change deep inside a nested template is visible from the parent.
Drift detection
Drift is the difference between a stack's expected configuration and the actual configuration of its resources. It happens when someone changes a resource in the console, when a script modifies it, or when another automation touches it.
Running drift detection compares each supported resource's current properties against the template and reports one of IN_SYNC, MODIFIED, DELETED, or NOT_CHECKED, with a property-level diff for modified resources. The stack itself is DRIFTED or IN_SYNC.
Two limitations matter. Drift detection does not cover every resource type or every property, so IN_SYNC is not an absolute guarantee. And it is a point-in-time operation, not continuous, so detecting drift reliably means running it on a schedule — an EventBridge rule invoking DetectStackDrift, with the result checked and alarmed on.
Drift is dangerous specifically because of what happens next. A subsequent stack update may overwrite the out-of-band change, undoing a fix someone applied manually during an incident, or it may fail because the resource is no longer in the state CloudFormation expects. Neither is a good outcome at deployment time.
The correct response to drift is almost never to update the template to match the drifted state without thought. It is to decide whether the change was legitimate — in which case bring it into the template deliberately — or was not, in which case let the next update revert it. And then to ask why someone was able to change it out of band, which is an IAM question.
Stack policies
A stack policy is a JSON document attached to a stack that governs which resources an update may modify. It looks like an IAM policy but it is not one: it applies only to stack update operations, and it protects resources from being changed by the update, not from being changed by anyone.
The typical policy allows Update:* on everything and denies Update:Replace and Update:Delete on the logical IDs of stateful resources. With that in place, an update that would replace the database fails rather than proceeding.
Three properties to remember. A stack policy cannot be deleted once set, only replaced. To deliberately update a protected resource you supply a temporary override policy with the update request, which applies only to that operation. And a stack policy does not protect against stack deletion — that is what termination protection and DeletionPolicy: Retain are for.
Why deployments fail
Failures cluster into a small number of causes, and recognizing the signature is what the exam asks for.
- Insufficient IAM permissions. The most common by far. Remember that CloudFormation acts with the caller's permissions unless a service role is specified, in which case it uses that role. A service role is the right pattern: it lets operators run deployments without holding the underlying create-and-delete permissions themselves.
- Service quota exceeded. Elastic IP addresses, VPCs per Region, instances of a family. The event message names the limit.
- Resource already exists. A hard-coded name for something that must be unique — an S3 bucket, an IAM role — collides on a second deployment. This is why letting CloudFormation generate names is the default advice, and why templates that must name things should incorporate
AWS::StackName. - No signal received. A
CreationPolicytimeout, meaning user data failed or never rancfn-signal. Look in the instance's log, not in CloudFormation. - Dependency ordering. An intermittent failure that reproduces only sometimes usually means a missing
DependsOn. - Invalid property or unsupported value. An instance type not offered in the target Availability Zone, an AMI from another Region, an unsupported engine version.
- Custom resource never responded. The Lambda handler errored before signaling, so the stack waits out the full timeout.
Reading stack events
The stack events list is your primary diagnostic, and the technique is specific: sort chronologically and find the first CREATE_FAILED or UPDATE_FAILED event. Everything after it is consequence — other resources being rolled back — and reading the last event tells you nothing useful. The first failure carries the actual status reason, and that reason is usually an unambiguous API error message.
When rollback destroys the evidence, disable rollback on the next attempt so the failed resources remain for inspection. CloudTrail supplies the underlying API calls with their full error responses when the stack event message is too terse.
Recovering a stuck stack
Three specific states and their remedies:
ROLLBACK_COMPLETEafter a failed creation — the stack cannot be updated. Delete it and create it again.UPDATE_ROLLBACK_FAILED— callContinueUpdateRollback, and if a specific resource cannot be rolled back, pass it in the skip list so the rollback can complete. You then reconcile that resource manually.DELETE_FAILED— usually a non-empty S3 bucket, a security group still in use by an interface outside the stack, or an ENI left behind by a Lambda function in a VPC. Clear the blocker and delete again, or retain the resource on deletion.
Importing and moving resources
Two operations complete the toolkit. Resource import brings an existing, unmanaged resource under a stack's control by matching it to a logical ID and its physical identifier — the migration path from console-created infrastructure to managed infrastructure without recreating anything. And CloudFormation supports moving resources between stacks, which is how you refactor a monolithic stack into smaller ones without downtime. Both are safer than the alternative most people reach for, which is deleting and redeploying.
Frequently asked questions about the SOA-C03 training course
Is the SOA-C03 training course free?
Yes. The course costs nothing to read and opens once you are signed in to a free Certifym account, no payment and no card.
How is the course structured?
One module per official SOA-C03 exam domain, in the order AWS lists them in the exam guide, with each module weighted to the domain’s published percentage. Within a module the material is broken into short lessons, followed by key terms and further reading.
Does this replace AWS’s official training?
No. AWS publishes the exam guide and free digital courses on AWS Skill Builder, and those are the authoritative sources. This course is an independent study companion written to be read quickly and paired with practice questions, not a substitute for the official exam guide.
Do I need AWS experience before starting?
Some. AWS describes the target candidate as having roughly one year of hands-on AWS operations experience plus at least one year in a related on-premises operations role. The course assumes you understand servers, networking, and monitoring in general terms; it does not assume you have already operated a multi-account AWS estate. If AWS itself is new to you, read the CLF-C02 cloud practitioner course first.
What should I do after finishing the course?
Rebuild the scenarios rather than reread the text. Stand up an Auto Scaling group behind a load balancer, break it, and diagnose it from CloudWatch and flow logs alone; run a restore from AWS Backup and time it against a stated RPO. Working the domains as exercises is what converts the reading into the judgment the scenario questions ask for.
Is the course current with the latest SOA-C03 exam guide?
The course is built against the SOA-C03 exam guide, the version that superseded SOA-C02 on September 30, 2025, including its expanded container services, AWS CDK, multi-account governance, and observability coverage. AWS can revise an exam guide at any time; download the current guide from aws.amazon.com before you schedule.
Trademark notice & independence. Certifym.net is operated by Certifym Exam Services, LLC and is not affiliated with, endorsed by, or sponsored by Amazon Web Services, Inc. AWS, Amazon Web Services, AWS Certified CloudOps Engineer – Associate, and SysOps Administrator – Associate are trademarks of Amazon.com, Inc. or its affiliates. Use of these marks is solely to identify the certification for which these study materials are intended. The SOA-C03 exam and its domain structure are the property of Amazon Web Services, Inc.; candidates should download the official, current exam guide directly from aws.amazon.com.
All course content, questions, answers, and explanations on Certifym are original content created for study purposes. They are not actual AWS training materials or examination questions and are not represented as such. Studying with these materials does not guarantee a passing result on any live certification exam. Exam requirements, format, domain weights, pricing, and recertification policies are set by Amazon Web Services and may change; always verify current details on aws.amazon.com before scheduling your exam.
