Free Practice Questions for AWS Certified Developer - Associate (DVA-C02) Certification
Study with 364 exam-style practice questions designed to help you prepare for the AWS Certified Developer - Associate (DVA-C02).
Start Practicing
Random Questions
Practice with randomly mixed questions from all topics
Domain Mode
Practice questions from a specific topic area
Exam Information
Exam Details
Key information about AWS Certified Developer - Associate (DVA-C02)
Associate (Intermediate)
Multiple choice, Multiple response
720 out of 1000
Proficiency in at least one high-level programming language, understanding of application lifecycle management, basic understanding of cloud-focused applications, ability to develop functional applications, experience using development tools, and ability to develop/secure applications using AWS service APIs, CLI, and SDKs, and use CI/CD pipelines.
Individuals performing a developer role with 1+ years of hands-on experience developing and maintaining applications using AWS services.
50 scored questions (plus 15 unscored)
Exam Topics & Skills Assessed
Skills measured (from the official study guide)
Domain 1: Development with AWS Services
Subdomain 1.1: Develop code for applications hosted on AWS
- Skill 1.1.1: Describe architectural patterns (for example, event-driven, microservices, monolithic, choreography, orchestration, fanout) - Skill 1.1.2: Describe diļ¬erences between stateful and stateless concepts - Skill 1.1.3: Describe diļ¬erences between tightly coupled and loosely coupled components - Skill 1.1.4: Describe diļ¬erences between synchronous and asynchronous patterns - Skill 1.1.5: Create fault-tolerant and resilient applications in a programming language (for example, Java, C#, Python, JavaScript, TypeScript, Go) - Skill 1.1.6: Create, extend, and maintain APIs (for example, response/request transformations, enforcing validation rules, overriding status codes) - Skill 1.1.7: Write and run unit tests in development environments (for example, using AWS SAM) - Skill 1.1.8: Write code to use messaging services - Skill 1.1.9: Write code that interacts with AWS services by using APIs and AWS SDKs - Skill 1.1.10: Handle streaming data using AWS services - Skill 1.1.11: Use Amazon Q Developer to assist with development - Skill 1.1.12: Use Amazon EventBridge to implement event-driven patterns - Skill 1.1.13: Implement resilient application code for third-party service integrations (for example, retry logic, circuit breakers, error handling patterns)
Subdomain 1.2: Develop code for AWS Lambda
- Skill 1.2.1: Describe the access of private resources in VPCs from Lambda code - Skill 1.2.2: Conļ¬gure Lambda functions by deļ¬ning environment variables and parameters (for example, memory, concurrency, timeout, runtime, handler, layers, extensions, triggers, destinations) - Skill 1.2.3: Handle the event lifecycle and errors by using code (for example, Lambda Destinations, dead-letter queues) - Skill 1.2.4: Write and run test code by using AWS services and tools - Skill 1.2.5: Integrate Lambda functions with AWS services - Skill 1.2.6: Tune Lambda functions for optimal performance - Skill 1.2.7: Use Lambda functions to process and transform data in near real time
Subdomain 1.3: Use data stores in application development
- Skill 1.3.1: Describe high-cardinality partition keys for balanced partition access - Skill 1.3.2: Describe database consistency models (for example, strongly consistent, eventually consistent) - Skill 1.3.3: Describe diļ¬erences between query and scan operations - Skill 1.3.4: Deļ¬ne Amazon DynamoDB keys and indexing - Skill 1.3.5: Serialize and deserialize data to provide persistence to a data store - Skill 1.3.6: Use, manage, and maintain data stores - Skill 1.3.7: Manage data lifecycles - Skill 1.3.8: Use data caching services - Skill 1.3.9: Use specialized data stores based on access patterns (for example, Amazon OpenSearch Service)
Domain 2: Security
Subdomain 2.1: Implement authentication and/or authorization for applications and AWS services
- Skill 2.1.1: Use an identity provider to implement federated access (for example, Amazon Cognito, IAM) - Skill 2.1.2: Secure applications by using bearer tokens - Skill 2.1.3: Conļ¬gure programmatic access to AWS - Skill 2.1.4: Make authenticated calls to AWS services - Skill 2.1.5: Assume an IAM role - Skill 2.1.6: Deļ¬ne permissions for IAM principals - Skill 2.1.7: Implement application-level authorization for ļ¬ne-grained access control - Skill 2.1.8: Handle cross-service authentication in microservice architectures
Subdomain 2.2: Implement encryption by using AWS services
- Skill 2.2.1: Deļ¬ne encryption at rest and in transit - Skill 2.2.2: Describe certiļ¬cate management (for example, AWS Private CA) - Skill 2.2.3: Describe diļ¬erences between client-side encryption and server-side encryption - Skill 2.2.4: Use encryption keys to encrypt or decrypt data - Skill 2.2.5: Generate certiļ¬cates and SSH keys for development purposes - Skill 2.2.6: Use encryption across account boundaries - Skill 2.2.7: Enable and disable key rotation
Subdomain 2.3: Manage sensitive data in application code
- Skill 2.3.1: Describe data classiļ¬cation (for example, personally identiļ¬able information [PII], protected health information [PHI]) - Skill 2.3.2: Encrypt environment variables that contain sensitive data - Skill 2.3.3: Use secret management services to secure sensitive data - Skill 2.3.4: Sanitize sensitive data - Skill 2.3.5: Implement application-level data masking and sanitization - Skill 2.3.6: Implement data access patterns for multi-tenant applications
Domain 3: Deployment
Subdomain 3.1: Prepare application artifacts to be deployed to AWS
- Skill 3.1.1: Manage the dependencies of the code module (for example, environment variables, conļ¬guration ļ¬les, container images) within the package - Skill 3.1.2: Organize ļ¬les and a directory structure for application deployment - Skill 3.1.3: Use code repositories in deployment environments - Skill 3.1.4: Apply application requirements for resources (for example, memory, cores) - Skill 3.1.5: Prepare application conļ¬gurations for speciļ¬c environments (for example, by using AWS AppConļ¬g)
Subdomain 3.2: Test applications in development environments
- Skill 3.2.1: Test deployed code by using AWS services and tools - Skill 3.2.2: Write integration tests and mock APIs for external dependencies - Skill 3.2.3: Test applications by using development endpoints (for example, conļ¬guring stages in Amazon API Gateway) - Skill 3.2.4: Deploy application stack updates to existing environments (for example, deploying an AWS SAM template to a diļ¬erent staging environment) - Skill 3.2.5: Test event-driven applications
Subdomain 3.3: Automate deployment testing
- Skill 3.3.1: Create application test events (for example, JSON payloads for testing AWS Lambda, API Gateway, AWS SAM resources) - Skill 3.3.2: Deploy API resources to various environments - Skill 3.3.3: Create application environments that use approved versions for integration testing (for example, Lambda aliases, container image tags, AWS Amplify branches, AWS Copilot environments) - Skill 3.3.4: Implement and deploy infrastructure as code (IaC) templates (for example, AWS SAM templates, AWS CloudFormation templates) - Skill 3.3.5: Manage environments in individual AWS services (for example, diļ¬erentiating between development, test, and production in API Gateway) - Skill 3.3.6: Use Amazon Q Developer to generate automated tests
Subdomain 3.4: Deploy code by using AWS Continuous Integration and Continuous Delivery (CI/CD) services
- Skill 3.4.1: Describe Lambda deployment packaging options - Skill 3.4.2: Describe API Gateway stages and custom domains - Skill 3.4.3: Update existing IaC templates (for example, AWS SAM templates, CloudFormation templates) - Skill 3.4.4: Manage application environments by using AWS services - Skill 3.4.5: Deploy an application version by using deployment strategies - Skill 3.4.6: Commit code to a repository to invoke build, test, and deployment actions - Skill 3.4.7: Use orchestrated workļ¬ows to deploy code to diļ¬erent environments - Skill 3.4.8: Perform application rollbacks by using existing deployment strategies - Skill 3.4.9: Use labels and branches for version and release management - Skill 3.4.10: Use existing runtime conļ¬gurations to create dynamic deployments (for example, using staging variables from API Gateway in Lambda functions) - Skill 3.4.11: Conļ¬gure deployment strategies (for example, blue/green, canary, rolling) for application releases
Domain 4: Troubleshooting and Optimization
Subdomain 4.1: Assist in a root cause analysis
- Skill 4.1.1: Debug code to identify defects - Skill 4.1.2: Interpret application metrics, logs, and traces - Skill 4.1.3: Query logs to ļ¬nd relevant data - Skill 4.1.4: Implement custom metrics (for example, Amazon CloudWatch embedded metric format [EMF]) - Skill 4.1.5: Review application health by using dashboards and insights - Skill 4.1.6: Troubleshoot deployment failures by using service output logs - Skill 4.1.7: Debug service integration issues in applications
Subdomain 4.2: Instrument code for observability
- Skill 4.2.1: Describe diļ¬erences between logging, monitoring, and observability - Skill 4.2.2: Implement an eļ¬ective logging strategy to record application behavior and state - Skill 4.2.3: Implement code that emits custom metrics - Skill 4.2.4: Add annotations for tracing services - Skill 4.2.5: Implement notiļ¬cation alerts for speciļ¬c actions (for example, notiļ¬cations about quota limits or deployment completions) - Skill 4.2.6: Implement tracing by using AWS services and tools - Skill 4.2.7: Implement structured logging for application events and user actions - Skill 4.2.8: Conļ¬gure application health checks and readiness probes
Subdomain 4.3: Optimize applications by using AWS services and features
- Skill 4.3.1: Deļ¬ne concurrency - Skill 4.3.2: Proļ¬le application performance - Skill 4.3.3: Determine minimum memory and compute power for an application - Skill 4.3.4: Use subscription ļ¬lter policies to optimize messaging - Skill 4.3.5: Cache content based on request headers - Skill 4.3.6: Implement application-level caching to improve performance - Skill 4.3.7: Optimize application resource usage - Skill 4.3.8: Analyze application performance issues - Skill 4.3.9: Use application logs to identify performance bottlenecks
Techniques & products