В мире программного обеспечения существует понятие dogfooding — практика, когда компании используют собственные продукты для повседневной работы. Это позволяет им выявлять ошибки, улучшать интерфейсы и адаптировать функционал под собственные нужды, создавая тем самым продукцию высокого качества. Известные гиганты индустрии, такие как Apple, Microsoft, Google и Facebook, широко применяют dogfooding, благодаря чему их операционные системы, поисковые движки или социальные платформы становятся одними из лидеров рынка. Однако, если копнуть глубже, можно обнаружить немало программных продуктов, которые оказались успешными и востребованными, несмотря на то, что их создатели не используют их внутри собственной компании. Почему так происходит и кто из игроков IT-рынка входит в эту уникальную категорию – тема данного материала.
В основе dogfooding лежит идея, что разработчик или компания, создающие продукт, сами применяют его в рабочих процессах. Такой подход гарантирует максимально тесную связь между продуктом и его конечным пользователем. Но почему тогда существуют программные решения, которые успешно конкурируют, хотя их создатели не являются своими первыми пользователями? Прежде всего стоит отметить компании, работающие в секторе «программное обеспечение для несофтверных специалистов». Примером служит программное обеспечение для автоматизированного проектирования, такое как AutoCAD. Разработчики подобных систем, как правило, профессиональные программисты или инженеры, но они сами могут не иметь прямого отношения к области, для которой создается софт.
Они ориентируются на специфику потребностей широкого спектра профессионалов, создавая инструменты, которые клиент действительно использует, но сами не являются конечными пользователями. Эта особенность приводит к тому, что данный софт считается «не dogfooded». Аналогичная ситуация складывается с ERP-системами, например, продуктами от SAP или Oracle. Эти платформы призваны решать комплексный бизнес-контроль и управление ресурсами, однако большинство разработчиков не работают непосредственно в компаниях, где используется именно их ERP, и не применяют софт в собственных бизнес-процессах в полном объеме. Тем не менее эти продукты можно уверенно называть одними из крупнейших в мире корпоративных решений, а их функционал отвечает самым сложным и специфичным требованиям отраслей и организаций.
Эксперты подчеркивают, что именно благодаря тесному сотрудничеству IT-разработчиков с отраслевыми специалистами, использованию тысяч кейсов, в которых данный софт оказывается востребованным, и постоянному совершенствованию, эти системы удерживают лидирующие позиции без традиционного dogfooding. Некоторые отраслевые и узконаправленные системы создаются под заказ, для решения конкретных задач, которые, порой, даже сама компания-разработчик не имеет возможности использовать для своих внутренних нужд. Это программы для управления точками быстрого питания, системы для научных исследований, программное обеспечение в оборонном секторе, например системы стратегического ядерного командования и управления. Такие проекты настолько специализированы, что стандартные внутренние потребности компании-разработчика не пересекаются с их функционалом. В этих случаях важным фактором успешности становится профессионализм разработчиков и консультантов, глубоко понимающих особенности индустрии клиентов.
Вместе с тем, существует интересный пример из мира игрового софта. Компания Epic Games, известная своим движком Unreal Engine, использует его для создания собственной популярной игры Fortnite. Такое dogfooding позволяет стремительно улучшать продукт и гарантировать гибкость функционала. Напротив, разработчик Unity, крупного движка для создания игр и интерактивного контента, в большинстве случаев не использует собственный движок для создания своего ключевого программного продукта, поскольку у них просто нет флагманской игры, аналогично Fortnite у Epic. Их модель опирается на внешних пользователей — разработчиков и студии, применяющих Unity для своих целей.
Это классический пример успешного продукта, который не dogfooded внутри компании, но выигрывает за счет широкой экосистемы и непрерывной обратной связи с сообществом. Обсуждение «жизни» программного продукта вне компании-разработчика поднимает вопрос о роли пользователей в совершенствовании софта. Внешние потребители становятся своего рода партнерами разработчика, а постоянный сбор отзывов и фидбэк из рынка помогает держать продукт актуальным и конкурентоспособным. Стратегия «без внутреннего dogfooding» требует более развитой системы мониторинга пользовательского опыта и быстрой реакции на проблемы, но позволяет сохранить объективность и сфокусированность на реальных потребностях целевой аудитории. Многие специалисты также отмечают, что dogfooding эффективен прежде всего для компаний, чей продукт совпадает с их основным бизнесом.
Если же разработчик создаёт софт, который применяется в совершенно других сферах, либо нацеливается на узкий сегмент пользователей, то внутреннее применение продукта может даже противоречить интересам компании или просто оказаться невозможным. В некоторых случаях компании приобретают сторонние решения и интегрируют их в свою инфраструктуру вместо использования собственного софта, что также снижает значение dogfooding как ключевого фактора успеха. Таким образом, «великую» программу, которая не подвергалась dogfooding, можно представить как выдающийся продукт, который удался без внутреннего испытания и всестороннего использования внутри компаний-разработчиков, но при этом способен удовлетворять или даже превосходить ожидания миллионов пользователей по всему миру. Такой продукт «выживает» и развивается благодаря информации от реальных пользователей, промышленным стандартам и комплексным исследованиям рынка. Можно сделать вывод, что dogfooding является мощным инструментом для повышения качества продуктов, но – далеко не единственным.