Developing with S3: AWS with Python and Boto3 Series

Niyazi Erdogan

Created by

Niyazi Erdogan

0.00 Star (0)

3 Hours

37 Lesson



  • S3 is by far the most popular AWS service out there and the demand is only increasing! Most of the Fortune 500 companies, mid-size companies and startups are making use of it heavily!

  • If you want to learn ins and outs of S3 and how to implement solutions with S3, come join me in this course!

S3 is Simple Storage Service from AWS and has many great features you can make use of in your applications and even in your daily life! You can use S3 to host your memories, documents, important files, videos and even host your own website from there!

Join me in this journey to learn ins and outs of S3 to gain all the necessary information you need to work with S3 using Python and Boto3!

Let’s take a closer look at what we’re going to cover in this course step-by-step.

  • In this course, we’ll start of with what we’ll build throughout the course and what you need to have on your computer to follow along with me.

  • Don’t worry; I’ll explain everything you need very clearly and I’ll show you what you need to install and setup on your computer to work with S3. There will be two different sections for Windows and MacOS users. These sections are basically identical and show how you can prepare your computer environment to be ready to work with S3! I’ll show you how to install Python, Boto3 and configure your environments for these tools. I’ll also show you how you can create your own AWS account step-by-step and you’ll be ready to work AWS in no time!

  • When we’re done with preparing our environment to work AWS with Python and Boto3, we’ll start implementing our solutions for AWS.

  • First and foremost, we’ll create a Bucket; Bucket is the fundamental part of S3 and its designed all-around buckets. We’ll build on top of that by adding a Bucket Policy. With bucket policies, you can decide who accesses and can do what on your bucket and objects inside it. Then we’ll learn how to do basic operations around buckets like listing the buckets, getting bucket properties, Encrypting Bucket Objects with Server-Side Encryption and much more!

  • Then we’ll move on to another important part of working with S3 and that is uploading. We’ll start of with learning how to upload a small file to S3. You’ll learn how easy it is to do so. Next up is Multi-Part Upload for large files! I’ll show you how to implement Multi-Part Uploads and make use threading and parallelization so you can boost the upload speeds for your objects!

  • Versioning is another key aspect of S3 and it has various benefits. For example, with versioning enabled, your objects are near impossible to delete so you won’t lose them with accidental deletes! Versioning provides a safe-way to version your files so you upload onto to the same object over and over again and keep track of all along the process! I’ll show you how you can enable versioning on your buckets and how you can upload new versions for your objects.

  • We’ll also configure lifecycle policies for our buckets to manage our objects present and the future. With lifecycle policies, you can decide when and what to do with your objects. For example, you can decide to move your unused files to a cheaper storage class like Glacier. So I’ll show you how you can design your own lifecycle policies on your buckets and objects and apply them with your code.

  • And here comes S3 Static Website Hosting! Apart from many other great benefits of using S3, you can use it to store your static HTML, Javascript and CSS based websites on it! S3 even gives you a URL so everyone can access it anywhere in the world! We’ll not stop there of course; we’ll learn that Route53 can be used to route traffic to our S3-Hosted Website using our own custom domain!

  • So we’ll implement our S3 Static Website Hosting from scratch. We’ll design a simple website and configure it as a website inside our Bucket. Once we have our website up and running and accessible via a URL, we’ll move on to Route53 to configure our own Domain Name or DNS to route traffic to our S3 Hosted Website from our own custom domain!

Again, S3 is an amazing service from AWS and there are hundreds of ways you can make use of it. Let’s not lose more time and jump right into the implementation with S3 so I’ll see you in the course!


Little to no experience with Python

Any Python interpreter. Default is fine but I recommend PyCharm

An AWS Account - Free Tier Available!

General knowledge on AWS would be nice

Not necessary but theoretical knowledge on S3 would be nice!

Who This Course is For

Beginners on AWS who wants to put their theory in practice

AWS Cloud Architect Associate Exam Preppers who wants to practice their theories with real projects

Who wants to learn how to Host Static Websites with S3!

Who wants to learn Multi-Part Upload!

Who wants to learn how to work with S3

Who wants to learn how to implement Infrastructure-as-a-Code or IaaS on AWS

Who wants to learn how to develop infrastructures on AWS using Python

Who wants to learn AWS Python API or namely Boto3

What You Will be Learn

You'll be able to host your own website with S3!

You'll learn and be able to use a real domain of yours using Route53 on S3 to route traffic to your website!

You'll be able to upload any-size file to S3 by implementing Multi-Part Upload!

You'll learn how to create buckets, upload files, apply lifecycle policies and much more!

You'll be able to implement any sort of infrastructure with S3 on AWS with Python!

You'll learn how to code against AWS API using Python and Boto3!

You'll be confident to work with AWS APIs using Python for any kind of AWS Resource on S3

Niyazi Erdogan

AWS Certified Solutions Architect, Software Engineer

0.00 Star Rating

6 Courses

Dragon Zap Instructor

Hi, I'm Niyazi Erdoğan. I'm a software engineer and AWS Certified Solutions Architect with over ten years of experience in various fields. I'm living in one of the most beautiful cities in the world, Istanbul. I'm a self-taught programmer and I've been programming since I was in middle-school. My experience ranges from embedded development to server-side and client-side development technologies. I started my career while I was only a student as a Java Developer in healthcare industry as a private contractor. Then I moved in to the largest telecommunication company of Turkey which is Turkcell. After several years and various different positions at Turkcell, I moved in to Portugal and worked for another large telecommunication company for several years with Java technologies. After the telecommunication industry experience and several different experiences, I joined one of the largest companies of its sectors which is Siemens. I currently works at Siemens working with various Java and Cloud technologies Besides my day job, I really enjoy developing software with lots of different technologies.On the other hand, I do love to follow tech conferences and blogs about latest technologies and tools. I also like to read books within or without my field of expertise and love to watch series like Westworld and Game of Thrones. And I make sure that I stay healthy with daily walking, running and workout.


Course Rating






Students Feedback (0)
Sort by:


This course includes:
  • dollar

    Full Lifetime Access

  • clock

    30 Days Money Back Guarantee

  • paper-plus

    Free Exercises File

  • airplay

    Watch online or offline

  • clipboard

    Certificate of Completion

shape shape