Профессия QA Инженер. Интервью с Ярославом Рузановым
Вам, ребята, очень повезло! О профессии QA инженера в геймдеве любезно согласились рассказать кручёные профи из крупнейшей игровой студии в Спб: Ярослав Рузанов и Сергей Праздничнов. Интервью получились очень познавательными, годными и большими – поэтому я разделил их на две статьи.
Эта с Ярославом, а с Сергеем вот эта.
Напомню, что мы завели большую беседу о профессиях в геймдеве (статья Как стать разработчиком игр?) и в рамках этой беседы поговорим о QA, доблестных рыцарях-джедаях, без которых мы бы никогда не увидели ничего качественнее инди-игор из раннего доступа.
Расскажи о себе?
Привет! Меня зовут Ярослав и до 2010 года я считал, что игры – это удел неудачников. А с 2010 до 2013 года, что мобильные телефоны не могут быть игровой платформой. И я ошибался в обоих случаях.
Где учился?
Учился в педагогическом интституте на факультете иностранных языков. Скажем так, именно это и помогло мне в первую очередь пройти весь этот нелегкий путь. С 2009 по 2010 служил в ВС. А вот с 2010-го всё и началось.
Как пришел в геймдев?
Рассуждая с другом во дворе сколько зарабатывает одна из крупных СНГ геймдев компаний мы пришли к выводу, что в геймдеве люди не бедствуют. Плюс работа веселая. Играй в игры – зарабатывай деньги… Думали мы.
Кем я хочу стать тогда еще не знал и даже не думал на эту тему.
Был у меня в городе магазин с играми. Я любил заходить туда и покупать коллекционные издания старых игр по скидкам. И вот зайдя в один день, увидел объявление о наборе тестировщиков игр в местную компанию. Откликнулся на вакансию на сайте, прошел два собеседования (с менеджером проекта и с руководителем отдела тестирования). Знание английского языка стало большим преимуществом и выгодно выделяло меня на фоне других кандидатов.
И вот я тестирую мобильный фри-ту-плей на аутсорсе :)
Лид познакомил меня с базовыми принципами тестирования и людьми, от которых в последствии я получил тонну знаний. После этого последовали часы гугления по вечерам и чтения книг, лекций, записей курсов.
По проществию одного года начальник предложил мне переехать в один их офисов компании заказчика.
И вот я тестирую мобильный фри-ту-плей, но уже в другом городе и даже в другой стране.
После года работы меня захантили в крупную СНГ компанию, где «окунули» в среду веб-приложений и пытались научить тестировать «правильно». Там я впитал ещё несколько тонн умений, полученных от моего лида, который казалось знает всё на свете и вообще крайне скилловый чувак. Спасибо ему огромное за шанс поработать и за полученный опыт!
Где/над чем сейчас работаешь?
Сейчас я работаю в крупнейшей игровой студии в Санкт-Петербурге. Всё ещё тестирую, но на этот раз большие ААА-проекты. Впервые попал в титры большой игры :)
Были ли в детстве мечты/мысли о разработке игр?
Нет, не было. Я из того детства где играют в «войнушку» палками и долго спорят на тему, кто в кого раньше попал, просят скинуть мяч, вынести попить и бегут смотреть диснеевские мультики.
Может быть во что-то играл в детстве такое из-за чего захотелось делать именно игры?
В детстве я очень хотел себе большую машину, в которую можно было сесть, крутить педали и ехать в закат 8)
Расскажи о работе QA инженера (для тех кто не представляет что это такое). В чем заключается работа?
Работа может быть как монотонной рутиной, так и интересным исследованием с погружением в проект (или его часть). Если описывать в двух словах, то QA инженеры являются последней линией обороны перед тем, как пользователь сможет что-то скачать из магазина. А работа заключается в проверке разницы между реальным и ожидаемым поведением продукта и предоставлении актуальной информации разработчикам.
Приходит с утра разработчик и спрашивает: «Ну что там у нас, товарищи?». А ты ему в ответ: «Ой, Леха, всё в г…е!» И перечисляешь, наблюдая как он просыпается ;)
Какие задачи перед тобой стоят, как ты их решаешь?
Задачи бывают разные. Тривиальные и не очень. Кто-то просит больше менеджмента, кто-то больше вникать в разработку. Приходится подстраиваться под проект и решать задачи в зависимости от твоей вовлеченности и нужд команды.
Идеальная задача: подходит к тебе разработчик и говорит: «Есть одна фича. Надо понять как она работает и составить план тестирования.» И ты ныряешь в мир неизведанного и ведешь своё детективное расследование. Находишь запутанные закономерности и предоставляешь их в удобоворимом виде, параллельно выписывая интересные случаи, для дальнейшего тестирования.
Иногда приходится примерять шкуру пользователя или целенаправленно ломать продукт. Но это не самое интересное занятие.
То есть вы целый день играете в игры и Вам еще за это платят? (шутка) Какая рутина присутствует в ежедневной работе?
Да, как кто-то писал рунете: «Казалось бы это работа мечты. Играй в любимые игры – получай деньги.» Это несколько неверное утверждение. Нельзя тестировать любимые игры. Игры, которые ты тестируешь априори не могут быть любимыми :( К тому же, процесс игры и тестирование – две разные вещи. Кто-то на хабре писал про тестирование любимого фильма. Просмотрев 400 раз за день 10-секундный отрывок из фильма не означает, что ты целый день смотрел фильм.
И тестирование есть не только в игровой промышленности. Тестировать можно абсолютно всё, от карандаша до робота, который готовит кофе и привозит его тебе.
Что больше всего утомляет? пожалуйся :)
Я бы не сказал, что меня что-то конкретное утомляет. Во всем можно найти свои плюсы, кроме одной ситуации. Когда начинаешь тестировать игру, чувствуешь себя читером, потому что знаешь, как она работает внутри., т.е. в курсе всех преимуществ и недостатков тех или иных фичей.
Расскажи о процессе создания игры с точки зрения QA инженера?
Дизайнеры ведут подсчет. Художники рисуют. Аниматоры анимируют. Программисты пишут код. Технические специалисты поддерживают функциональности. Тестировщики проверяют, что все работает так, как заявлено. Всё просто :)
Я бы с удовольствием почитал ответ на этот вопрос со стороны программиста.
Какая у тебя зона ответственности? Какие этапы претерпевает игра, как ты способствуешь тому чтобы она стала крутой? С кем еще из команды ты взаимодействуешь?
Зоны ответственности сильно варьируются в зависимости от проекта. В данный момент мы с коллегами разрабатываем план тестирования для одного проекта и согласовываем его с заказчиком.
На прошлом проекте я был лидом, входной точкой контакта для других команд. Раскидывал задачи между сотрудниками. Писал отчеты и считал, много считал и прогнозировал. Бывали моменты, когда залезал в код и смотрел, что там было понаписано бравыми программистами ;) Показывал ошибки.
На текущем прокте я буду ответственнен за проверку новых фичей и нового контента в игре.
Как правило, мы входим в проект на этапе планирования разработки. Стараемся расчитать риски, запланировать количество работы и распределить её между сотрудниками внутри нашего отдела.
Мы взаимодействем со всей командой, но чаще всего с техническими дизайнерами и программистами. По сложившимся стереотипам у тестировщиков с последними «особая любовь» J Но мне повезло попасть в команду, где тестировщики ценятся и к их мнению прислушиваются. Поэтому каждое собрание проходит продуктивно, иногда даже весело.
В какие игры играешь сейчас?
Чем вдохновляешься? Какие последние игры прошел? Любимые жанры?
Последнее во что играл: Destiny 2, R6 Siege, Injustice 2. Ценю игры, где можно найти товарищей и игровых собутыльников. Вдохновляюсь творчеством на площадке Reddit. Из любимых жанров можно выделить FPS и головоломки. Один – проверить реакцию, четкость действий и работу в команде; второй – размять мозги и включить фантазию.
Есть ли какая-то профессиональная деформация? Как играются “чужие” игры когда ты сам разрабочик?
Профессиональная деформация была в первые пару месяцев с начала работы в QA. Замечал каждый мелкий косяк. Потом стало отпускать. Сейчас если и замечаешь баги, то сохраняешь только самые трэшовые для коллекции.
Репортишь ли баги разработчикам? Возникает ли желание проверить какое-то поведение NPC, например?
Да, репорты отправляю, когда могу максимально точно идентифицировать недостаток. Часто отправляю репорты инди-разработчикам. Понимаю, что игра, сделанная командой из трех человек, вряд ли целенаправленно тестировалась. Но специально что-то проверять в игре желания не возникает. Этого на работе хватает.
Что доставляет наибольшую радость в твоей работе? В чем самый большой кайф?
Изучение! Однозначно. Поиск, исследования. Углубление в новые области разработки.
Посоветуй что-то ребятам, которых привлекает разработка игр и работа QA инженера?
Как начинать? С чего начинать? В какой ВУЗ поступить? Какие предметы ботать? Где поучиться нахаляву?
Разработка игр – мероприятие достаточно серьезное. Поэтому вкатиться в индустию улюлюкая не получится. Розовые очки надо разбивать сразу, у порога. И геймдев не значит, что можно работать спустя рукава, потому что это игры. Приходится потеть, учиться и учиться. Сидеть в офисе до поздной ночи и проверять какую-то функциональность (может даже в сотый раз).
Для начала необходимо выбрать область, которой хочешь посвятить своё время. И уже в зависимости от этого начинать своё обучение.
Я люблю начинать с нуля, постепенно повышая сложность. Я бы начал с терминологии и главных принципов тестирования ПО и ООП.
В любом случае, есть множество литературы на эту тему. А ещё необходимо привыкнуть к правилу: «Всё гуглится!» :)
История из тестирования
Однажды, тестировав продукт вместе с оооочень придирчивыми ребятами из другой команды, я специально завел себе страничку в блокноте, куда писал персональные «мантры», которые постоянно повторял. Что-то из разряда: «Мы все на одной стороне! Мы помогаем друг другу! Мы – одна команда! Мы делаем проект лучше!» Помогало :)
В заключении
Как оказывается и в профессии QA тоже есть рутина, но так же есть приключения и исследования.
Читайте и второе интервью про QA с Сергеем Праздничновым, думайте, подмечайте, пишите вопросы в комментариях.