Become a better software developer
I help junior and intermediate-level developers become senior developers. I also help software development teams improve how they work and increase the quality of their work.
If you want to learn how to make better design decisions, download my free guide where I share 7 steps to consistently design great software.
I'm a software developer, educator, entrepreneur and content creator 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.
Nowadays, I post videos on YouTube about my different experiences and I help developers and companies write better software.
What my students say about my courses
"I was formerly a Java Developer, this course assisted me in adjusting to the Python environment quickly and effectively. Many of the concepts taught in this course have found their way into my daily development."
"I dont think I fully understood what a design principle was when I first started watching your channel. Between your YouTube channel and this course I definitely have a much better foundation to build on. Having this stuff explained in the context of a familiar language is invaluable."
"I havent completed the course yet, but I have already been able to apply some principles to my software planning and development at work"