Денис Гузик: «Самое главное — не ждать, когда все случится само собой, а брать и делать»
Недавно мы поговорили с нашим старым другом, Денисом Гузиком — руководителем отдела тестирования мобильных игр компании Nival. Обсудили проблемы и тенденции тестирования, вспомнили забавный момент из его карьеры, в общем — отлично пообщались с очень хорошим специалистом и приятным собеседником. Теперь мы готовы познакомить с ним и наших читателей.
Расскажи о себе: что заканчивал, где работал до того, как пришел в IT-индустрию?
Родился в Москве, учился там же. Окончил МИЭМ по специальности «Вычислительные машины, комплексы, системы и сети». До IT ничего интересного не было, гонял курьером по Нерезиновой.
Что подвигло заняться данной профессией?
Любовь к играм и немного генетики. Бабушка работала в отделе технического контроля на шарико-подшипниковом заводе. Но тестировать подшипники скучно, а игры — весело.Первая работа в IT — Nival. Потом пару лет послужил в армии, потом трудился в IT-Territory, Mail.Ru, и вот теперь — снова Nival, но уже в Питере. Поучаствовал в куче разных проектов, среди самых известных: HoMM 5, Blitzkrieg 2, Allods Online, а также множество мобилок. Сейчас мы продолжаем обновлять наши уже выпущенные мобильные игры (крайняя — Defenders 2) и работаем над новыми проектами, о которых пока не могу говорить. Конкретно я, как руководитель отдела, занимаюсь тестированием от и до, не брезгую сам руками что-то потестировать. Мне все это по-прежнему интересно, да и жаль не пользоваться накопленным опытом, который я, конечно, передаю другим.
Какое, на твой взгляд, образование наиболее удачно подходит для профессии тестировщика игр?
Преимущественно — техническое. Хотя знаю людей, которые успешно работают в тестировании и с гуманитарным образованием. Вообще, человек наиболее успешен, когда занимается тем, что ему по-настоящему нравится. Кто его знает, как он попал в тот институт, который закончил, может учился он 5 лет на какого-нибудь психолога, а это и не его совсем. А пошел «ломать танчики» — и поперло!
Что ты можешь рассказать об особенностях обеспечения качества игр и, в первую очередь, тестирования в современном мире?
Ну сейчас будет немного капитанства: есть очень важная вещь, которая практически отсутствует в софте, но должна быть в любой игре. При этом она не поддается автоматизации (по крайней мере, пока). Это фан. Игра может быть сколько угодно вылизана технически, но если играть в нее неинтересно, это не игра. Особенно в современном мире, когда конкуренция — огромная, большинство игр на мобилках — free to play, и если игроку что-то не нравится с самого начала, то он сразу же, не задумываясь, удаляет игру. Поэтому в тестировании на первое место выходят плейтесты, и уже только потом — тестирование в классическом смысле, поиск багов.
Видишь ли ты какие-либо сложности, либо улучшения в тестировании игр в будущем по сравнению с сегодняшним днем?
Тестирование ПО в том объеме, который мы обычно вкладываем сейчас в это понятие, рано или поздно будет полностью автоматизировано. Игр это, конечно, тоже коснется, но только после того, как автотесты научатся помимо всего прочего оценивать фан, который игрок получает от игры. Это будет происходить очень постепенно, и мы с вами никакой «революции» не заметим. Но если на минутку заглянуть в будущее, среднестатистическая компания будет выглядеть немного непривычно. Геймдизайн, тестирование и UX будут максимально плотно интегрированы, вероятно, даже в одного человека с, возможно, парой подчиненных. И вот этот костяк разработки будет максимально оперативно проводить итерации по примерно такому циклу: точечное изменение баланса/интерфейса -> покрытие автотестами, UX испытаниями -> доработка, снова прогон -> выкатка в прод. Причем самая крутая и высокотехнологичная штука будет содержаться как раз на стыке тестирования и UX. Если сейчас есть сервисы, с помощью которых можно потестировать свой билд на живых людях, разбросанных по всему миру, собрать с них фидбек, затем повторить итерацию сколько угодно раз, то в будущем это уже будут не живые люди, а обобщенные паттерны поведения, такие оцифрованные среднестатистические люди, которым можно будет подкручивать определенные параметры. В прогоне таких паттернов и будет заключаться основная часть тестирования перед отправкой билда в прод, потому что конкуренция достигнет такой степени, что пропуск ошибки на боевые будет так ломать показатели, что проект можно будет прикрывать. Код же будет писаться почти полностью автоматически, и просто нужен будет человек, собирающий это в одно целое. Арт наполовину будет на аутсорсе, наполовину — генерироваться нейросетями.
Чему, по твоему мнению, в первую очередь должны уделять внимание начинающие тестировщики?
Тестированию! Тут реально должен быть индивидуальный подход . Большинству, конечно, нужно учить английский, если еще не успели. Потому что вся самая актуальная и важная инфа по тестированию выходит сначала (а иногда — и только) на английском. Дальше — автоматизатор, обзорщик, UX’ер.
Как команда справляется с рутинной работой тестировщика? Проводятся ли какие-то тренинги, лекции для тестировщиков, есть ли, на твой взгляд, какие-то методы, позволяющие разнообразить труд?
Лучший отдых — смена рода деятельности. У нас столько задач, что скучать не приходится, и если надоело что-то одно, всегда можно переключиться. Плюс, мобильные тестировщики — на то и мобильные, могут работать практически где угодно. Поэтому я в целом не против, чтобы ребята иногда работали из дома или еще откуда-нибудь. Это также позволяет разнообразить рутинные будни. Тренинги внутри не проводим, это не очень эффективно, на мой взгляд, так как отнимает много времени и похоже на обязаловку. Если человек хочет получить какую-то нужную инфу, он сам найдет способ получить ее максимально эффективно, либо компания оплатит курсы/конференцию. Главное, чтобы это не было принудительно. А еще иногда покурить с программистом — эффективнее часовой лекции приглашенного специалиста.
Чем ты сам любишь заниматься в свободное время, чтобы отвлечься от работы?
Люблю просто гулять. После переезда в Питер это стало делать и проще, и приятнее. Еще люблю пойти с хорошей компанией в бар и — #впитерепить.
Насколько в вашей студии внедрен процесс автоматизированного тестирования? Где вы его применяете?
Сейчас мы очень активно развиваем автоматизацию на андроиде. Это несложно, и позволяет триггерить запуск теста сразу после сборки очередного билда. Подробнее рассказывать не буду, но эффективность автоматизации в наших условиях мы ощутили, будем развивать направление; в первую очередь, самые рутинные кейсы будем автоматизировать.
Что нового ты узнал как QA Lead за последний год?
Автоматизация. За этот год я понял, что без нее — никуда. Конечно, эта мысль не нова, но я еще раз хочу повторить: ручное тестирование отмирает. В играх — не так быстро, там не все пока еще можно автоматизировать, но тем не менее. Каждый день появляется все больше возможностей формализовать различные механики и оценить их уровень качества. Сейчас у всех на слуху нейросети, и я уверен, что в ближайшее время они сыграют важнейшую роль в том числе и в автоматизации тестирования.
Трудно представить компьютер, который будет формировать мнение о проекте и игровых механиках.
Всегда трудно представить что-то по-настоящему уникальное, пока это «что-то» не придумали. Сейчас очень важно преодолеть психологический барьер «это так сложно, дорого и долго, мы не справимся». Еще как справимся, у нас уже есть в руках почти все инструменты. Самое главное — не ждать, когда все случится само собой, а брать и делать. Учиться на своих и чужих ошибках, не унывать и двигаться вперед.
Говоря о желаниях и их реализации, о чем ты мечтаешь?
Мечтаю жить в теплых странах и ездить на машине без верха. Быть примером для моих детей, и чтобы они слетали на Марс хотя бы разок, а может — и меня с собой взяли. И чтобы «мир во всей солнечной системе». Но если применительно к работе, то я очень хочу, чтобы моя команда выросла настолько, что смогла бы задавать темп и постоянно открывать новые полезные и крутые штуки. Я несколько раз пересобирал команду. Это довольно непросто, и может показаться, что ты стоишь на одном месте, не развиваешься. Но на самом деле это не так — это как отправить перса в реморт: вроде бы тоже самое делаешь, но каждый раз все более осмысленно, уверенно и мощно. И каждый раз замечаешь, что рядом с тобой оказываются все более сильные, важные и заинтересованные спецы. А еще приятнее наблюдать, как те, кого ты учил, теперь сами кого-то учат, растят свои отделы и в общем-то наступают на пятки уже. Это невероятно мотивирует и заставляет идти дальше и дальше.
Есть какой-нибудь забавный рабочий момент, которым ты можешь поделиться с читателями?
В геймдеве вообще очень весело работать, не могу уже вспомнить большинство забавных моментов. Но вот один из самых первых еще помню.
Был случай, еще в старом Нивале, в середине нулевых, когда Иван Федянин, тогда просто тестировщик, а ныне — руководитель студии в Mail.ru, написал в баге, что «игра крашится, если нажать на пробел пяткой». К нему прибежал разъяренный то ли геймдизайнер, то ли программист и потребовал воспроизвести баг, а иначе прольется кровь. И он воспроизвел, прямо при нем! Разработчик похлопал глазами и ушел чинить… Наверняка Ваня задевал ногами что-нибудь — сеть или клаву, или еще чего, но со стороны это выглядело эпично.