Master advanced techniques and best practices for building professional-quality backends. Following the concepts we mastered in Part 2, we're now going to take our backend to the next level.
The Ultimate Django Series: Part 3
You'll learn how to:
- Build an API for uploading files
- Write automated tests with PyTest
- Find performance bottlenecks
- Implement caching with Redis
- Run background jobs with Celery
- Deploy your backends to the cloud
- Plus much, much more.
By the end of Part 3, you'll have mastered these concepts, which means you'll be able to produce professional-quality backends with confidence.
About the Author: Mosh Hamedani (Code with Mosh)
Mosh Hamedani is the founder of Code with Mosh, one of the highest-volume independent online instructors in software education. He has been publishing courses continuously since the early Udemy era and has taught over a million students across his Udemy catalog and his standalone Code with Mosh platform. His teaching style is patient, rigorously structured, and deliberately beginner-tolerant — the courses are widely cited as some of the most accessible introductions to their respective topics.
The Code with Mosh catalog covers an unusually wide span: web development with HTML / CSS / JavaScript / React / Angular / Node.js, Python and Django, C# and .NET, mobile development with React Native and Flutter, SQL and database fundamentals, and the algorithm / data-structure interview prep tracks. Few independent instructors maintain this much breadth at consistent quality.
The CourseFlix listing under this source carries over 35 Code with Mosh courses spanning that range. Material is paid; Code with Mosh runs on per-course pricing on the original platform. Courses are aimed primarily at developers picking up a new technology from a clean start through to working production proficiency.
Watch Online 83 lessons
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | 1- Welcome Demo | 00:50 | |
| 2 | 2- Setting Up the Project | 05:23 | |
| 3 | 1- Introduction | 00:21 | |
| 4 | 2- Managing Media Files | 03:55 | |
| 5 | 3- Adding Images to Products | 03:00 | |
| 6 | 4- Building an API to Upload Images | 06:15 | |
| 7 | 5- Returning Images from the API | 02:50 | |
| 8 | 6- Validating Uploaded Files | 04:01 | |
| 9 | 7- Setting Up the Client App | 01:48 | |
| 10 | 8- Enabling CORS | 05:34 | |
| 11 | 9- Managing Images in the Admin | 09:13 | |
| 12 | 1- Introduction | 00:16 | |
| 13 | 2- Setting up a Fake SMTP Server | 02:34 | |
| 14 | 3- Configuring the Email Backend | 02:39 | |
| 15 | 4- Sending Emails | 04:35 | |
| 16 | 5- Attaching Files | 02:06 | |
| 17 | 6- Sending Templated Emails | 04:59 | |
| 18 | 1- Introduction | 00:16 | |
| 19 | 2- Introduction to Celery | 02:02 | |
| 20 | 3- Message Brokers | 02:51 | |
| 21 | 4- Installing Redis | 02:58 | |
| 22 | 5- Celery and Windows | 00:50 | |
| 23 | 6- Setting Up Celery | 05:30 | |
| 24 | 7- Creating and Executing Tasks | 05:40 | |
| 25 | 8- Scheduling Periodic Tasks | 03:54 | |
| 26 | 9- Monitoring Celery Tasks | 01:42 | |
| 27 | 1- Introduction | 00:23 | |
| 28 | 2- What is Automated Testing | 02:12 | |
| 29 | 3- Test Behaviours, Not Implementations | 02:51 | |
| 30 | 4- Tooling | 02:02 | |
| 31 | 5- Your First Test | 04:45 | |
| 32 | 6- Running Tests | 05:02 | |
| 33 | 7- Skipping Tests | 00:55 | |
| 34 | 8- Continuous Testing | 01:57 | |
| 35 | 9- Running and Debugging Tests in VSCode | 02:30 | |
| 36 | 10- Authenticating the User | 00:58 | |
| 37 | 11- Single or Multiple Assertions | 05:49 | |
| 38 | 12- Fixtures | 07:39 | |
| 39 | 13- Creating Model Instances | 09:00 | |
| 40 | 1- Introduction | 00:20 | |
| 41 | 2- Why Performance Testing | 01:23 | |
| 42 | 3- Installing Locust | 00:33 | |
| 43 | 4- Creating a Test Script | 07:52 | |
| 44 | 5- Running a Test Script | 04:14 | |
| 45 | 6- Running a Performance Test | 02:53 | |
| 46 | 7- Performance Optimization Techniques | 03:52 | |
| 47 | 8- Profiling with Silk | 07:58 | |
| 48 | 9- Verifying Optimizations | 03:45 | |
| 49 | 10- Stress Testing | 02:49 | |
| 50 | 1- Introduction | 00:17 | |
| 51 | 2- What is Caching | 02:24 | |
| 52 | 3- Cache Backends | 01:34 | |
| 53 | 4- Simulating a Slow API | 01:11 | |
| 54 | 5- Getting a Baseline Performance Benchmark | 01:25 | |
| 55 | 6- Installing Redis | 00:56 | |
| 56 | 7- Configuring Caching | 01:17 | |
| 57 | 8- Using the Low-level Cache API | 03:28 | |
| 58 | 9- Caching Views | 04:50 | |
| 59 | 10- Verifying Optimizations | 01:48 | |
| 60 | 11- Managing Redis Cache Content | 02:41 | |
| 61 | 1- Introduction | 00:17 | |
| 62 | 2- Adding the Home Page | 02:38 | |
| 63 | 3- Adding Static Assets | 03:08 | |
| 64 | 4- Collecting Static Assets | 02:48 | |
| 65 | 5- Serving Static Assets | 01:00 | |
| 66 | 6- Configuring Logging | 06:28 | |
| 67 | 7- Logging | 05:31 | |
| 68 | 8- Managing Development and Production Settings | 07:14 | |
| 69 | 9- Serving the Application with Gunicorn | 02:10 | |
| 70 | 1- Introduction | 00:20 | |
| 71 | 2- Hosting Options | 00:54 | |
| 72 | 3- Adding Project to Git | 02:04 | |
| 73 | 4- Getting Started with Heroku | 01:27 | |
| 74 | 5- Creating a Heroku App | 02:00 | |
| 75 | 6- Setting Environment Variables | 01:50 | |
| 76 | 7- Creating a Procfile | 01:59 | |
| 77 | 8- Provisioning a MySQL Database | 03:51 | |
| 78 | 9- Provisioning a Redis Instance | 02:52 | |
| 79 | 10- Provisioning an SMTP Server | 01:36 | |
| 80 | 11- Deploying the Application | 05:53 | |
| 81 | 12 - Populating the Database | 02:14 | |
| 82 | 13- Dockerizing the App | 09:57 | |
| 83 | 14- Course Wrap Up | 00:25 |
Get instant access to all 82 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionRelated courses
-
Updated 2y agoThe Complete Guide to Django REST Framework and Vue JS
By: UdemyHi! Welcome to The Complete Guide to Django REST Framework and Vue JS course! In this course you will learn how to create professional REST APIs with Python and13h 40m -
ClassicThe Ultimate Django Series: Part 2
By: Mosh Hamedani (Code with Mosh)Do you want to take your Django skills to the next level and become that professional back-end developer that companies love to hire?5h 41m5/5 -
Updated 2y agoReact and Django: A Practical Guide with Docker
By: UdemyLearn how to create an Admin App using React and Django Rest Framework. Django 3.1, React Typescript, Redux, Docker, Authentication and Authorisation, Upload Im6h 50m