Middle Unity developer, на Unity 3D больше 3-х лет, общий стаж коммерческого программирования ~ 6 лет. В прошлом инженер-программист микроконтроллеров.
Люблю брать задачи с CPU / GPU оптимизациями и client server. За время своей работы занимался как core, так и meta механиками, накопил опыт самостоятельного решения проблем от 2D и 3D art до QA и UI / UX отделов. Стараюсь находить баланс между SOLID и KISS, особенно если горят сроки.
Проходил стажировку в Lesta Games (2022–2023), где выступал в роли tech lead команды стажёров Unity dev. Во время стажировки организовал процессы разработки и проведение code review, распределял и декомпозировал задачи. Команда успешно разработала TBS на Unity.
Разработанный проект: https://clck.ru/3MHVgM


Выберите навык, чтобы посмотреть, какие тесты специалист уже прошел.
-
Занимался продуктовой разработкой двух midcore проектов (Survival RTS, FarmSim) для Android и iOS в команде из 6 dev + lead dev. Работали в тесном взаимодействии с геймдизайнерами, art и qa отделами. Помимо разработки core и meta механик, отвечал за задачи по оптимизации производительности.
📋 Задачи:
- Разрабатывал core и meta механики на основе ГДД (боевка, физика транспорта, прогрессия, апгрейды и т.д.)
- Интегрировал backend логику (REST API)
- Участвовал в разработке client-server взаимодействия на Photon PUN2 (сериализация, синхронизация и т.д.)
- Собирал билды в Xcode для iOS и выгружал в TestFlight для QA отдела
- Проводил onboarding новых разработчиков на проектах, помогал lead developer
📈 Достижения:
- Оптимизировал механику обработки полей с O(n) до O(log n) (разбил поля на чанки и заменил линейный поиск бинарным), что устранило просадки fps
- Добился сокращения объема пакетов данных на 15%, переписав сериализацию некоторых структур данных
- Участвовал в разработке custom DI на базе Zenject для биндинга UI (MVP), что позволило упростить и ускорить работу с UI в проекте
- Уменьшил CPU нагрузку в ассете физики транспорта и добавил новый функционал
- Достиг сокращения draw calls в 8 раз, произведя GPU оптимизацию (batching, LOD)
- Разрабатывал editor tools на UI Toolkit, тулинг помог исключить необходимость в помощи программистов для дизайнеров уровней
- Предложил и имплементировал remote config, что позволило геймдизайнерам настраивать баланс без помощи программистов
Работал в аутсорс компании, разрабатывали игры для издателя и некоторое количество внутренних проектов. Занимался разработкой casual проектов с нуля для android устройств. Работал в командах 1-3 dev + art и gamedesigner, под общим руководством lead developer.
📋 Задачи:
- Интегрировал сторонние SDK и аналитику
- Проходил code review
- Интегрировал рекламу, inApps
- Участвовал в sprint planning и декомпозиции тасок
- Подготавливал некоторые внутренние проекты к выгрузке в store
📈 Достижения:
- Разработал легковесную систему путей для мобов и custom editor для нее, используя кривые Безье, которую затем вынесли в модуль и переиспользовали на других проектах
- Увеличил fps в ~5-7 раз в одном из ассетов, используемых компанией, при помощи многопоточности и Job System(часть пакета DOTS). Позже ассет активно использовался в других проектах компании.
🎮Несколько вышедших проектов над которыми я работал:
Water Raft - Survival Arcade | Android | https://clck.ru/3MHUPX
Sea Craft | Android | https://clck.ru/3MHUSc
Бакалавр технических наук
Тема бакалаврской ВКР: "Процедурная генерация в трёхмерных пространствах"