0

Нужны ли Unity разработчику проекты на гитхабе

На моем опыте, о котором можно больше почитать на канале, довольное большое количество собеседующих в той или иной степени заглядывает на гитхаб. Первые просто хотят убедиться, что у вас есть в наличии хоть какой-то написанный вами (надеюсь) код. Вторые хотят побольше в этот код повникать, чтобы посильнее вас потеребонькать на техническом собеседовании. Уже не знаю для чего… для поднятия собственного это, может быть. Или может хотят сбить с вас спесь вместе с денежными запросами) Хотя последняя категория собеседующих на моей практике попадалась всего два раза:

  • в первый раз сеньор из gaijin полчаса докапывался до "можно тут написать ++i вместо i++, так считаю будет правильнее и на наносекунду быстрее" и прочая чушь про микро оптимизации (мы ведь только этим на работе и занимаемся, правда?)

  • во второй раз затирали что в пет-проекте про ИИ очень "слабо" организован слой работы с UI "ой, а почему у тебя хп бары там не поворачиваются на камеру, ты что не умеешь"

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

В преобладающем большинстве, когда видят мой гитхаб с 60+ репозиториями, решают не погружаться в эту свалку фриланса и полумертвых пет-проектов. Так что это не для всех, но тоже как вариант))

В остальном достаточно одного небольшого проекта. Ему не надо быть красивым или даже ультра качественно написанным. Но в нем должно быть:

  • отсутствие базовых ошибок и косяков, за которые прям зацепиться глаз. Никаких FindObjectOfType и десятков синглтонов, вызываемых из одного класса. Никаких бесполезных комментариев как по коду, так и “для себя на будущее”. На самом деле, комментарии - довольно сложная тема, иногда они могут быть и нужны. Если интересно подробнее узнать, где их писать/не писать и как это делать, можно посмотреть у великого Сергея Немчинского. Для наших целей достаточно правила “любой комментарий может быть кодом”. Если внутри метода есть сложная часть, которую захотелось прокомментировать, то вынесите ее в отдельный метод с нужным названием. И по аналогии с любым другим комментарием.

  • соблюденный кодстайл. Нейминги, отступы, аккуратные небольшие легкочитаемые классы. Ревьюверы - тоже люди (звучит как лозунг для какого-нибудь митинга), им приятнее будет читать хорошо оформленный код вместо мешанины из кривого нейминга

  • только доделанный функционал, никаких костылей и заглушек для “на потом, когда руки дойдут”

  • оформленный ридми. В нем четко написано: что это за проект, что в нем уже сделано, какие технологии использованы, пара скринов или видео геймплея. Можно даже билд приложить

Во время обучения за подобный проект мы беремся уже параллельно с выходом на рынок. В тот момент, когда ученик уже точно имеет все необходимые навыки как по C# и Unity, так и по прохождению собеседований. Почему именно тогда, а не раньше:

  • опыт написания целиком собственного играбельного решения и понимание, что не так уж это и сложно, сильно помогает ментально. Сразу сбрасывается этот губительный майндсет, мол "вот они то настоящие программисты, а я так... только по туториалам умею". И чем эта позиция будет актуальнее на момент собеседований, тем лучше)

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

О чем должен быть такой проект:

  • Это должна быть небольшая, законченная игра. Не надо пытаться в одного делать новую GTA или Assassin’s creed. Оно и не получится, да и потенциальный лид, заглянувший в проект, увидит только человека который не может оценить свои силы и берет на себя слишком много.

  • Сосредоточьтесь в первую очередь на основных механиках. Мета часть игры с ее магазинами, сезонными пропусками, ежедневными бонусами оставьте для жадных издателей. Собеседует вас такой же разработчик, поэтому на продающие картинки и рекламу на каждый пук в вашей игре, он не обратит внимание. Но при этом совсем отодвигать мету на второй план тоже нельзя. В конце концов, большая часть рынка - это донатные обдираловки, собеседующим будет полезно сразу же понять, что именно их ты уже умеешь и главное хочешь делать.

  • Скорее всего, ты не дизайнер, но постарайся сделать визуал не сильно всратым) Для UI возьми любой пак с понравившимися тебе спрайтами. Если кор часть в 3д, то также постарайся подобрать модели в одном стиле хотя бы. Поставь хоть какой-нибудь свет на сцену

  • Используй разумное количество популярных фреймворков. Затащи в проект DI (Zenject или VContainer), при необходимости, добавь UniRx. Для процедурных анимаций добавь в проект щепотку DoTween’а

  • Знай и понимай каждое принятое на проекте решения. Чтобы на условный вопрос “а почему используешь MVP, а не MVVM” было хорошее объяснение вместо “ну мне показалось так лучше будет/ну он вроде проще/ну я за UniRx не шарю”

Конечно же, все это не серебряная пуля и не поможет вам проходить 100 из 100 собеседований. Но оно поможет увеличить конверсию от скрининга к техническому собеседованию и даст повод потратить часть того самого собеседования на обсуждение вашего проекта вместо ответов на душные вопросы. Согласитесь, приятнее рассказывать о своей игре, чем в очередной раз вспоминать как же там устроен словарь под капотом?)

У себя на вместе с выходом этой статьи объявлю небольшой конкурс. Кидайте в комментарии сюда, а лучше к посту, анонсирующему эту статью на моем канале, свои пет-проекты или тестовые. В зависимости от их количества и качества я в прямом эфире посмотрю 3-5 самых, на мой взгляд, интересных!

Темы

Политика

Теги

Популярные авторы

Сообщества

18+

Теги

Популярные авторы

Сообщества

Игры

Теги

Популярные авторы

Сообщества

Юмор

Теги

Популярные авторы

Сообщества

Отношения

Теги

Популярные авторы

Сообщества

Здоровье

Теги

Популярные авторы

Сообщества

Путешествия

Теги

Популярные авторы

Сообщества

Спорт

Теги

Популярные авторы

Сообщества

Хобби

Теги

Популярные авторы

Сообщества

Сервис

Теги

Популярные авторы

Сообщества

Природа

Теги

Популярные авторы

Сообщества

Бизнес

Теги

Популярные авторы

Сообщества

Транспорт

Теги

Популярные авторы

Сообщества

Общение

Теги

Популярные авторы

Сообщества

Юриспруденция

Теги

Популярные авторы

Сообщества

Наука

Теги

Популярные авторы

Сообщества

IT

Теги

Популярные авторы

Сообщества

Животные

Теги

Популярные авторы

Сообщества

Кино и сериалы

Теги

Популярные авторы

Сообщества

Экономика

Теги

Популярные авторы

Сообщества

Кулинария

Теги

Популярные авторы

Сообщества

История

Теги

Популярные авторы

Сообщества