Резюме: Unity-разработчик
Middle Unity Developer
Работаю с 2009-ого года в игрострое.
Фриланс. Программирование игровой логики на Adobe Flash.
С 2014 года работал постоянно в компании Мерсибо. Занимался программированием игр.
С примерами игр можно ознакомиться на Wildberries по поисковому запросу "мерсибо". Там более 100 игр написаны мною.
С 2019 на Unity. Занимался портированием игр с Adobe Flash на Unity.
Также в мои обязанности входила разработка новых игр на Unity.
Разработка игровой логики новых игр.
Внедрение игровых фич в существующие игры.
Рефакторинг legacy‑кода.
Работа с инфраструктурой проекта, в частности, устранение несовместимости игровых кода и ресурсов с текущей версией Unity.
Также занимался оптимизацией игр с помощью профайлера как на уровне кода, так и на уровне графики и игровых ассетов, поиском и устранением ошибок с помощью дебаггера.
-- Знаю ООП, понимаю и практикую принципы SOLID, DRY, KISS. Знаю основные паттерны . Как архитектурные, так и паттерны проектирования:
Singleton, FSM, State, Strategy, Observer, EventBus, Object Pool, Factory, и другие.
-- Имею опыт в использовании архитектурного паттерна MVVM в Unity.
-- На практических примерах знаю плюсы и минусы использования паттернов.
-- Умею декомпозировать задачи, составлять блок-схемы, разбивать участки кода на независимые модули.
-- Понимаю паттерн Dependency Injection. Имею опыт с Zenject. (также имел опыт с DI контейнером в Java SpringMVC).
-- Понимаю клиент-серверное взаимодействие(http сервер).
-- Имею опыт работы с серверным API. В том числе REST API. Реализовывал с помощью серверных скриптов античитерскую защиту. Также сохранение прогресса игры, и состояния игры.
-- Имею опыт работы с uGUI. Маски, анимации покадровые и твиновые, Canvas, Layout, Raycast. Понимаю принцип работы UI Unity и проблем с производительностью связанные с ним.
--Имею богатый опыт использования DoTween.
--Использовал корутины.
--В работе умею использовать ИИ для кодогенерации. В основном пользуюсь бесплатным Copilot(VSCode), но когда нужно также использую ChatGPT, YandexGPT.
--Имею опыт 3D моделирования. Понимаю что такое полигональная сетка, карты освещения, карта высот, текстура, нормали к поверхностям и т.п.
--Понимаю как работает графический пайплайн. Знаю что такое вершинный шейдер, геометрический шейдер, знаю что такое постобработка и т.п.
--Имею небольшой опыт с RenderMonkey, также в написании шейдеров в ShaderLab Unity. В новых версиях юнити имею небольшой экспериментальный опыт в CustomRenderFeatures и ShaderGraph.
--Дополнительно имею опыт в генеративных нейросетях. Локально использую StableDiffusion(Automatic1111, Forge). Умею генерировать игровую графику.
-- GitHub/GitLab.
Достижения:
Снизил время загрузки сцены на 40% за счёт Asset Bundles.
Существенно повысил FPS в мобильной версии игры за счёт правильного распределения графики по текстурным атласам. Также за счёт разделения UI на канвасы для статики, и динамических объектов.
Реализовал клиент-серверное взаимодействие в игре для валидации игровых достижений игроков, чем устранил читерские "рекорды".
Языки: C#, Java, Delphi/Lazarus, ActionScript всех версий, также имею небольшой опыт в JavaScript, (HTML, CSS), потому что JavaScript построен по одной спецификации ECMA-262. Немного знаю PHP.
Платформы:
Windows, Linux, WebGL.
Английский язык: На уровне чтения технической документации.
Личные характеристики:
Нравится работать качественно. Нравится заниматься архитектурой. Нравится researching, изучать новые подходы, новые технологии.
Коммуникабельный.
Уравновешенный.
Аналитический склад ума.
Легко нахожу и использую новые знания.
Перфекционист, люблю порядок в коде.
Умею решать задачи. Как самостоятельно, так и в команде.
- Разработка компьютерных и мобильных игр
- Разработка игровых механик
- Проектирование игровых режимов и событий для компьютерных и мобильных игр
Рекомендации: по запросу могу предоставить рекомендации.