About the course

With a professional mentor who not only understands the topic but lives it, you will:

  • Learn how to apply and combine various patterns, such as Object Pool, Factory, and Observer, to create flexible and maintainable code.
  • Study advanced performance optimization techniques for mobile, console, and PC games.
  • Master the integration of multiplayer features and AI systems to create more dynamic and engaging gaming experiences.
  • Dive into architecture and patterns, applying them to real projects while exploring their advantages, disadvantages, and pitfalls.
  • Develop a mobile game first, and then a PvP project, utilizing object-oriented programming (OOP) and data-oriented approaches, particularly ECS.
  • Grasp the principles of SOLID and learn to apply them in various ways to ensure your code is clean, maintainable, and flexible.


Don’t miss the opportunity to gain in-depth knowledge of Unity, systematically organized and proven in successful projects, all in one place!

Why this course?

Instructor

A programmer with 12 years of experience in game development, who doesn't just talk about tools and theory but shows exactly how and what to do with concrete code examples. Available online to answer any questions, effectively becoming your personal consultant and mentor.

Program

The course content is tailored to your needs. If you have a specific problem you can't solve, you'll address it during the session. No unnecessary discussions or filler content.

Live Coding

Every topic is practiced through live coding sessions. Everything you learn can be immediately applied to your work. Didn't get it right? You can always reach out to the instructor for clarifications and advice until you achieve the desired result and hear from your lead, "Where did you level up like this?"

Who will benefit


This course is designed specifically for those who develop game projects in Unity, understand the basics, and perform their work tasks well. But for those who want more.

If you are looking to deepen your technical knowledge, learn to create complex game features, and work on truly interesting and large projects, this course is for you!

Online Sessions

Held twice a week

Summary

After each session

Session Recordings

Don't miss anything

Practice

Master knowledge

Homework

For each topic

Game Projects

In portfolio

Course program

01. Coroutines

As if asynchronous code in the main thread. How to write your own WaitFor…

02. IEnumerable

Iterator design pattern. LINQ is not needed.

03. async/await

Multithreading. CancellationTokenSource.

04. UniTask (+ DoTween)

Replacing async/await in Unity. Integration with DoTween.

05. Practical Session

Hands-on practice.

06. Mobile Platforms

How to build games for Android and iOS.

07. Plugins. Extension Methods

Writing code in ObjC or Java. Adding new methods to GameObject.

08. Factory. Object Pool

Manual implementation of patterns. Using ready-made ones. When and how to apply.

09. Command. Singleton

Use cases for commands. Why Singleton is problematic for Unity.

10. Practice

Hands-on practice.

11. Observer. State

Subscriptions, message passing, state changes.

12. MVP & MVC

Presenter vs. Controller. Why both and what’s the difference?

13. Behaviour Trees

What are Behaviour Trees?

14. Object-Oriented Design. SOLID

The well-known but still somewhat unclear principles.

15. Recap

Review of covered material.

16. ZenJect, Signals

Proven DI framework.

17. VContainer, MessagePipe

Why are these better for Unity?

18. Data-Oriented Design. Unity Entities

Unity’s ECS, part of DOTS

19. Data-Oriented Design. LeoECS

Third-party ECS framework. Performance comparison.

20. Practice

Hands-on practice.

21. PUN. Session 1

Photon Unity Networking. Honest PvP mode.

22. PUN. Session 2

Synchronizing data between players.

23. PUN. Session 3

Consolidation of material.

24. PlayFab. Session 1

Profile server. What it is and how it differs from games.

25. Practice

Hands-on practice.

26. PlayFab. Session 2

Balancing setup.

27. PlayFab. Session 3

Characters and their purpose.

28. Recap

Review of covered material.

About the author

Dmitry Starokozhev, or as everyone calls him, "Starik"

Starik has been in game development for over 12 years. Starting at Pixonic, then Made on Earth, and now at Pixion, he has done it all: from farm games and racing games to shooters and even ARPGs. He entered the game development industry straight out of university, knowing nothing but brimming with confidence. He openly admitted that it was his first time seeing an iMac, which he had to work on.

Over the years, he has managed teams, produced projects, and even donned the director's hat, but he never stopped coding. He has worked on War Robots, Everbright, Fableborne, and a bunch of other cool projects.

He plays Diablo 4 and Valorant himself and loves sharing his knowledge with those who are genuinely interested. Programmer, mathematician, teacher, gamer, punk.

Let's dive in—Starik's got you covered!

Additional Information

The course is conducted in Russian.

If you have any questions or would like to customize the course and conduct it exclusively for your company, please get in touch with us at academy@wn.media. We will be happy to assist you!