$1,899.00 USD


Full Course + Personal Feedback

No risk. 14-day refund policy
See everything that is in the course:

This course lets you elevate your software design skills at your own pace, whether you're looking to become a team leader or just seeking to refine your craft.

Guided by software design expert Jimmy Koppel, you'll delve into six comprehensive units, each dedicated to a unique aspect of software design, from the Hidden Layer of Logic to Future-Proofing Code. You'll gain a deep understanding of principles like Hoare triples, Embedded Design, and Representable/Valid Principle, enabling you to write clean, robust code and make design decisions that save hundreds of hours down the line.

Aside from didactic learning, you'll gain access to a curated library of readings, selected by Jimmy himself, comprising insightful articles and academic papers that further enrich your understanding of the art of software design.

This course is designed for engineers with at least a year of professional experience who are looking to upskill, take on more responsibility, and make a tangible impact on their team and projects.

Engage in self-paced learning that translates into real-world impact, becoming a better engineer and mastering the art of advanced software design with us.

Personal Feedback 

We’re very strong believers in giving personalized feedback, as one of the best ways to learn. Many of the exercises are very open-ended, especially the design exercises, which have you sketching the design of an entire piece of software. For all of our exercises, we read your solution carefully, understand exactly how you are thinking about the problem, and tell you exactly what you need to improve your understanding and walk away with a strong grasp of the concept.

We also work very hard to make our feedback of the highest quality. We have a 20-page document on how to give better feedback, and I personally review every feedback for quality. Most feedbacks go through several revisions before being declared good enough for students. At the moment, Nils and Jimmy are doing all the feedback themselves.

If you want to know more before deciding to sign up, book a call with either one of us below.

See you in class!

Here’s a link to Jimmy's calendar: 

And here’s a link to Nils calendar: 

See everything that is in the course:

Preview | First lesson Unit 1: A Story About Stories

Upgrading from the Unit 1 standalone?

Visit any of the Upgrade pages within Unit 1 and click one of the links there for direct checkout with your discount auto-applied.

Need help? Send us a message at [email protected].

What People Are Saying:

As a tech lead at Google, I have always been trying to improve my software design skills. I decided to sign up for Jimmy’s class after looking at the overview of its content. Jimmy is a fantastic instructor. He spends a lot of time reviewing my homeworks & answering questions. The reading materials & exercises are top notch. Before Jimmy’s class, I had vague ideas of how to write code “the right way.” After this class, I have a lot more clarity in terms of writing good code and designing better software. I find myself better at articulating my design rationale, and having easier time aligning people’s opinions on difficult decisions. My colleagues also said they noticed my code reviews are a lot more objective and convincing.

Ned Nguyen, Senior Staff Software Engineer, Google

After working 1-on-1 with Jimmy years ago, I had both of my engineers take Mirdin’s course recently. Since taking the course, I have sensed during design reviews that their understanding of software design has greatly elevated. As a result of their improved understanding and communication, we now routinely achieve better clarity on a design in 15 minutes than we previously could in an hour.

Yoonseo Kang, CEO, Guidebolt Robotics

Don’t repeat yourself. Don’t use magic numbers in your code. As experienced developers, we’ve all heard advice like this. We have decent intuition for “good” code. After watching Jimmy’s Strange Loop presentation and his explanation of citrus advice, I realized that much of the software design tips available have some truth embedded in them, but are imprecise. There are deeper truths for those who want to find them. Jimmy created a set of principles that we can use to build better software. From his principles, advice like those above can be derived and understood. The course is challenging, but Jimmy will go out of his way to make sure you grasp the material. After the first week of the course, I noticed improvements in my code. By the middle of the course, I was more aware of all the decisions I was making when writing code, and I started changing some of my old habits. I particularly enjoyed the refactoring exercises and one-on-one coaching sessions. If you are committed to improving your software design skills, work with Jimmy.

Bryan Andrade, CTO, Atlas Health

I’ve learned more from the first 2 weeks of Mirdin’s course than from 2 years of grad school

Dennis Lumpkins, Principal Engineer, T-Mobile

I was fired from a FAANG and told I would never reach the next level, but somehow got hired to that level at a different FAANG anyway. But it’s thanks to Jimmy I was able to perform at that level. Within months, I had senior employees assuming I must have been there for years, and was exceeding manager expectations. The only explanation for my improvement is working with Jimmy.

Amir, Software Engineer, New York City