Getting Started

Learn about the prerequisites and the target audience for this course.

This course is a comprehensive guide to developing Amazon Web Services (AWS) Lambda functions by using the .NET software development kit (SDK) and the C# language.

Target audience

This course is primarily aimed at .NET developers who want to learn how to build AWS Lambda functions. These are a common part of distributed applications deployed in the AWS cloud, so this course would benefit .NET developers working for an organization that uses AWS as its primary cloud provider. Even if your organization isn’t using AWS Lambda functions now, it’s quite likely that it will start using them sooner rather than later because of their immense utility. If you’re a .NET developer interested in learning how to work with serverless applications, you will benefit from this course, especially if you work in an organization that already uses AWS.

Prerequisites

All code samples used in this course are written in C#. Therefore, basic knowledge of this language is required. You should be familiar with the following concepts:

  • Basic C# syntax and keywords

  • Classes and interfaces

  • Methods, fields, and properties

  • Namespaces

  • Access modifiers

  • Annotation of methods with attributes

You will also need to understand the basics of .NET, including the following:

  • Structure of the Program.cs file and application startup logic

  • Basic structure of a .csproj file

  • Adding third-party NuGet packages to a project

Although AWS Lambda implemented in .NET is somewhat similar to ASP.NET Core, not all application types supported by AWS Lambda rely on ASP.NET Core. No prior experience working with ASP.NET Core is necessary, but you will need basic knowledge of the following HTTP concepts:

  • URL structure, including path and query string

  • HTTP verbs (such as GET and POST)

  • Submitting requests and receiving responses

Learning roadmap

We’ll begin by examining the fundamentals of serverless applications in general and AWS Lambda functions in particular. Then we’ll take a look at the AWS Lambda .NET project structure for all supported application types. After that, we’ll learn how to perform automated and manual testing of AWS Lambda functions.

Next, we’ll move on to more advanced concepts. We’ll learn how to integrate AWS Lambda with other AWS services and get to know how AWS Lambda can be integrated into Amazon Step Functions to orchestrate multistep workflows.

The final chapters of the course will focus on the maintenance of hosted AWS Lambda functions. We’ll start with the process of error handling and then cover the fundamentals of logging and monitoring. Finally, we’ll examine the security aspects of AWS Lambda functions.