We may earn an affiliate commission when you visit our partners.
Course image
Morgan Willis and Russell Sayers

This course teaches experienced developers how to programmatically interact with AWS services to build web solutions. It guides you through a high-level architectural discussion on resource selection and dives deep into using the AWS Software Development Kits (AWS SDKs) and Command Line Interface (AWS CLI) to build and deploy your cloud applications. You build a sample application during this course, learning how to set up permissions to the development environment, adding business logic to process data using AWS core services, configure user authentications, deploy to AWS cloud, and debug to resolve application issues. The course includes code examples to help you implement the design patterns and solutions discussed in the course. The labs reinforce key course content and help you to implement solutions using the AWS SDK for Python, .NET, and Java, the AWS CLI, and the AWS Management Console.

What's inside

Learning objectives

  • Build a simple end-to-end cloud application using aws software development kits (aws sdks), command line interface (aws cli), and ides.
  • Configure aws identity and access management (iam) permissions to support a development environment.
  • Install and use amazon codewhisperer to generate code using genai within an ide.
  • Use multiple programming patterns in your applications to access aws services.
  • Use aws sdks to perform crud (create, read, update, delete) operations on amazon simple storage service (amazon s3) and amazon dynamodb resources.
  • Build aws lambda functions with other service integrations for your web applications.
  • Understand the benefits of microservices architectures and serverless applications to design.
  • Develop api gateway components and integrate with other aws services.
  • Explain how amazon cognito controls user access to aws resources.
  • Build a web application using cognito to provide and control user access.
  • Use devops methodology to reduce the risks associated with traditional application releases and identify aws services that help in implementing devops practices.
  • Use aws serverless application model (aws sam) to deploy an application.
  • Observe your application build using amazon x-ray.

Syllabus

Module 1 – Getting Started with Development on AWS
Module 2 – Getting Started with Permissions
Module 3 – Getting Started with Storage
Module 4 – Processing your Storage Operations
Read more
Module 5 – Getting Started with Databases
Module 6 – Processing your Database Operations
Module 7 – Processing your Application Logic
Module 8 – Managing the APIs
Module 9 – Building a Modern Application
Module 10 – Granting Access to your Application Users
Module 11 – Deploying your Application
Module 12 – Observing your Application

Good to know

Know what's good
, what to watch for
, and possible dealbreakers
Taught by Morgan Willis and Russell Sayers, who are sought-after leaders in the field of cloud computing
Builds a strong foundation for intermediate learners who aspire to work as cloud developers
Develops professional skills that are highly sought-after by employers, especially in the cloud computing domain
Covers key industry topics such as DevOps, serverless architecture, and microservices, which are in high demand
Provides practical hands-on experience through labs and projects, allowing learners to apply what they learn to real-world scenarios
Includes multi-modal learning materials such as videos, readings, and discussions, which cater to diverse learning preferences

Save this course

Save Developing on AWS to your list so you can find it easily later:
Save

Activities

Be better prepared before your course. Deepen your understanding during and after it. Supplement your coursework and achieve mastery of the topics covered in Developing on AWS with these activities:
Review basic programming concepts
Reinforce basic programming concepts that will be used throughout the course.
Browse courses on Programming Concepts
Show steps
  • Review variables, data types, and operators.
  • Practice writing simple programs in a language of your choice.
Organize and Review Course Materials
Enhance understanding and retention by organizing, reviewing, and summarizing course materials.
Browse courses on Review
Show steps
  • Gather all course notes, assignments, quizzes, and exams.
  • Create summaries and cheat sheets for key concepts.
  • Practice explaining concepts to yourself or others.
Review the basics of software development
Reviewing the basics of software development will help you refresh your knowledge and ensure you have a strong foundation for learning the material in this course.
Browse courses on Programming Fundamentals
Show steps
  • Read through your old notes or textbooks on software development.
  • Complete some online tutorials or exercises on basic programming concepts.
  • Attend a refresher course or workshop on software development.
26 other activities
Expand to see all activities and additional details
Show all 29 activities
Follow tutorials on using AWS CLI
Enhance understanding of using AWS CLI for managing AWS resources through interactive tutorials
Browse courses on AWS CLI
Show steps
  • Identify relevant AWS CLI tutorials
  • Follow the tutorials and practice using AWS CLI
Fundamentals of Computation Theory
Build a strong foundational understanding of the mathematical and theoretical underpinnings of computer science.
Show steps
  • Read assigned chapters from the book.
  • Attend corresponding course lectures to reinforce concepts.
  • Attempt practice problems on the covered chapters.
Compile a list of resources on IAM permissions
Stay up-to-date and expand knowledge by accessing a curated compilation of resources on IAM permissions
Browse courses on IAM
Show steps
  • Search and gather resources on IAM permissions
  • Organize and review the resources
Find a mentor who can provide guidance on AWS
Provide students with access to additional support and guidance.
Browse courses on Mentoring
Show steps
  • Identify potential mentors who have experience with AWS.
  • Reach out to mentors and ask for their guidance and support.
Follow Coding Tutorials
Expand your knowledge and skills by exploring and following guided tutorials related to the course topics.
Browse courses on Python
Show steps
  • Search for online tutorials on specific topics or technologies covered in the course.
  • Choose reputable tutorials from reliable sources.
  • Follow the instructions and practice the examples provided in the tutorials.
Follow tutorials on AWS SDKs and AWS CLI
Help students gain hands-on experience using the tools they will need for the course.
Browse courses on AWS SDK
Show steps
  • Find tutorials that cover the specific AWS SDK and AWS CLI commands you will use in the course.
  • Follow the tutorials step-by-step and try out the commands yourself.
Answer questions and provide support to other students
Help students build their confidence and understanding by helping others.
Browse courses on Mentoring
Show steps
  • Join the course discussion forums and answer questions from other students.
  • Create a study group and lead discussions on specific course topics.
Build a simple web application with AWS SDK
Develop a solid foundation in using AWS SDK to interact with AWS services and build web solutions
Show steps
  • Choose a simple web application idea
  • Set up your AWS development environment
  • Install and configure AWS SDK
  • Build the core functionality of your application
  • Deploy your application to AWS
Attend a workshop on AWS Serverless Application Model (SAM)
Gain hands-on experience deploying an application using SAM and learn best practices for serverless development
Show steps
  • Find an AWS SAM workshop
  • Participate in the workshop
  • Deploy an application using SAM
Practice Code Challenges on LeetCode
Develop your problem-solving and coding skills by working through coding challenges on LeetCode, a platform specifically designed to help programmers improve their coding proficiency.
Browse courses on Problem Solving
Show steps
  • Sign up for a LeetCode account
  • Select a problem to solve
  • Implement your solution in your preferred programming language
  • Submit your solution for evaluation
Problem-Solving Drills
Enhance problem-solving abilities by practicing and solving a variety of algorithmic problems.
Browse courses on Algorithms
Show steps
  • Identify the problem statement and understand the requirements.
  • Analyze the problem to determine the appropriate algorithm or data structure to use.
  • Implement the algorithm or data structure efficiently in your preferred programming language.
  • Test and debug the implementation to ensure correctness.
Complete coding challenges and exercises
Completing coding challenges and exercises will help you improve your programming skills and prepare you for the hands-on assignments in this course.
Browse courses on Coding Challenges
Show steps
  • Find a coding challenge or exercise website or platform.
  • Select a challenge or exercise that is appropriate for your skill level.
  • Attempt to solve the challenge or exercise.
  • Review your solution and identify areas for improvement.
Solve coding challenges using AWS SDKs
Provide students with opportunities to apply their skills and build confidence.
Browse courses on AWS SDK
Show steps
  • Find coding challenges that involve using AWS SDKs.
  • Solve the challenges and test your code against the expected output.
Solve coding challenges using Python and AWS SDK
Sharpen problem-solving and coding skills by practicing with Python and AWS SDK
Browse courses on Python
Show steps
  • Find coding challenges related to AWS SDK
  • Solve the challenges using Python and AWS SDK
  • Review and improve your solutions
Build a Basic Web Application
Demonstrate your understanding by creating a functional web application using the skills and concepts covered in the course.
Browse courses on Web Development
Show steps
  • Design the layout and user interface of the application.
  • Implement the front-end using HTML, CSS, and JavaScript.
  • Set up the back-end server using Python, Flask, or Django.
  • Connect the front-end and back-end to make the application functional.
Build a Sample Serverless Web Application using AWS Lambda and API Gateway
Solidify your understanding of serverless architecture and cloud computing by building a simple web application using AWS Lambda and API Gateway. This hands-on experience will give you practical exposure to these technologies.
Browse courses on Serverless Applications
Show steps
  • Set up your AWS account and environment
  • Create an AWS Lambda function
  • Create an Amazon API Gateway API and connect it to your Lambda function
  • Deploy your application and test its functionality
Build a simple web application
Building a simple web application will help you apply the concepts you learn in this course to a practical project.
Browse courses on Web Development
Show steps
  • Choose a simple web application idea.
  • Design the architecture of your application.
  • Implement the frontend and backend of your application.
  • Test and debug your application.
  • Deploy your application to a web hosting platform.
Build a simple web application using AWS
Allow students to demonstrate their understanding of the course material by building a real-world application.
Browse courses on Web Application
Show steps
  • Choose a simple web application idea that can be implemented using AWS.
  • Design the architecture of your application and select the appropriate AWS services.
  • Implement your application using AWS SDKs and deploy it to AWS cloud.
Attend a workshop on AWS best practices
Provide students with opportunities to learn from experts and network with others in the field.
Browse courses on AWS
Show steps
  • Find an AWS best practices workshop that aligns with your interests.
  • Attend the workshop and actively participate in the discussions and activities.
Contribute to Open-Source Projects
Practice teamwork, problem-solving, and contribute to the broader developer community by participating in open-source projects.
Browse courses on Open Source
Show steps
  • Identify open-source projects related to your interests.
  • Contact the project maintainers to offer your contributions.
  • Understand the project's codebase and workflow.
  • Make meaningful contributions to the project.
Build a microservices architecture for a web application
Gain practical experience in designing and implementing microservices architecture using AWS services
Show steps
  • Plan the microservices architecture
  • Create separate services for each component
  • Integrate services using API Gateway
  • Deploy the microservices architecture to AWS
  • Monitor and manage the microservices
Attend Industry Meetups
Connect with professionals in the field, learn about industry best practices, and explore potential career opportunities.
Browse courses on Networking
Show steps
  • Identify relevant industry meetups or conferences.
  • Register and attend the events.
  • Engage with speakers, attendees, and potential mentors.
Write a blog post or article about a topic covered in this course
Writing a blog post or article about a topic covered in this course will help you solidify your understanding of the material and share your knowledge with others.
Show steps
  • Choose a topic that you are interested in and that you have learned about in this course.
  • Research the topic and gather information from credible sources.
  • Write a well-organized and informative blog post or article.
  • Edit and proofread your writing.
  • Publish your blog post or article on a platform of your choice.
Participate in Hands-on Workshops
Enhance practical skills through hands-on workshops led by industry experts.
Browse courses on Web Development
Show steps
  • Identify and register for workshops aligned with your interests.
  • Attend the workshops and actively participate in the exercises.
  • Apply the learned techniques and knowledge to your own projects.
Participate in a hackathon or coding competition
Participating in a hackathon or coding competition will challenge you to apply your skills in a competitive environment.
Show steps
  • Find a hackathon or coding competition that is relevant to your interests and skill level.
  • Form a team or work on your own.
  • Develop a solution to the challenge or problem.
  • Submit your solution and compete against other participants.
Mentor a junior developer or student
Mentoring a junior developer or student will help you reinforce your knowledge and develop your leadership skills.
Show steps
  • Find a junior developer or student who is interested in learning about the topics covered in this course.
  • Set up regular meetings to work with your mentee.
  • Provide guidance and support to your mentee as they learn and develop their skills.
  • Encourage your mentee to ask questions and seek feedback.

Career center

Learners who complete Developing on AWS will develop knowledge and skills that may be useful to these careers:
Software Development Manager
A Software Development Manager would be responsible for the development of enterprise-level cloud and software applications. Many businesses outsource this role to maximize the efficiency of their product development processes. This role would be an excellent next step for a graduate of this program. It would be particularly helpful to demonstrate that you can apply the management concepts from this course in a real-world environment through an internship or side project.
Cloud Architect
A Cloud Architect is a high-level role responsible for designing, planning, and managing cloud computing systems. Most Cloud Architects have a background in software development and programming. With this course, you will learn the leading cloud provider's software development kits, command line interfaces, and cloud management consoles. These tools will be essential to building your competence in this field.
DevOps Engineer
The DevOps Engineer role is a combination of software development and IT operations. The DevOps Engineer bridges the gap between development and operations, working to improve communication and collaboration between the two teams. This course will build a solid foundation for this role by providing you with a thorough understanding of AWS Software Development Kits (SDKs), Command Line Interface (AWS CLI), and IDEs.
Systems Engineer
Systems Engineers design, develop, deploy, maintain, and troubleshoot complex computer systems, including hardware, software, and networks. There is often overlap with the Cloud Architect role. This course can help you gain foundational knowledge in cloud computing by exposing you to AWS SDKs and services such as Amazon S3, DynamoDB, Lambda, API Gateway, and Cognito.
Software Engineer
Software Engineers apply engineering principles to the design, development, deployment, testing, and maintenance of software systems. With the skills you will build in this course, you could specialize as a Cloud Software Engineer, responsible for designing and developing cloud-based applications.
Data Scientist
Data Scientists use scientific methods, processes, algorithms, and systems to extract knowledge and insights from data in various forms, both structured and unstructured. This course can be helpful in a data science career by providing you with a solid foundation in AWS services such as S3, DynamoDB, and Lambda. These services can be used to store, process, and analyze large datasets.
IT Manager
IT Managers plan, implement, and oversee the use of information technology within an organization. This course can be useful for an IT Manager who wants to gain a better understanding of cloud computing and how it can be used to improve their organization's IT infrastructure.
Web Developer
Web Developers design and develop websites and web applications. This course may be helpful for a Web Developer who wants to gain a better understanding of cloud computing and how it can be used to improve the performance and reliability of their web applications.
Database Administrator
Database Administrators are responsible for the maintenance and administration of databases. This course may be helpful for a Database Administrator who wants to gain a better understanding of cloud computing and how it can be used to improve the performance and reliability of their databases.
Network Engineer
Network Engineers design, implement, and maintain computer networks. This course may be helpful for a Network Engineer who wants to gain a better understanding of cloud computing and how it can be used to improve the performance and reliability of their networks.
Security Engineer
Security Engineers are responsible for the security of computer systems and networks. This course may be helpful for a Security Engineer who wants to gain a better understanding of cloud computing and how it can be used to improve the security of their systems and networks.
Business Analyst
Business Analysts analyze business needs and develop solutions to improve business processes. This course may be helpful for a Business Analyst who wants to gain a better understanding of cloud computing and how it can be used to improve the efficiency and effectiveness of their business processes.
Project Manager
Project Managers plan, execute, and close projects. This course may be helpful for a Project Manager who wants to gain a better understanding of cloud computing and how it can be used to improve the efficiency and effectiveness of their projects.
Quality Assurance Analyst
Quality Assurance Analysts test software to ensure that it meets the requirements and specifications. This course may be helpful for a Quality Assurance Analyst who wants to gain a better understanding of cloud computing and how it can be used to improve the quality of their software.
Technical Writer
Technical Writers create documentation for software and other technical products. This course may be helpful for a Technical Writer who wants to gain a better understanding of cloud computing and how it can be used to improve the quality of their documentation.

Reading list

We've selected seven books that we think will supplement your learning. Use these to develop background knowledge, enrich your coursework, and gain a deeper understanding of the topics covered in Developing on AWS.
Provides insights and best practices for designing and building scalable architectures on AWS, covering topics such as microservices, data consistency, and fault tolerance.
Provides a comprehensive guide to designing and implementing serverless architectures on AWS, covering key concepts such as microservices, event-driven programming, and cloud-native development.
Offers a deep dive into the principles and techniques of designing and building data-intensive applications.
Introduces the fundamentals of machine learning and provides practical guidance on implementing machine learning solutions on AWS.

Share

Help others find this course page by sharing it with your friends and followers:

Similar courses

Here are nine courses similar to Developing on AWS.
Developing on AWS
Most relevant
AWS Certified Developer - Associate (DVA-C02)
Most relevant
Cloud Computing Security
Most relevant
Authoritative AWS
Most relevant
AWS Certified Solutions Architect - Associate (SAA-C03)
Most relevant
Master AWS Lambda Functions for Data Engineers using...
Most relevant
AWS Services
Most relevant
MLOps Platforms: Amazon SageMaker and Azure ML
Most relevant
Deploying Serverless Applications in AWS Using the...
Most relevant
Our mission

OpenCourser helps millions of learners each year. People visit us to learn workspace skills, ace their exams, and nurture their curiosity.

Our extensive catalog contains over 50,000 courses and twice as many books. Browse by search, by topic, or even by career interests. We'll match you to the right resources quickly.

Find this site helpful? Tell a friend about us.

Affiliate disclosure

We're supported by our community of learners. When you purchase or subscribe to courses and programs or purchase books, we may earn a commission from our partners.

Your purchases help us maintain our catalog and keep our servers humming without ads.

Thank you for supporting OpenCourser.

© 2016 - 2024 OpenCourser