The 30-Day Design Challenge

Learn to solve a variety of software design problems.

Get the practice you're missing. Have fun, challenge yourself and get out of your comfort zone.

If you have a computer science or ICT education, you know it's difficult to transition to work on actual production code.

I realized this when I stopped teaching at university and started a software company. Traditional Computer Science education doesn't prepare you all that well for the job market.

You may know the theoretical concepts. But it's much harder to get the practice that helps you become a great software developer. I learned it the hard way: by trial and error. On top of that, many people in IT or data science didn't follow a traditional computer science education at all. For example, you might come from a different field and have switched to IT because there are more job opportunities. Whereas one of your colleagues might have started in a coding school.

Whether you're a junior developer looking to get better at writing complex software or a data scientist looking to organize your code better, you likely struggle to find qualitative practice material online and aimed at the intermediate-to-advanced development level.

A frustrated picture of Arjan

It can be really frustrating to grow your skills on your own.

There's a lot of beginner-level material or very specific “how-to” tutorials out there that don't explain the “why”, and not many intermediate-advanced level courses out there.

Out of the few that exist, even fewer have corresponding exercises, since they require more work upfront for teachers and they contain mostly open-ended challenges, which do not provide the learner with detailed feedback.

There are training programs that go deeper, but then you're confronted with a new problem: these trainings are painfully expensive (think $1000 or more 🤯). They also take up a lot of your time, which you need to fit somehow into your busy work and life schedule.

Of course, you could choose to simply stick to learning from the tasks you currently have... But you'll grow much slower that way. And you're letting your job decide what you're going to learn and at what pace.

As a result, you simply stop evolving:

  • You remain stuck in “tutorial hell”
  • You're unable to distinguish good from bad quality practice material, trying to navigate conflicting practices
  • You're lost, aimlessly playing around with code and not feeling like you're making any progress
  • You'll most likely end up behind your colleagues who actively invest in their learning.

And finally, AI tools will most likely take over basic coding jobs in the near future. It's crucial to stay ahead of this trend and train your high-level skills.

So how do you effectively develop your higher-level thinking and transition to more senior skills?

It's simple and complex at the same time: you need to practice software design and coding at an intermediate-to-advanced level and follow proper software design guidelines. This way, you'll:

  • Feel increasingly comfortable working on complex codebases
  • Be naturally more confident in your software design decisions
  • Be able to objectively consider several aspects of a problem, for a more robust outcome.

LOOK NO FURTHER ✋🏼

I've decided to put my teaching skills to good use and share everything I've discovered about software design in content available to everyone. This way, you get results much faster than I did and at a much lower cost. 😅

⭐️⭐️⭐️⭐️⭐️

My courses get 5-star Google reviews!

review
review
review
See more reviews here.

Introducing the 30-Day Design Challenge! ⚡️

A frustrated picture of Arjan

This challenge pushes you out of your comfort zone. It makes you more confident and skilled in problem-solving and troubleshooting code.

You'll be presented with 30 exciting software design problems that will test your creativity and problem-solving abilities 🔥. The challenges range from one-off examples that explore a particular design principle to a group of challenges that really go deep into software design. For example, you'll write a complete API with FastAPI and SQLAlchemy, you'll work with GUI code, you'll explore the intricacies of functional programming and object-oriented programming, in-depth type annotations in Python, and many other things.

Thanks to my background in education and the fact that I launched and run several technical SaaS startups, I'm in the unique position to offer a course that will make a difference for you.

I've spent many hours ensuring each problem is the perfect mix of high educational value while remaining close to real-life production code.

Here's what you'll get with the 30-Day Design Challenge:

  • 20 or 30 intermediate-to-advanced level challenges (depending on the format you choose)
  • A solution video and explanation of each challenge
  • Code downloads so you have a starting point for each challenge
  • Custom feedback on 3 challenges of your choice (Premium version only)
  • Lifetime access to the material and any future updates
  • Certificate of Completion, so you can brag about being a Software Design Badass (™️) 😊.

I'm Arjan

A software developer and educator with a passion for building beautiful, efficient, and reliable software. I've been passionate about programming and computer science since I was a kid.

I've completed a Master's and PhD in Computer Science and I have more than 20 years of teaching experience. I've launched several startups and designed and built complex software products from scratch.

Now, I combine all my experiences to create YouTube videos on my channel, ArjanCodes.

Arjan

What students who followed the course say

It's great to see some of the more practical sides of computer science being shown at a deeper level than most entry level python tutorials

Daniel
Senior Software Developer

It was a pleasure to apply different ideas in practice. I really like the variety of tasks, so I can test my design skills in a plethora of scenarios. The daily format got me used to recreational programming, and I hope I'll keep this habit of tinkering around with code on my own 😊

Dominik
Junior Software Developer

Hands down the API / SQL ORM course. Often docs are too dry and examples do not clearly show how it works. [Arjan's] style of breaking down a project into bite-size segments is perfect for me.

Hud
Data scientist

Pick the format that works for you and your budget

The challenge offers high-quality challenges that you can only find in only high-ticket university-level courses - and then some. Following one course at a good university usually costs over $2000. Company trainings on this topic, at this level, will cost the same amount or more.

With the 30-Day Design Challenge, you get all the practice you need, in a shorter time, and for only a 10th of what it would typically cost you.

Lite

Ease yourself into senior problem-solving thinking
  • Access to 20 intermediate-to-advanced level challenges

  • A video solution and explanation of each of the challenges

  • Code downloads

  • Lifetime access

Standard

Immerse yourself into a wide variety of design challenges

Everything included in LITE, plus:

  • Access to 10 more challenges, including 7 on API building and testing

  • A solution video and explanation of each challenge

  • Certificate of Completion

Premium

Supercharge your learning by getting custom feedback on your work

Everything included in STANDARD, plus:

  • Get custom feedback on 3 challenges of your choice - from a real human!

Don't forget: it's completely risk-free

Money back guarantee

It's important to me that you're happy with the course you paid for. That's why I offer a 30-day 100% money-back guarantee with your purchase of 30-Day Design Challenge today.

If you don't love it in the first 30 days of your purchase, send me an email and I'll refund you immediately. No questions asked, no hard feelings.

Frequently Asked Questions

Other courses you might like