Геймдев Код
#истории

«Самое лучшее в жизни часто делается „по приколу“»: история разработчика на Unreal Engine

Георгий занимался частными инвестициями, но всегда хотел создавать что-то своё, а не просто зарабатывать. И тогда — нашёл себя в разработке на Unreal.

Иллюстрация: Colowgee / Stable Diffusion / pngtree / Freepik / Colowgee для Skillbox Media

Георгий Яцуненко

Россия, Красноярск



Достижения

После обучения устроился на работу сразу в два места — в инди-студию и крупную компанию «ПИК Digital».



ссылки


Георгий рассказал:

  • чем занимался до обучения на разработчика и как попал в геймдев;
  • что помогало ему быстрее нарабатывать новые навыки на учебных проектах;
  • какие лайфхаки лично ему помогли найти работу (и не одну);
  • зачем разработчику английский;
  • как совмещает две работы и частное инвестирование.

«Получил диплом инженера, но по специальности так и не поработал»: о начале пути

Мне всегда хотелось что-то создавать, и поэтому в вуз я поступил на инженера. Однако быстро понял, что по выбранной специальности — «Проектирование авиационных и ракетных двигателей» — новые разработки идут не так активно, как хотелось бы. Причём не только у нас в Красноярске, но и в Москве.

Тем не менее я доучился, защитил диплом, но… работать по специальности всё же не стал. Нашёл для себя другое дело, а именно — начал зарабатывать на жизнь частными инвестициями, которыми увлекался ещё со студенческих лет.

И всё-таки идея создавать что-то своё, а не просто зарабатывать, не оставляла меня. Особенно на это вдохновляли видеоигры: я играю с семи лет и практически все эти годы мечтал разобраться, как работают мои любимые проекты «под капотом»: Doom, Hitman, Skyrim, Forza Horizon, Dishonored, Hotline Miami, «Ведьмак 3».

Так что о переходе в IT и геймдев я задумывался давно, просто не знал, с чего начать. Хотя какое-то время даже пробовал учиться программированию самостоятельно.

«Соглашался на дополнительные сложности»: о домашних заданиях

Впервые всерьёз задуматься о том, чтобы пройти обучение разработке игр, меня побудила жена — своим примером. Она записалась на курс «3D-художник по персонажам» и с большим энтузиазмом приступила к учёбе.

Решил не отставать. Выбирая между движками Unity и Unreal Engine, остановился на последнем. Unreal Engine привлёк меня тем, что в качестве языка программирования на нём используется C++.

Это сложный, но очень быстрый и высокопроизводительный язык — он позволяет на более низком уровне взаимодействовать с компьютером и напрямую управлять его памятью. Он востребован не только в игровой индустрии.

Георгий с женой в Москве
Фото: личный архив Георгия Яцуненко

Учиться я начал в феврале 2022 года, но окончил курс только спустя два года — за это время в бизнесе и жизни случилось много неожиданных событий, из-за которых периодически приходилось делать перерывы в учёбе.

Учиться было интересно, но не то чтобы просто: всё-таки, как я сказал, С++ — язык сложный, а мой бэкграунд в разработке к началу курса был довольно скромен — Turbo Pascal в школе, HTML, CSS и чистый C в универе. И то — последний я вообще, по сути, так и не освоил, потому что на его изучение отводилось слишком мало времени.

Хорошо, что курс Skillbox начинался с изучения внутренней системы движка Unreal Engine — блюпринтов — на них новичкам интуитивно понятнее работать. На них же я собрал свою первую игру в жанре арканоид.

А уже потом нас погрузили во все тонкости языка C++ и началось… Помню, я подумал: «Куда я попал?» Или, как говорил один мой университетский преподаватель: «А в ту ли дверь я вошёл?» 🙂 Поначалу было настолько сложно, что я пересматривал одну и ту же лекцию по десять раз, чтобы понять основы элементарной игры «Змейка».

Но потом освоился, втянулся. Помню, в качестве объёмного задания на отработку языка и программирования популярных игровых механик мы в течение всего модуля разрабатывали топ-даун-шутер. Это было интересно!

А из неигровых заданий мне запомнилось построение лабиринта — для его генерации я выбрал алгоритм математика Эллера. Причём куратор предложил добавить мне сложностей и выполнить дополнительные задания — не просто построить лабиринт, но и сделать так, чтобы разные его части генерировались с разных сторон, разными потоками одновременно.

С многопоточностью я прежде не сталкивался, но разобраться в этом было занимательно.

А после третьего модуля я разрабатывал мультиплеерный free for all first-person shooter — шутер от первого лица. Кажется, я сдал его куратору только раза с восьмого. Хотя, помню, уже после первого написания технической части мне казалось, что всё классно и без багов работает. А потом куратор вернул работу, указав на то, что на карте не хватает деталей…

Это был сложный, но очень ценный для меня проект, где итерация за итерацией я видел, как мой код и проект становятся лучше.

Учебная работа Георгия. Фрагмент геймплея мультиплеерного шутера. Здесь стоит обратить внимание на ботов, заполняющих пустые слоты в сессии

Итоговый проект по всей профессии, пакету курсов, был посвящён стратегии в реальном времени. Здесь тоже пригодились советы куратора, который помог мне не только в технической части, но и с подготовкой презентации для защиты.

«Не сдавайтесь и учите английский»: лайфхаки для начинающих разработчиков

Найти первую работу по новой профессии непросто, но вполне реально. У меня, например, это заняло полтора месяца. И вот что я могу посоветовать из личного опыта:

1. Пользуйтесь помощью профессионалов

Мне в поиске работы очень помог Центр карьеры. На консультации мы со специалистом обозначали мои цели, проанализировали требования в интересных мне вакансиях и на основе всего этого составили скиллсет. Затем, опираясь на него, отредактировали моё резюме и оформили страницу на HeadHunter.

Ну а потом я сам перевёл резюме на английский и приступил к активному поиску. Время от времени заполнял дневник поиска, анализировал результаты и делился ими с консультантом.

2. Грамотно оформляйте резюме и оптимизируйте его под разные вакансии

О последних трендах в оформлении резюме я узнал на вебинаре Центра карьеры и сразу же их внедрил. Например, нам рассказали, что на HeadHunter ссылку на свой профиль на GitHub лучше помещать повыше — в раздел «О себе» или даже в «Контакты». Так рекрутер сразу увидит ваше портфолио — то, что вы уже сделали. А это куда важнее дипломов, регалий и пространных описаний.

3. Следствие из предыдущего пункта — не ленитесь оформлять профиль на GitHub

Оформляйте свои проекты так, чтобы с первого взгляда было ясно, чем вы занимались. Не надейтесь, что рекрутер, если что, разберётся. Нет — скорее всего он просто закроет страницу и перейдёт к следующему резюме. Карточки проектов лучше заполнять коротко и ясно, вынося в них все преимущества (например, «быстрая разработка»).

Так выглядит GitHub-профиль Георгия
Скриншот: GitHub / Skillbox Media

4. Учите английский

Он значительно облегчает процесс поиска работы да и саму работу в целом. Во-первых, знание английского — признак хорошей самообучаемости, что важно для рекрутеров. Во-вторых, большая часть технической документации написана на английском, так что, имея возможность читать её в оригинале, вы экономите своё время.

У меня с английским получилось интересно. Как и многие, я учил язык в школе, но впервые попытался им воспользоваться лишь классе в десятом. Откуда-то у меня была книга по миру The Elder Scrolls на английском, и я решил её прочесть.

Поскольку онлайн-переводчики в те времена ещё были ну очень плохими, себе в помощь я взял толстый красный оксфордский словарь. В итоге за три недели осилил книгу и потом даже участвовал в фанатском переводе дополнения Hearthfire для Skyrim. Более того — наш перевод потом взяли за основу профессионального.

5. Не сдавайтесь и не останавливайтесь

Не все ваши отклики будут просмотрены, а собеседования иногда будут трудны. Вы точно получите отказы, но… это нормально. При должном упорстве вы обязательно найдёте свою работу, ну, или она вас, как произошло со мной.

Не знаю, как у других, но со мной всё хорошее происходит, когда я делаю что-то «по приколу». Так когда-то я начал читать книгу на английском, попробовал себя в программировании, записался на курс. Всё это было весело.

«Работа нашла меня сама»: о старте карьеры в разработке

Я целенаправленно искал только удалённую работу. Этому было две причины. Во-первых, чтобы экономить время на дорогу — считаю, что лучше провести его дома с женой, чем в пробке. Во-вторых, чтобы иметь возможность работать в столичной компании, но при этом жить в родном городе. В итоге работа по всем моим критериям (и не одна) нашла меня сама.

Первое предложение на HeadHunter поступило от небольшой студии, основатель которой финансирует проект из собственного кармана. Мне понравился как сам проект, так и люди, в нём работающие, — настоящие энтузиасты. И я согласился выйти к ним Unreal-разработчиком.

Мы разрабатываем мультиплеерный битемап или, если по-английски, beat ’em up — это такой жанр драк в видеоиграх, где главный герой свободно передвигается по игровому миру и сражается с плохими ребятами. Я отвечаю за использование Gameplay Ability System, внедрение искусственного интеллекта и написание сетевого кода.

Геймплей итоговой работы всего курса — RTS-игры

Что касается второй работы: здесь рекрутер связался со мной через Telegram и предложил должность разработчика в «ПИК Digital». Конечно, я тоже согласился. Меня подключили к разработке градостроительной платформы, процесс по которой начался уже довольно давно.

Я постоянно работаю с легаси-кодом. Причём иногда приходится разбираться в настолько старом чужом коде, что никто из сотрудников даже не может ответить на мои вопросы — ведь люди, его писавшие, давно не работают в компании.

Также я занимаюсь оптимизацией и рефакторингом кода. То есть, если у людей возникает проблема с длительностью определённых процедур, они ищут того, кто их ускорит. И этот кто-то — я.

Вообще, я зарегистрирован на многих сайтах по поиску работы, в том числе на иностранных, и до сих пор получаю интересные предложения. Например, как-то меня приглашали на собеседование в немецкую компанию. Правда, вакансия требовала опыта разработки на C++ от шести лет, и я не уложился в отведённое для тестового задания время (потратил восемь часов вместо шести), но ведь справился!

«Работаю с утра до вечера, и мне это нравится»: как я успеваю всё и даже больше

Сейчас я работаю в двух местах как Unreal-разработчик, а также продолжаю заниматься частными инвестициями. Они не отнимают много времени — всё-таки я в деле уже десять лет. Если форс-мажоры, как в 2022 году, не случаются, то достаточно проводить ребалансировку инвестиционного портфеля раз в 3–6 месяцев.

Я пробовал спекулировать на бирже, в том числе на криптовалютах, но понял, что мне это не подходит — слишком нервно.

Так что обыкновенно большую часть дня занимаюсь именно работой. С одиннадцати утра и до семи вечера — в «ПИК Digital», а в остальное время, гибко, в инди-студии. Особенно приятно, что в «Пике», большой корпорации, мне пошли навстречу и разрешили работать по своему времени (+4 часа к Москве), чтобы не заканчивать в 22:00.

«Есть мысль о создании своей инди-студии»: о планах

Очень надеюсь, что битемап, который мы разрабатываем в инди-студии, взлетит: появится больше финансов на его развитие и разработка пойдёт активнее. Тогда я смогу окончательно сделать выбор в пользу геймдева — той сферы, куда я так стремился изначально.

Как с семи лет меня вдохновляло играть в видеоигры, так и до сих пор я горю их созданием. Думаю, есть шанс, что однажды я даже организую свою небольшую инди-студию.

Во время путешествия в Таиланд
Фото: личный архив Георгия Яцуненко

Но, с другой стороны, хоть я и очень люблю игры, новый опыт показал мне, что в промышленной разработке тоже много чего интересного. Например, в «ПИК Digital» я много занимаюсь низкоуровневыми процессами управления памятью, и мне это нравится. В разработке игр такие задачи нужны крайне редко, в основном только если ты разработчик движка.

Любите игры? Попробуйте себя в геймдеве!

❓ Кто вы: геймдизайнер, разработчик, концепт-художник? Узнайте на бесплатном курсе

😼 Узнать, кто я →
Кто вы в мире геймдева? Узнайте на бесплатном курсе ➞
Вы на практике попробуете 3 профессии: геймдизайнера, 2D-художника и разработчика на Unity. Создадите свою первую игру в стиле Mario. Подробности — по клику.
Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована