

# Content Domain 1: Development with AWS Services


**Topics**
+ [

## Task 1: Develop code for applications hosted on AWS
](#developer-associate-02-domain1-task1)
+ [

## Task 2: Develop code for AWS Lambda
](#developer-associate-02-domain1-task2)
+ [

## Task 3: Use data stores in application development
](#developer-associate-02-domain1-task3)

## Task 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 differences between stateful and stateless concepts
+ Skill 1.1.3: Describe differences between tightly coupled and loosely coupled components
+ Skill 1.1.4: Describe differences between synchronous and asynchronous patterns
+ Skill 1.1.5: Create fault-tolerant and resilient applications in a programming language (for example, Java, C\$1, 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)

## Task 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: Configure Lambda functions by defining 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

## Task 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 differences between query and scan operations
+ Skill 1.3.4: Define 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)