Ищу работу, связанную с разработкой мультимедийных приложений - компьютерных игр и/или не игровых приложений на движке Unreal Engine 5. Интересуют следующие роли в разработке:
- Ведущий разработчик (Senior UE Developer)
- Техлид/Тимлид
В случае роли "Техлид/Тимлид", предполагаю совмещение с ролью "Ведущий разработчик", потому как считаю (согласно опыту) что разработка более эффективна, когда руководитель группы принимает непосредственное участие в разработке.
(нижеследующее описание навыков, делалось вручную, согласно реальному опыту, без использования каких-либо языковых моделей)
------------------------
Есть серьёзный коммерческий опыт разработки в UE (как на Blueprint так и на UE/С++). А также есть опыт работы с C++ вне UE.
В том числе, интересны варианты комплексной разработки на стыке с другими технологиями (например: варианты взаимодействия с веб-технологиями, плагины для подключений внешних библиотек, взаимодействие с внешними системами по HTTP/TCP и др.).
Касательно интеграции UE с другими технологиями, имеется следующий опыт:
- сборка и использования UE4 под платформу HTML5 и соответсвующее взаимодействие c веб-технологиями
- опыт использования технологии PixelStreaming (как в UE4, так и в UE5) и разработка вспомогательных инструментов, дополняющих использование PixelStreaming в UE5 (в том числе, на базе веб-технологий)
- доработка UE-плагина для взаимодействия с SQLite
- реализация взаимодействия по HTTP с внешним приложением (на UE/C++, на базе расширения функционала штатного UE-плагина для работы с HTTP)
- реализация низкоуровнего взаимодействия с внешними системами по TCP
Особенно интересны были бы проекты, связанные с разработкой инструментария (и проектов, их использующих), выводящие разработку на новый уровень, например интеграция возможности разрабатывать дополнения в контексте работающей системы, безопасно обновляя систему без её перезапуска (и т.д. в таком духе).
Последние места работы (в порядке убывания):
- Сбер (по ГПХ): UE5 + Fullstack (интеграция инструментов на базе UE5 с другими технологиями, Blueprint/UE-C++/C++/JS и др.)
- "НПК ВТиСС": UE4 (не игровые приложения, а также различные интеграции с другими технологиями, Blueprint/UE-C++/C++/JS и др.)
- "НПО Эшелон": R&D (исследования и разработка) в области информационной безопасности (CL, Python)
Опыт в IT-индустрии ~19 лет. Работал со множеством технологий и инструментов.
Сейчас сосредоточился на разработках с применением C++ / UE5(Blueprints/C++).
=============
Рассматриваю также предложения удалённой работы в режиме half-time (20ч в неделю). Ожидание по зарплате: не менее 280т.р. - 320т.р. при работе full-time и соотв. 140т.р. - 160т.р. при работе half-time на руки, после вычета всех налогов (но могу рассмотреть предложения и от 120т.р. за half-time, при особых обстоятельствах и сочетаний факторов и особенного интереса к проекту).
А также, приоритетом будут предложения, связанные со стартом новых проектов.
Разовые проекты (проектную работу) - готов также рассмотреть, стоимость будет рассчитывается индивидуально, учитывая разные факторы.
В том числе, готов рассмотреть предложения, в которых часть оплаты предоставляется ценными бумагами (акциями, облигациями)
=============
Хорошо разбираюсь в Blueprints и аспектах использования C++ (в том числе вне движка UE). В целом, хорошо знаю движок, имею навыки его использования.
Сильные стороны:
- Широкий технологический кругозор, опыт работы со многими технологиями (особенно ценным считаю, наличие как навыков использования веб-технологий, так и навыков использования UE-технологий, а также навыков обеспечения их взаимодействия)
- Наработанная практика построения программных архитектур
- Опыт технологических исследований и решения нетривиальных, сложных технических проблем
- Интерес к работе и способность глубоко погрузиться в область, при необходимости
- Стремление к постоянному совершенствованию своего профессионализма, интерес к перспективным инновациям
Мой аккаунт на github: https://github.com/LinkFly
-------------------
Дополнительно:
------------------------------------
Курсы.
-------
- Есть законченный курс конкретно по UE (довольно давно), с успешно сданным дипломным проектом (сертификат имеется).
- Есть 4 законченных курсы в GB: 3 курса - три уровня по С++, 1 курс - строго по UE/C++ (а также ещё один, фактически пройденный по UI в UE4)
- Один из последних курсов которые проходил - по С++ в Otus (очень глубокие курсы, для знакомых с областью специалистов). В качестве выпускной работы - проектировал интерпретатор языка Лисп (выбор темы - полностью мой). Успешно сдал работу и прошёл курсы.
- ... некоторые другие (а также, довольно давно пройденные курсы - будут представлены ниже)
Изучение и использование инноваций:
------
- Всё происходящее вокруг развития языковых моделей не прошло меня стороной - использую время от времени ChatGPT для ускорения своей работы, но без фанатизма (когда нужно, проверяя результаты и не теряя контроль над происходящим в разработке)
Общие навыки разработки:
------
- Умение работать с ООП (в частности понимание преимуществ и недостатков наследования на основе прототипов), но использование концепций там, где это уместно, с необходимой корректировкой под ситуацию
- Хорошее понимание паттернов и принципов проектирования (GoF, SOLID, DRY, YAGNI, и т.д..),
- Есть богатый опыт программирования в функциональном стиле и "декларативного" программирования (разработка DSL, метапрограммирование в разных контекстах и т.п.)
- Знаком со структурами данных и алгоритмами
- Понимание и навыки работы с распространёнными форматами данных JSON, YAML, XML, S-expressions
- Придерживаюсь хорошего стиля написания кода
- Есть навыки использования регулярных выражений
- Использование итеративного подхода к разработке
- Стараюсь как можно раньше делать Unit/Integration тесты
- Там где уместно, придерживаюсь архитектуры MVC (или её производных - HMVC, MVP, по мере необходимости)
- Использую систему контроля версий - Git, а также регулярно использую github.com
- Имею опыт использования системы управления задачами - Redmine, Jira, Trello
- Владею некоторыми знаниями по информационной безопасности (например, такими как противодействию SQL-инъекциям и т.п.)
- Чтение англоязычной технической документации
Навыки системного, низкоуровневого программирования:
---------------
- Есть опыт системного программирования под Linux (на языках C, CL)
- Также есть опыт использования WindowsAPI, применения технологии COM (в том числе, в коммерческой разработке)
- Понимание языка Assembler (x86, x86-64), использования знаний для анализа результатов компиляции
Навыки Fullstack-разработки:
============================
- Есть опыт коммерческой фронтенд-разработки:
- Владею безупречным знанием синтаксиса и семантики JavaScript
- Навыками использования JavaScript владею очень давно и совершенствовал их практически на протяжении всей профессиональной деятельности
- Использую React (также есть опыт работы с фреймворками nextjs и nestjs)
- Есть опыт работы с MobX, Redux (Redux - немного, в основном MobX - в компании LinguaLeo)
- Знание DOM/BOM на хорошем уровне
- Опыт разработки и отладки Ajax-взаимодействий
- Понимание и использование концепции БЭМ
- Опыт использования Jade-шаблонов как на стороне сервера, так и на клиентской стороне
- Владею навыками вёрстки и имею понимание современных принципов разработки, грамотного разделения структуры и стилевого оформления, есть опыт описания стилей на SASS/SCSS
- Опыт работы в IDE - WebStorm.
- Знание протокола HTTP
- Некоторые навыки работы с Figma, для использования созданного дизайна
Backend:
--------
- NodeJS: основной мой рабочий инструмент для Backend'a, чувствую себя в нём уверенно, использую регулярно
- Python: есть некоторые навыки чтения кода и программирования на нём, периодически сталкиваюсь, есть некоторый опыт использования при работе в компании, недавно изучил половину книги для мидлов (конечно, с экспериментами)
- Есть опыт использования NOSQL/SQL баз данных: MongoDB, PostgreSQL, Oracle (очень давно), при этом: с PostgreSQL работал немного, с MongoDB сталкиваюсь гораздо чаще
- Common Lisp: уверенные знания и большая практика использования (в том числе, в компаниях)
DevOps (не считаю себя экспертом, но давно интересуюсь темой и время от времени подтягиваю знания):
-------
- регулярно использую Docker, как для рабочих задач так и для личных проектов/экспериментов (хорошо знаю принцип работы и практики применения)
- есть опыт изучения и экспериментов с Kubernetes
- владею языками командной оболочки: bash, cmd
============================
Сертификаты:
-------------------------------------------------------------------------------------------------
--------- Полученные в конце 2015-ого ---------
Курс "JavaScript. Уровень 3. jQuery. Расширенные возможности":
http://www.specialist.ru/graduate/groupcert/1288473
Курс: "HTML и CSS. Уровень 3. Продвинутые методологии и инструменты верстки":
http://www.specialist.ru/graduate/groupcert/1173870
-------------------------------------------------------------
Курс "JavaScript. Уровень 1. Основы веб - программирования":
http://www.specialist.ru/graduate/groupcert/1133374
Курс "JavaScript. Уровень 2. Расширенные возможности - NEW"
http://www.specialist.ru/graduate/groupcert/1133380
Курс "JavaScript. Уровень 3а. Использование библиотеки jQuery"
http://www.specialist.ru/graduate/groupcert/1133382
Курс "HTML и CSS. Уровень 1. Создание сайтов по стандартам W3C на HTML 5 и СSS 3":
http://www.specialist.ru/graduate/groupcert/967003
Курс "HTML и CSS. Уровень 2. Кроссбраузерная верстка, основы юзабилити, HTML5 и CSS3"
http://www.specialist.ru/graduate/groupcert/1133373
Курс "Курс 20480: Программирование в HTML5 с JavaScript и CSS3"
http://www.specialist.ru/graduate/groupcert/1133427
Курс "Веб - дизайн. Разработка и оформление сайтов"
http://www.specialist.ru/graduate/groupcert/1133432
Курс "Формат SVG: от иконок до живых картин"
http://www.specialist.ru/graduate/seminarcert/1170357
Курс "Adobe Photoshop СС/CS6 для MAC и PC. Уровень 1. Растровая графика.":
http://www.specialist.ru/graduate/groupcert/1133431
Курс: "Linux (Ubuntu). Уровень 2. Программирование в Linux на C":
http://www.specialist.ru/graduate/groupcert/824060
------------------------------------------------------
Дополнительные навыки:
- опыт написания серверного кода, взаимодействующего с клиентами и СУБД на Java (J2EE, WebSphere) и на Common Lisp (LW, Emacs/Slime).
- умею работать с PSQL (PL/SQL) - процедурами, работал с SQL-базами: Oracle, Mysql (немного), Firebird
- есть опыт использования шаблонов "Closure Templates" на стороне Backend'a
- сборка/установка/настройка Nginx.
- умение работать с технологиями виртуализации компании vmware (Workstation, ESXi)
- делал реверс-инжиниринг, декомпиляцию, "игрался" с IDE Pro, OllyDBG, паковщиками/распаковщиками и прочим подобным
- работал немного с DirectX (добавлял в Desktop-приложение media-контент).
Направления, которые вызывают некоторый интерес:
- Технологии, связанные с WebAssembly
- Программирование 3-х мерной графики с помощью WebGL
- Низкий уровень программирования графики через Vulkan
- Встраивание нативных модулей в скриптовые языки: в NodeJS, в Python
- Виртуализация: технологии VMWare
- Оркестраторы: Kubernetes, Terraform
- Тестирование (в том числе - E2E-тестирование): Cypress