iOS Lead Essentials
All seats sold out

Sign up to be notified about the next cohort.

We'll keep you posted by email
Privacy Policy


The iOS Lead Essentials is an online program meticulously thought out for iOS developers with a direct objective: achieve an enriching and fulfilling career in iOS development.

The goal is for you to be able to take advantage of fantastic iOS opportunities, build and deliver great apps you're proud of, make a difference, lead and help others, grow professionally, and get paid exceptionally well.

In the program, you learn a straightforward, step-by-step methodology that has been helping hundreds of developers around the world to achieve technical excellence and become remarkable iOS developers.

The methodology is designed and taught by Caio Zullo and Mike Apostolakis through an online training program enrolling three to four cohort of developers a year.

The time required and results of applying this methodology vary depending on the experience of the developers who apply it and the country/city/market they operate in.

I want to join!


"I was tremendously lucky to have started my software development education with Mike two years ago. By following the Essential Developer training (pairing, code reviews, courses, videos, series, blog posts), I have managed to start a career as an iOS engineer and work in multiple companies and countries in Europe.

Mike helped me escape a dead-end job and now companies in Greece, UK, Germany, and Luxembourg are eager to hire me. I have been receiving unbelievable compensation packages which I never thought I would.

Essential Developer helped me build a skill set that is valuable to any company that is interested in creating high-quality applications. Mike and Caio’s way of teaching is unique because instead of providing “template” solutions, they focus on techniques and methodologies that prepare students to handle any challenge they might encounter in the workplace. I definitely recommend the iOS Lead Essentials course to anyone interested in taking their technical and soft skills to the next level."

- Michael Zarmakoupis, iOS Developer

"The iOS Lead Essentials course has added incredible value to my career. I’m pretty certain I wouldn’t have landed my current role if it wasn’t for the course. The amount of depth you guys go into and the minutiae that are discussed is, at times, mind-blowing. I think with how you guys pair up and openly express your opinions, sometimes taking one route and then going back to take a different route has so much value."

- Luke Jones, iOS Developer

"I got my current job thanks to the work Caio and Mike did with the course. I never learned so much since I started my graduate iOS Developer school. This is the best online course I've found, and I'm so happy to have bought it. I'll always be grateful to you. Keep going, you help so many people!"

- Christophe Bugnon, iOS Developer

"Last Friday I received a job offer and this time I didn't have to submit any code-challenge, it was just a tech-interview. It was very fast because on the same day they replied saying they really liked me and wanted me to join the company. They offered more than double what I was making on my current job. I ended up accepting. The funny thing is that it was in the same week that we did the mentoring session. I just wanted to share this with you guys because this course helped me pass this interview. They were asking things about architecture, solid principles, testing... and it went very smoothly."

- Maurício Maniglia, Senior iOS Developer

"Thank you guys so much for the incredible content! It's really shifted my entire viewpoint on not only developing iOS apps, but software engineering and career development at a higher level."

- Ricky Munz, Senior iOS Developer

"Hi, guys. Thanks again for the amazing course. The iOS Lead Essentials is exactly what I was looking for a long time. It helped me to achieve a new level of understanding in programming and improve my skills so fast."

- Eugene Henyk, iOS Developer

“I am a professional iOS developer since 2011, and I've been building software for a long time. Last year, I started watching your videos, and with what I learned I prepared myself to go through an interview process in a company that would be a phenomenal leap in my career. Today, I accepted a job offer from them, and I'm overwhelmingly happy with this new journey! I wanted to thank you for the fantastic work you put on helping others. Your work really change people's lives!”

- Carlos Corrêa, Software Craftsman

🚀 Effectively develop resilient apps with good architecture

Learn from the ground up and become a master at developing and maintaining a sustainable Swift codebase with TDD, BDD, DDD, Clean Architecture, Design Patterns, Git, Automation, CI/CD, and Modular Design.

Learn by developing a real-world app with us, from scratch!

We teach with a hands-on—practical—approach while writing code and building an app. It’s the best mix of theory and practice.

Achieve a fast, productive, and reliable development cycle without compromising technical excellence and good design.

"It's a bit hard trying to fit all positive things about your course in 100 words.

I've been the "write some code, then come back to reprogram the whole thing again in a couple of months because I couldn't remember what I did" kind of programmer for a while now.

I've read plenty of blogs and books about design patterns and architecture, but I could never apply them to my projects successfully.

Caio and Mike to the rescue.

They clearly explain the steps they take when building an app. They move in small steps and incrementally build on the same app (feature) in front of you. I highly recommend it."

- Jose Alvarez, iOS Developer

"I don't recall how I found Caio and Mike, but their courses impressed me a lot. So when I first saw the iOS Lead Essentials course, I bought it without hesitation.

Caio and Mike can intelligently explain how to apply the best-known programming techniques and principles, that have withstood the test of time, such as SOLID, TDD, DDD to iOS development. They examine a programming task from various points of view, provide different solutions, and show the pros and cons of each of them. I'm astonished by how meticulous they are to every part of their application.

I 100% can suggest their course to every developer who cares about providing clean, maintainable, robust solutions."

- Azamat Valitov, Senior iOS Developer

"iOS Lead Essential is the best course available for mid/senior iOS developers who are looking to push their skills to the next level.

You’ve got everything in one place: BDD, TDD, SOLID Principles, Pair programming, CI/CD with a real-world example project. I couldn't have asked for more."

- Ravikanth Marri, iOS Developer

✅ Turn your tests into a powerful tool

Transform your development skills and improve the quality and value of your work with the discipline of Test-Driven Development and the power of Modular Design.

"I thought that I was a senior iOS developer until I found the Essential Developer channel. I was impressed with the quality of the content and the way Caio and Mike explained things. They really know how to apply architectural best practices and design patterns in a way that makes sense.

I used to hate writing unit tests because I never found someone who could prove to me why it really matters. Now I can't imagine myself creating a project without using TDD.

I really think all developers (even from other platforms) should watch their course. Of course, it's for iOS developers, but there is so much content about architecture and best practices. I find myself watching and rewatching the lectures over and over again.

Thanks from Brazil 🇧🇷"

- Rodrigo Manguinho, CTO & Lead Software Architect

"iOS Lead Essentials is by far the best online iOS course I’ve taken, and I’ve tried a lot. Watching Caio and Mike develop an app—and clearly explaining not only 'how', but 'why' they are doing things—makes learning some challenging concepts clear. I've learned how to truly separate code into different modules and to test parts of an app that I had never been able to figure out before. I've gone through the whole course at least twice (with some sections more than that), and every run-through reveals more compelling insights I had previously missed."

- Andrew Warwick, iOS Developer

"Mike always strives to find a clean solution by carefully designing each required system, taking into consideration all the unhappy paths and edge cases. What’s great when you work with him is that testing becomes mandatory and actually enjoyable."

- Fragi Katsimpas, Senior iOS Developer

⛩ Our mission

Our mission is to empower iOS developers to go to work happy and feel safe to deliver their best work. Every day.

You matter, and your work matters!

"I'm very happy to have found Caio and Mike. I was surprised by how high the quality of the content they produced was. I've watched a lot of YouTube channels about iOS development, but most of them are similar, where nobody talks in-depth about our profession. No one goes into detail as they do on how to grow as a developer, how to develop a sense of discipline and how to think before even start coding.

When I found out about the iOS Lead Essentials course, I immediately purchased it, and it was definitely worth it. I've learned in record time so many things from the course. I'm a big fan of TDD, and by following the lectures, I learned a lot on how to follow the practice. Before attending the course, I was reluctant to using TDD in my work projects as it would increase my development time. However, after attending the course, I was able to follow TDD in my work projects as it didn’t impact the development time anymore and at the same time, it increased my confidence and code stability.

Thank you for sharing your experience, and I am looking forward to new lectures."

- Andrey Chirkov, iOS Developer

📣 Ask us any question

Throughout the lectures, you'll have the ability to communicate with other members of the community and us. In the lecture pages, you can ask us any question to expand your learning experience.

You'll also have access to comments and threads to learn from other developers' questions.

Speeding up your success with the help of more experienced developers is the simplest and shortest path to a remarkable career.

Many developers believe they can learn on their own by following people on Twitter and reading blog posts.

That’s the traditional trial-and-error approach. You learn by failing a lot.

Learning from your own mistakes works, But that’s the slow and painful way.

Learning from mentors—in a supportive environment—is the best way to accelerate and achieve your goals.

In the iOS Lead Essentials program, you'll not just learn "what to do," but why.

"The iOS Lead Essentials course by Caio and Mike is unique in the iOS Engineering field. It puts a lot of accent on learning to design a really modular and clean architecture. It helped me understand how to achieve this goal by learning with practices like BDD, TDD and UML diagrams. During the course, their answers to any questions I had were carefully prepared and documented. Achieving this level of knowledge takes a lot of time of studying and practice, and I am grateful that Caio and Mike decided to share their knowledge and experience with the community and help me become a better professional."

- Mihai Cristescu, iOS Developer

🌱 Our approach

We believe we all face different challenges, so you’ll learn different points of view and trade-offs for all presented approaches. You’ll be given a clear and concise path but also the tools to make your own decisions.

"As a self-taught programmer, I’ve spent years and years consuming and absorbing information from so many disparate sources, having to connect the proverbial dots on my own. I’ve come to realize that there’s a true and distinct difference between information and instruction. In the iOS Lead Essential course, Mike and Caio don’t just present you with knowledge, but they actually instruct you on how best to use it. They are respectful and non-prescriptive in their approach, generously offering the why’s to all the how’s–nothing is trivial. They equip you with the freedom to move away from seeking silver-bullet solutions and the confidence to build the right solutions tailored to your domain. Even though the content is specifically geared towards iOS developers, I suspect that their actual goal is to turn us all into legit software engineers instead. Bravo, gentleman. Bravo!"

- Hai Phung, Senior iOS Developer

“I was hugely impressed by Caio’s ability to look at code and see through to the core of the problem. It was a joy to watch him develop using TDD and SOLID principles. The resultant code was always elegant and invariably worked when he stopped writing tests and finally started the simulator.”

- James Hogg, Senior iOS Developer

💼 For Individuals and Teams

This course was created for professional developers and teams that are seeking to improve and grow their skillset in iOS and Swift development. The techniques in this course are also applicable in other languages and platforms, so you're acquiring transferable skills that will make you a remarkable developer in the short and long-term.

"Caio has a wide knowledge of software best practices that gives him the ability to create simple and efficient solutions. He was able to clearly explain the principles and approaches to the team, applying them in a pragmatic way to a complex set of challenges, with a comprehensive test suite that ensured delivery of a stable and maintainable code base."

- Phil Heenan, Mobile Team Leader

"I’ve been developing software as my job for two decades now, and it’s been my obsession for another 10 years on top of that. I worked with Caio on a big refactor for our client’s project and because of working together, I became a much better developer.

Looking back, I can see that before working with Caio, what I knew about was how to paint and plaster and saw and hammer really damn well. Thirty years of stubbing your thumb is a lot of practice. But I didn’t know how to design a house, or a tower, or a city. Or how to run the project to get it done effectively, on time, and to best match the client’s desires with the available resources.

If you want to develop excellent code for your client, Caio will set you walking on the right path of learning."

- Benjohn Barnes, Senior iOS Developer

🤝 Community

You're joining a community of professional developers and will be treated as such. A community that cares and is eager to hear from you. A place to stay up-to-date with what you need to conquer your biggest career goals.

"Mike’s teaching was simply amazing. I progressed from simple object-oriented programming ideas to advanced design patterns and effective architecture principles. I learned that in order to develop great apps and advance my career, I had to start writing clean code. I wouldn’t be as successful and valuable to companies as I am today without Mike’s help."

- Nickolas Maniatis, iOS Developer / Team Lead

Your Instructors

Caio Zullo
I've been writing software since 1998, professionally since 2006, and on Apple platforms since 2009. I love building robust, well-engineered, and beautiful applications and coaching developers to achieve their best potential.

Mike Apostolakis
I'm a software engineer from Athens, Greece. My goal is to help the software industry evolve by enabling developers and companies to practice valuable techniques and build powerful and durable systems.

I want to join!

Here are some places where you can find our students

Frequently Asked Questions

What's the iOS Lead Essentials?

The iOS Lead Essentials is an online program meticulously thought out for iOS developers with a direct objective: achieve an enriching and fulfilling career in iOS development.

The goal is for you to be able to take advantage of fantastic iOS opportunities, build and deliver great apps you're proud of, make a difference, lead and help others, grow professionally, and get paid exceptionally well.

In the program, you learn a straightforward, step-by-step methodology that has been helping hundreds of developers around the world to achieve technical excellence and become remarkable iOS developers.

The methodology is designed and taught by Caio Zullo and Mike Apostolakis through an online training program enrolling three to four cohort of developers a year.

The time required and results of applying this methodology vary depending on the experience of the developers who apply it and the country/city/market they operate in.

Who is the iOS Lead Essentials course for?

The iOS Lead Essentials course is designed for mid and senior iOS developers who want to transform their skill set in Swift/iOS development, reach the next level in their iOS careers, and become remarkable Lead iOS Developers.

You'll follow a step-by-step methodology with proper guidance, help, and mentoring from us, Caio and Mike, and a community of over two hundred iOS developers who care about delivering work that matters.

The program is also for junior iOS developers with over 1 year of professional experience that are willing to do the hard work of building the skills to take the lead and deliver better iOS apps.

The iOS Lead Essentials program is not intended for total beginners in software development. We recommend at least 1 year of professional experience.

Will I get more than your videos on YouTube?


The videos on YouTube are demonstrations.

The iOS Lead Essentials is a comprehensive mentorship program covering every aspect of delivering solid iOS apps in Swift.

You'll learn from the beginning to the end, either if you're a junior or a senior developer.

We worked really hard on this. We put years of work into the lectures.

Can I ask questions during the course?

Of course, you can ask any question regarding the course lectures. Caio and Mike will personally reply to you and help you make the most of the program.

This course looks very advanced. Do I need to be a very experienced iOS developer to benefit from the course?

This is not a course for total beginners that have no experience with coding. If you don't know how to code at all, this course is not for you.

If you have at least 1 year of professional experience in iOS development and you're serious about achieving a remarkable iOS career, this is the course for you.

The course provides a structured curriculum and a step-by-step methodology that makes it the fastest and simplest way to master good software engineering principles in iOS development.

Waiting to improve your skills to enroll would be equivalent to waiting to get fit to join the gym!

Do I need to be a Swift/iOS developer to follow the course?

No, you don't have to be an iOS developer. Students with a background in languages such as C, C++, JAVA, C#, Objective-C, Ruby, and JavaScript have successfully taken the course.

If you know how to code well in another language/platform and you're serious about achieving a remarkable iOS career, the content is definitely within your reach.

Will the content you provide be outdated with the next releases of iOS and Swift?

Definitely not. We don't focus on frameworks that can go out of date. Instead, you'll master proven software design processes that allow you to build robust apps now and in the future.

You get access and free updates to the content for one year.

Is the iOS Lead Essentials course online or face-to-face?

The iOS Lead Essentials course is 100% online.

Although we probably won't meet in person, you can reach out to us and ask any questions regarding the course.

When does the course start and finish? Is there a time limit? How long it takes to complete it?

The iOS Lead Essentials course is 100% online so that you can progress at your own pace.

The program doesn't have a predefined duration. The duration will depend on how much time you can dedicate to it.

If you dedicate yourself, you can finish the program in 3 months.

But there is no rush, and you won't fall behind. You have access to all content for one year, which means you can repeat the lectures over and over until it clicks.

I have my own project, will you help me build it? Can you help me with my existing code?

We don't offer consultancy on your existing projects or codebases as part of the iOS Lead Essentials program.

With what you learn in the program, you'll be able to solve your challenges.

Why do you open and close enrollment periodically for iOS Lead Essentials?

Because we want to personally assist and support all students. And that's a lot of work!

Therefore, we can only enroll a handful of students at a time.

The iOS Lead Essentials is more than a collection of lectures and articles. We are building a community of remarkable developers equipped with a vision and an eagerness for making things better and achieving ambitious career goals.

Our students interact with us through discussions and Q&As.

We spend a significant amount of time analyzing your questions, and we tailor our answers to your needs.

Every discussion and mentoring session is public. So everyone can learn and benefit from every interaction.

Our goal is for no one to be left behind if they are willing to put the hours and commitment to improving.

Does everyone who enroll in the iOS Lead Essentials course automatically become remarkable developers and increase their income?

No. Of course, you need to learn, practice, and apply the methodology first.

The iOS Lead Essentials course is not a magic formula.

We have students that more than doubled their salaries, but those are not typical results. It requires practice and commitment, so not everyone will achieve it.

Because not everyone will do what it takes.

In our experience, some do the work, and some don't. Simple as that.

The program offers a straightforward, step-by-step process with community support and our personal help.

We are committed to helping you achieve your goals, but we can't do the work for you.

That's why we don't recommend the course to people who are just curious or not willing to do the work.

As mentioned previously, amazing results require effort and commitment and these traits are hard to find.

If you're not serious about achieving an enriching and fulfilling career in iOS development, please leave the seat open for another developer.

What if I don't have time to take the iOS Lead Essentials course?

If you don't have time to take the course, that's absolutely fine. Time is extremely scarce, and you need to define your priorities.

However, if you don't find time to invest in yourself, you risk falling far behind people that are working hard to build a bright professional future.

The iOS Lead Essentials course is designed and developed for motivated professionals that put their future as a priority in their life.

And again, the iOS Lead Essentials is an online program. You can watch the videos at your own pace, at any time of the day. You can effectively become a better iOS developer by dedicating less than an hour a day.

Is this course easy?

No. Achieving technical excellence and a remarkable career is not easy.

If we said that, it would be disrespectful to our students that worked hard to achieve it.

It's not easy, but with the detailed explanations, step-by-step practice, and continuous support from Caio & Mike, it becomes simple.

Who are you? Why did you create the Essential Developer Academy?

We are Caio and Mike, lead developers and mentors to hundreds of iOS developers worldwide.

We love building apps and helping other developers thrive. It's part of who we are.

We founded Essential Developer to help iOS developers achieve technical excellence and a prosperous future for themselves, their families, friends, peers, and companies.

Our mission is to empower iOS developers to go to work happy and confident to deliver their best work every day.

You matter, and your work matters.

We're building and supporting a community of professional iOS developers who, like us, believe in high-standards, mastery, integrity, and delivering great work.

We want you to succeed.

And we want you to get everything that you worked hard for, so you can advance your career and get yourself and your family a better future.

How can I contact you?

For any further questions you may have, you can contact us here.

I want to join!
© Essential Developer Ltd. All rights reserved.
Privacy Policy