
Всем привет. Данная статья будет описана от лица Ильи, нашего технического директора в Neurosell. Последние 7 месяцев он занимается разработкой технологичных продуктов для ecommerce, однако до этого, как и другие некоторые члены нашей команды, работал в сфере разработки игр, перенося огромный опыт в текущую сферу.
Далее от лица Ильи:
В этой статье я хотел бы поделиться кейсом перехода с геймдева в полностью коммерческую разработку в B2B-сегменте. Затронем как сложности, так и успешные кейсы.
Перед началом, немного бэкграунда: работал в геймдеве на протяжении 16-ти лет, принимая участие в проектах различного масштаба - от социальных браузерных игр до ААА-проектов на ПК и консолях. Занимался за эти годы многим - и клиентской и серверной частью, внедрением ИИ, созданием архитектуры и инфраструктуры и многими другими вещами. Успел поработать как в маленьких командах, так и в больших студиях.
Итак, погнали.
Все началось банально и просто - от усталости. Как-то, в очередной тяжелый вечер пятницы, после пройденного релиза, встретились с моим хорошим другом - Максом. За барной стойкой обсуждали жизнь, различные перспективы и проекты.
И вот, вспоминая некоторые давние идеи по созданию приложений для ВК и Телеграм, мы как то постепенно (на это ушел не один вечер в баре), пришли к тому, что захотели попробовать поменять свой спектр деятельности и взять на вооружение идею с разработкой мини-приложений для социальных сетей, что в последующем выросло в большой продукт для электронной коммерции с использованием ИИ.
Решив запустить свой стартап, я как человек, отвечающий за технологическую часть, ушел в целом вспоминать, что это такое - продуктовая веб-разработка и ковырять наброски плана. А продумать нужно было многое - организацию работы, архитектуру, технологический стек и многое другое.
В итоге, спустя несколько месяцев (и несколько переписываний критически важной архитектуры), пришли к следующему стеку:
В целом, базу обсудили. Теперь давайте посмотрим на различные подходы и опыт в обеих сферах - разработке игр и коммерческого ПО.
На самом деле, отличий именно в подходах к разработке особо нет. Везде используются одни и те же современные стандарты - Git Flow, спринты, ретро и прочее. Однако если капнуть чуть глубже, в среднем по рынку, то различия всё-таки есть:
Таким образом, отличия в основном находятся в самих бизнес-процессах. Однако есть и технологические решения, которые в разработке игр выжимаются на полную мощность. Об этом поговорим ниже.
Теперь давайте разберем, какой опыт больше всего помогает нам при переходе из разработке игр в создание корпоративных B2B продуктов.
Первое и одно из самых важных - комплексность технологий. В игровой индустрии разработчикам приходится изучать и работать сразу со множеством сложных подсистем внутри игровых движков, таких как работа с графикой, физикой, аудио-данными, оптимизацией. Особенно важную роль играет оптимизация, поскольку разработчикам рано или поздно приходится углубляться в фундаментальное понимание оптимальной работы с процессором, оперативной памятью и многими другими аспектами, поскольку игры - очень комплексное программное обеспечение, где нужно экономить каждый байт памяти.
Второе по важности - архитектурные решения. Игра, по своей сути, огромный монолит, с сотней различных подсистем, которые вы не можете раскидать на микро-сервисы по разным серверам. Некоторые из этих систем достаточно тяжелые в вычислениях и, очень важно, чтобы ваша архитектура идеально отрабатывала все узкие места проекта.
Наша система сама подберет вам исполнителей на услуги, связанные с разработкой сайта или приложения, поисковой оптимизацией, контекстной рекламой, маркетингом, SMM и PR.
Заполнить заявку
12599 тендеров
проведено за восемь лет работы нашего сайта.
Работа с сетями - также один из важных аспектов (в особенности в онлайн играх), где нужно продумывать алгоритмы для моментального отклика подсистем. В отличие от корпоративных решений, где уведомление или сообщение может прийти с задержкой пользователю даже до пол секунды, что не будет так критично, то в многопользовательских играх в реальном времени, такие задержки уничтожат продукт (в особенности в динамичных проектах, вроде шутеров).
Еще одним важным аспектом является работа в команде. Игровая разработка, как правило, подразумевает сотрудничество между различными специалистами на всем пути создания продукта: программистами, художниками, дизайнерами, звуковыми инженерами и сценаристами. Этот опыт командной работы достаточно более разносторонний, чем в привычной корпоративной разработке, где как правило программист коммуницирует с меньшим количеством различных по профилю специалистов.
Работа с инновациями, которые часто зарождаются в самом геймдеве. Такими примерами могут быть и новые GPU, и новые направления, как VR / AR. В целом, разработка игр сильно двигает прогресс в железе, а разработчики игр, более грамотно понимают, как эффективнее использовать его ресурсы.
Геймификация - то, на чем в целом строится взаимодействия продукта и пользователя в геймдеве. Там же зародились сотни механик для удержания пользователей, увеличения среднего чека и времени, проводимого в приложении. Всё это может быть использовано в классической разработке для бизнеса.
Таким образом, опыт, накопленный в разработке игр позволяет создавать действительно оптимизированные, качественные и крупномасштабные проекты, с использованием технологий и подходов, успешно зарекомендовавших себя в продуктах с многомиллионной аудиторией.
В целом, с точки зрения отдела разработки, переход на корпоративные B2B решения из геймдева - с общей точки зрения упрощает процессы самого создания продуктов и внедрение технологий, несколько снижает одновременную нагрузку, но с другой стороны - меняются некоторые бизнес-процессы, повышаются факторы выгорания за счет удвоенной ответственности.
Моменты, которые мы выделили для себя:
Понятно, что все, что я описал достаточно индивидуально для каждого бизнеса, просто я постарался сделать среднюю оценку на основе своего опыта (ИМХО).
Если у вас есть еще какие-то примеры, либо наоборот, противоречия, буду рад обсудить с вами.
В целом, нам нравится внедрять все практики, которые мы перенесли с собой из разработке игр. Однако в будущем, хотелось бы максимально внедрять продуктовый подход геймдева, минимизируя потери, при этом, восстановив четкость всех процессов и цепочки разработки на тот же уровень, что и ранее.
Пока что этому мешают некоторые различия в бизнес-процессах, но я уверен, что ко всему можно подстроиться, используя рациональный подход. Понятно, что где-то что-то придется откинуть или полностью выкинуть из работы.
На сегодняшний день мы развиваем целый спектр сервисов для создания экосистемы ecommerce 3.0. Мы развиваем новые решения для электронной коммерции на базе ИИ, методологии геймификации (с перенесенными механиками монетизации в геймдеве) и персонализации множества процессов за счет социальных механик.