我是怎么通过 AWS Certified Developer Associate 考试的
落地加拿大找工作的时候,招聘启事里到处是 AWS。两周刷题加看速查表,一次通过 DVA-C02。考试概况、刷题方法、报名、考场和出分,都写在这里。
English version: How I Passed AWS Certified Developer Associate Exam
背景
我在这个行业做了快十年。前七年做移动应用开发,后三年转向全栈,用 Node.js、React 等框架。
这期间我搬到了加拿大,遇到了新的挑战。那段时间找工作很难,大公司裁员的新闻不断。
我注意到很多招聘启事要求有 AWS 或 GCP 经验,特别是 AWS Lambda、DynamoDB、S3、API Gateway、ECS 和 EC2 这些服务,也有不少写着“有 AWS Developer 认证者优先”。这让我下决心先把认证拿下。大概花了两周时间刷题和复习关键概念之后,我一次通过了考试。
怎么考
- 考试概况
- 刷题
- 报名
- 考试当天
- 等出分
1. 考试概况
AWS 提供的 考试指南 PDF 里有全部信息,我挑几个关键点。
| 类别 | Associate |
|---|---|
| 时长 | 130 分钟 |
| 题型 | 65 题,单选或多选 |
| 费用 | 150 美元。其他费用(含汇率)见 Exam pricing |
| 考试方式 | Pearson VUE 考试中心,或在线监考 |
| 语言 | 英语、法语(法国)、意大利语、日语、韩语、葡萄牙语(巴西)、简体中文、西班牙语(拉美) |
考试 2 小时 10 分钟,65 道题,费用 150 美元。如果英语不是你的母语,可以申请额外 30 分钟,但要在预约考试之前申请。
题目基本都是场景题,只有两种题型:
- 单选:一个正确答案,三个干扰项。
- 多选:五个以上选项里有两个或更多正确答案。
成绩按 100 到 1,000 的标准分报告,及格线 720,也就是 65 题里至少答对 46 题。
考试内容分四个领域:
- 领域 1:使用 AWS 服务开发(占 32%)
- 领域 2:安全(26%)
- 领域 3:部署(24%)
- 领域 4:故障排查与优化(18%)
2. 刷题
如果你已经有一些 AWS 经验,我认为最好的准备方式是直接从刷题开始。做题的时候记下错题,找出自己没吃透的知识点,再有针对性地补。
ExamTopics 上有专门针对这门考试的题库。强烈建议考前一两天把所有题(至少免费的部分)过一遍。但要注意:以社区投票的答案为准,别信 ExamTopics 自己给的答案。
我把前 100 题全做了一遍,正确率大约 75%。
ExamTopics 上有些题和真题很像。考试时碰到做过的题,几乎可以秒选。
https://www.examtopics.com/exams/amazon/aws-certified-developer-associate/view/

我也把前 100 题整理到了 GitHub:
https://github.com/allenyan513/AWS-Developer-Associate-DVA-C02-100-questions/tree/main
拿一道题做个演示。大多数题都是场景题,理解上下文很重要。这是一道单选:
一个应用使用 Amazon Cognito 用户池和身份池做安全访问。开发者想把用户专属的文件上传和下载功能与 Amazon S3 集成,必须保证文件安全存取,并且用户只能访问自己的文件。文件大小从 3 KB 到 300 MB 不等。哪个方案能以最高的安全级别满足要求?
- A. 用 S3 事件通知校验上传和下载请求,并更新用户界面。
- B. 把上传文件的信息存到单独的 DynamoDB 表,在界面上按当前用户 ID 和文件关联的用户 ID 过滤列表。
- C. 用 API Gateway 加 Lambda 处理上传和下载,在 Lambda 里校验每个请求再执行操作。
- D. 在 Cognito 身份前缀内用 IAM 策略限制用户只能使用自己在 S3 里的文件夹。
正确答案是 D。看看 ChatGPT 怎么解释:
解析:
- D 利用按 Cognito 身份动态生成并附加到每个用户的 IAM 策略,让每个用户只能访问 S3 桶里自己的文件夹(前缀)。通过 IAM 策略保证用户只能访问自己的文件,这是最安全也最直接的做法。
- A(S3 事件通知)不是用来做访问控制的,它用于在上传下载之类的事件之后触发动作,本身不提供用户级的文件访问安全。
- B 用 DynamoDB 表管理文件元数据并在界面层做访问控制。这可以是整体方案的一部分,但没有在 S3 层面强制安全,实现不严谨就容易出漏洞。
- C 用 API Gateway 和 Lambda 管理上传下载并校验每个请求。安全,但增加了复杂度和延迟,因为每个文件操作都要调一次 Lambda。相比直接在 S3 上用 IAM 策略,安全但效率低。
我还强烈推荐这份速查表。它把考试范围内各个 AWS 服务的关键知识点都整理在一起,建议至少通读一遍。
https://digitalcloud.training/category/aws-cheat-sheets/aws-developer-associate/

3. 报名
做完 100 道以上的题、看完速查表,就可以报名了。
https://aws.amazon.com/certification/certified-developer-associate/?c=sec&sec=resources

可以选线上或线下。线上考试要在电脑上装一个客户端,用摄像头和麦克风实时监考,网络也要稳定。
我的 MacBook 上那个客户端出了些问题,所以选了线下。

线下考试周一到周日每天都有。我选了周六中午。
4. 考试当天
考试当天最重要的是带两份身份证件。主证件和副证件上的姓和名必须和你在 AWS Certification 账号里登记的完全一致。
详细要求见: https://aws.amazon.com/certification/policies/during-testing/#ID_Requirements
到了线下考点,工作人员会把你的随身物品收进储物柜,给你拍照录入系统,签到,然后准时开考。考试中有问题举手就行。我的体验很顺利。
5. 等出分
考完会收到一封邮件,说成绩大约 5 个工作日内出。我当天就收到了成绩,通过,拿到了认证。
