

# Content Domain 1: Development with AWS Services
<a name="developer-associate-03-domain1"></a>

**Topics**
+ [Task 1.1: Develop code for applications that are hosted on AWS.](#dva-03-task1.1)
+ [Task 1.2: Develop code for AWS Lambda.](#dva-03-task1.2)
+ [Task 1.3: Use data stores during application development.](#dva-03-task1.3)

## Task 1.1: Develop code for applications that are hosted on AWS.
<a name="dva-03-task1.1"></a>
+ Skill 1.1.1: Identify tightly coupled and loosely coupled systems, and use AWS services to decouple system components.
+ Skill 1.1.2: Choose between synchronous and asynchronous patterns (for example, Amazon API Gateway synchronous invocation, Amazon SQS based asynchronous processing, Amazon EventBridge event-driven workflows).
+ Skill 1.1.3: Create and maintain fault-tolerant and resilient applications (for example, by configuring retry with backoff, graceful degradation).
+ Skill 1.1.4: Create, extend, and maintain APIs (for example, configure response/request transformations, by enforcing validation rules).
+ Skill 1.1.5: Develop code that interacts with AWS services by using APIs and AWS SDKs.
+ Skill 1.1.6: Manage streaming data by using AWS services.
+ Skill 1.1.7: Serialize and deserialize data to integrate application code with AWS services.
+ Skill 1.1.8: Implement event-driven patterns (for example, by using EventBridge, Amazon S3 Event Notifications, Amazon SQS, Amazon SNS).
+ Skill 1.1.9: Use AI-assisted development tools to generate, review, and optimize code (for example, spec-driven code generation, automated code reviews, intelligent code completion, refactoring suggestions, security scanning).
+ Skill 1.1.10: Integrate managed AWS AI services into applications.

## Task 1.2: Develop code for AWS Lambda.
<a name="dva-03-task1.2"></a>
+ Skill 1.2.1: Grant Lambda functions access to private resources in VPCs.
+ Skill 1.2.2: Configure Lambda functions by defining environment variables and parameters (for example, memory, concurrency, timeout, runtime, handler, layers, extensions).
+ Skill 1.2.3: Handle event lifecycles and errors (for example, by using Lambda destinations, dead-letter queues).
+ Skill 1.2.4: Integrate Lambda functions with AWS services by using code, event source mappings, and destinations (for example, API Gateway, Amazon DynamoDB).

## Task 1.3: Use data stores during application development.
<a name="dva-03-task1.3"></a>
+ Skill 1.3.1: Manage data lifecycles (for example, by using Amazon S3 Lifecycle policies, TTL, retention periods).
+ Skill 1.3.2: Choose AWS data stores (for example, Amazon ElastiCache, DynamoDB, Amazon S3, Amazon RDS) based on access patterns.
+ Skill 1.3.3: Determine the appropriate caching solution based on data store selection.
+ Skill 1.3.4: Configure DynamoDB to support applications (for example, by selecting high-cardinality partition keys, applying read consistency models, performing query and scan operations, by defining keys, attributes, and indexes).