Чего мы ждем от джуниора, мидла и сеньора: как понять свой уровень в разработке

Алексей Яременко

Привет! Я — Алексей Яременко, сооснователь Stan’s Assets from KAPPS — украинской команды, которая работает с Moon Studios, One Signal и другими международными компаниями. Наши плагины долгое время находились в топ-5 по скачиванию в Unity Assets Store, и их используют более 100 тысяч разработчиков по всему миру.

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

Мы составили список, чего же мы ждем от этих самых джуниоров, мидлов и сеньоров в компании.

Что ждем от джуниора?

Решение задач в предметной области

Джуниор решает задачи в своей предметной области (в геймдеве — это инструменты языка программирования и игрового движка). Ему формулируют задачу в его терминах разработки:

  • напиши вот такой модуль;
  • напиши вот такой класс;
  • напиши вот такой метод.

Джун не умеет решать бизнес-задачи. Что это такое? Давайте рассмотрим на примере. Допустим, нам нужно дать пользователю возможность делиться результатами своей игры с друзьями. Вот это и есть бизнес-задача. И как имплементировать ее в реальность джун еще не знает. Конечно, от его уровня разработки это не требуется и для этого на проекте существует тимлид или куратор.

Интерес к проекту

Еще от джуна ждут «огонька в глазах» и настоящего живого интереса к проекту, чтобы хватило сил и терпения впитывать множество новых знаний и очень активно развиваться.

Фундаментальные знания

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

Фундаментальные знания очень важны: например, на алгебре и геометрии строится мир 3D-графики.

Имея такой базис, если в один день вы захотите сменить движок — это не составит для вас проблемы. Ведь есть вещи, которые engine agnostic — это означает, что они, как законы физики, работают везде и во всем. Точно так же и в разработке: есть вещи, без которых никуда. Рекомендуем строить этот фундамент для вашей базы с самого старта карьеры.

Что ждем от мидла?

Решение задач в предметной области

Мидл решает задачи в пределах предметной области. Он умеет:

  • декомпозировать задачу;
  • написать структуру своего кода;
  • построить спецификации классов для реализации, методы и их имплементацию.

Больше автономности

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

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

Что ждем от сеньора?

Решение любых бизнес-задач

Сеньор способен решить любую задачу бизнеса и разговаривать с бизнесом на одном языке. Если вы это умеете, то уже не так важно, знаете ли вы какой-то фреймворк или нет. Очень важно подчеркнуть, что 10 лет опыта в разработке игр не делают вас сеньором. Номинальный стаж не отображается на вашем уровне, отображается понимание технологии и то, умеете ли вы решать задачи в бизнес-области.

Понимание проекта в целом

Сеньор:

  • понимает проект целиком;
  • умеет строить и расширять архитектуру проекта;
  • декомпозирует задачи любого плана и масштаба.

У «правильного» сеньора — много лет опыта не однотипной, а разноплановой разработки. Это позволяет ему быть технически развитым во многих аспектах и применять эти знания вместе, чтобы подходить к разработке проекта максимально правильно и обдуманно.

Софт-скиллы

Кроме технических характеристик очень важны софт-скиллы разработчика. И, безусловно, тут нельзя не вспомнить открытость и откровенность. Когда девелопер объективно понимает свои пробелы и готов самостоятельно работать над ними — это очень ценно.

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

Помните, что вы работаете с людьми и в вашей фиче нет смысла, если вы не можете донести свою идею другому человеку.

Общайтесь, просите фидбек у команды, и да прибудет с вами успешное продвижение по карьерной лестнице гейм-разработчика!

Чего мы ждем от разработчика в геймдеве

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

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

  • основы теории ООП;
  • принципы SOLID, KISS;
  • популярные паттерны и как/где их использовать;
  • Unity API, MonoBehaviour cycle, корутины;
  • работа с редактором;
  • базовое понимание rendering, что необходимо, чтобы отрисовать объект;
  • Unity Magic folders, Asset Bundles / Addressables.

Если человек не использует эти базовые инструменты, то его даже сложно назвать джуниором. Это самые простые скиллы в Unity-геймдеве.

If you have found a spelling error, please, notify us by selecting that text and pressing Ctrl+Enter.

Останні статті

Токсичные коллеги. Как не стать одним из них и прекратить ныть

В благословенные офисные времена, когда не было большой войны и коронавируса, люди гораздо больше общались…

07.12.2023

Делать что-то впервые всегда очень трудно. Две истории о начале карьеры PM

Вот две истории из собственного опыта, с тех пор, когда только начинал делать свою карьеру…

04.12.2023

«Тыжпрограммист». Как люди не из ІТ-отрасли обесценивают профессию

«Ты же программист». За свою жизнь я много раз слышал эту фразу. От всех. Кто…

15.11.2023

Почему чат GitHub Copilot лучше для разработчиков, чем ChatGPT

Отличные новости! Если вы пропустили, GitHub Copilot — это уже не отдельный продукт, а набор…

13.11.2023

Как мы используем ИИ и Low-Code технологии для разработки IT-продукта

Несколько месяцев назад мы с командой Promodo (агентство инвестировало в продукт более $100 000) запустили…

07.11.2023

Университет или курсы. Что лучше для получения IT-образования

Пару дней назад прочитал сообщение о том, что хорошие курсы могут стать альтернативой классическому образованию.…

19.10.2023