This course is designed for those who want to go beyond theoretical knowledge and develop skills in working with production code. Regardless of your level of experience - whether you are a junior developer looking to improve your skills or a data specialist who wants to structure your code - the course will help you move on to more complex tasks.
The 30-Day Design Challenge
The 30-Day Design Challenge is a 53-lesson 8 hours 52 minutes self-paced course by ArjanCodes (Arjan Egges). This course is designed for those who want to go beyond theoretical knowledge and develop skills in working with production code.
Course facts
- Lessons
- 53
- Duration
- 8 hours 52 minutes
- Level
- All levels
- Language
- English
- Updated
- Instructor
- ArjanCodes (Arjan Egges)
- Price
- Premium
The course offers 30 engaging software design assignments that will unlock your potential in problem-solving and creative programming approaches. You will encounter tasks of varying complexity: from simple examples focusing on design principles to deep practical exercises, such as creating an API with FastAPI and SQLAlchemy, working with GUI code, functional and object-oriented programming, as well as detailed type annotations in Python.
Who teaches The 30-Day Design Challenge? ArjanCodes (Arjan Egges)
ArjanCodes is the YouTube channel and paid-course brand of Arjan Egges, a Dutch software engineer and academic (formerly Utrecht University faculty) — one of the most cited independent voices on Python software design and architecture. The channel focuses on the engineering disciplines underneath maintainable Python codebases rather than language tutorials.
His CourseFlix listing carries three ArjanCodes courses: The Software Designer Mindset (COMPLETE), The Software Architect Mindset (COMPLETE), and The 30-Day Design Challenge. Together the courses cover the senior-engineer mental model — design patterns, architectural decisions, and the trade-offs that show up in real production codebases.
Material is paid and aimed at intermediate-and-up Python developers ready to think about software design as a deliberate professional skill. For broader content, see CourseFlix's Python and System Design & Architecture category pages.
What lessons are included in The 30-Day Design Challenge?
| # | Lesson Title | Duration | Access |
|---|---|---|---|
| 1 | Welcome! Demo | 01:59 | |
| 2 | Solution: KISS | 02:14 | |
| 3 | Solution: Type Annotations | 09:34 | |
| 4 | 5 Tips To Achieve Low Coupling In Your Python Code | 18:30 | |
| 5 | Solution: Decoupling | 03:31 | |
| 6 | Solution: DRY | 03:42 | |
| 7 | F-strings In Python_ Everything You Need To Know | 23:29 | |
| 8 | Solution: String Formatting | 02:33 | |
| 9 | Solution: Law Of Demeter | 03:19 | |
| 10 | Solution: Better Discounts | 04:32 | |
| 11 | The Strategy Pattern_ Write BETTER PYTHON CODE Part 3 | 15:31 | |
| 12 | How to Implement the Strategy Design Pattern in Python | 27:20 | |
| 13 | Solution: Payment Strategy | 03:08 | |
| 14 | Why the Plugin Architecture Gives You CRAZY Flexibility | 24:06 | |
| 15 | Solution: Plugins | 05:52 | |
| 16 | Functions vs Classes_ When to Use Which and Why_ | 10:49 | |
| 17 | Solution: Object Oriented To Functional | 06:32 | |
| 18 | Cohesion and Coupling_ Write BETTER PYTHON CODE Part 1 | 26:14 | |
| 19 | Solution: Cohesion | 03:53 | |
| 20 | Which Software Architecture Should You Use_ MVC, MVP, or MVVM_ | 24:27 | |
| 21 | Solution: MVP | 05:18 | |
| 22 | Composition Is Better Than Inheritance in Python | 23:29 | |
| 23 | Solution: Inheritance | 03:39 | |
| 24 | Dependency INVERSION vs Dependency INJECTION in Python | 17:52 | |
| 25 | Solution: Abstraction | 02:26 | |
| 26 | You Can Do Really Cool Things With Functions In Python | 19:47 | |
| 27 | Solution: Higher-Order Functions | 03:12 | |
| 28 | Solution: Configuration | 02:59 | |
| 29 | Next-Level Concurrent Programming In Python With Asyncio | 19:19 | |
| 30 | How To Easily Do Asynchronous Programming With Asyncio In Python | 23:09 | |
| 31 | Solution: Concurrency | 08:18 | |
| 32 | Solution: Refactoring | 03:36 | |
| 33 | A Deep Dive Into Iterators and Itertools in Python | 21:01 | |
| 34 | Solution: Itertools | 02:10 | |
| 35 | Solution: Inappropriate Intimacy | 01:58 | |
| 36 | End of Part 1 | 00:32 | |
| 37 | Real-Life Case of the Command Design Pattern | 32:25 | |
| 38 | Solution: Undo/Redo | 03:32 | |
| 39 | Raw SQL, SQL Query Builder, or ORM? | 16:19 | |
| 40 | Solution: SQL to ORM | 04:29 | |
| 41 | Solution: Unit Tests (Basic) | 02:48 | |
| 42 | Solution: Unit Tests (Advanced) | 02:15 | |
| 43 | Solution: Operations Layer | 04:35 | |
| 44 | Solution: Ticket Cancellation | 03:32 | |
| 45 | Observer Pattern Tutorial: I NEVER Knew Events Were THIS Powerful | 15:17 | |
| 46 | Solution: Messaging | 04:30 | |
| 47 | Attrs, Pydantic, or Python Data Classes? | 17:10 | |
| 48 | Do We Still Need Dataclasses? // PYDANTIC Tutorial | 16:33 | |
| 49 | Solution: Validation | 02:30 | |
| 50 | Let's Take The Bridge Pattern To The Next Level | 17:13 | |
| 51 | Solution: Bridge | 04:52 | |
| 52 | Solution: Mixins | 03:33 | |
| 53 | Wrapping Things Up | 00:57 |
Get instant access to all 52 lessons in this course, plus thousands of other premium courses. One subscription, unlimited knowledge.
Learn more about subscriptionWhat courses are similar to The 30-Day Design Challenge?
-
Updated 3y agoRefactoring UI - Complete Package
By: Adam WathanEnhance your design skills with the Refactoring UI course. Learn to create stunning and user-friendly interfaces using step-by-step tutorials and practical40m5/5 -
Updated 2y agoUI Design Demo Videos Vault
By: Andrija PrelecUncover the secrets of senior UI designers. Have you ever wondered how professionals create stunning interfaces?12h 8m5/5 -
Updated 3y agoKickstart your UI/UX Design Career / DesignCourse UI/UX
By: Gary SimonJoin the most interactive course for learning UI/UX Design with Gary Simon. The DesignCourse UI/UX Curriculum is taught entirely with Figma. You will go from ab16h 33m -
Updated 2y agoSolving Product Design Exercises: Questions & Answers (Full package)
By: Artiom Dashinsky"The Product Design Challenge Solving" is a practical guide for preparing for UI/UX and product design interviews.2h 19m -
Updated 3mo agoProduct Strategy for Designers
The course will help designers develop product thinking, influence decisions, work with stakeholders, and shape product strategy.4h 42m -
Updated 1y agoThe Design Manual - The only guide you need to master mobile designadr
By: Adrian Kuleszo (UI Adrian)"The Design Manual" is a comprehensive guide intended for mastering mobile design.28m -
Updated 2y agoThe Ultimate UI Typography Masterclass
By: Andrija PrelecThe course is filled with real advice and tricks from a senior product designer with a decade of experience in design.4h 53m
More courses by ArjanCodes (Arjan Egges)
-
Updated 2y agoThe Software Designer Mindset (COMPLETE)
"The Software Designer Mindset" is a course that teaches all aspects of software architecture and offers practical advice on creating scalable software.14h 32m5/5 -
Updated 2y agoThe Software Architect Mindset (COMPLETE)
The The Software Architect Mindset course teaches the fundamentals of software architecture and provides practical advice on creating software products that.12h 6m5/5