LeadStartup
Mikhail Ryazhenka
Mikhail Ryazhenka
Founder, Executive Partner

Понимание различий между продуктовой и проектной разработкой с примерами. Освойте ключевые аспекты и подходы каждого процесса для эффективного ведения проектов.

Что такое продуктовая разработка, как работает студия продуктовой разработки + примеры
Development Introduction for Agile Coach

Что такое продуктовая разработка?

Это создание и вывод на рынок продукта. Это может быть приложение, сайт, программа или новая функция. Продуктовые разработчики на первое место ставят пользу и ценность продукта. Чтобы понять, в том ли месте они ее ищут, они много исследуют, выдвигают гипотезы и тестируют их. Задача — сделать все быстро и получить обратную связь.

Чем продуктовая разработка отличается от проектной?

Создать сервис по доставке продуктов для ужина — это продукт. Разработать для этого сервиса лендинг и прикрутить туда оплату — это проект.

Как работает студия продуктовой разработки?

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

Продуктовая разработка

Продуктовая разработка — это создание и вывод на рынок продукта. Это может быть приложение, сайт, программа или новая функция.

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

В процессе идеи могут не выстрелить или поменять свою суть, это все понимают. Поэтому в продуктовой разработке делают все с минимальными затратами по деньгам и времени, чтобы проверить, и если не зайдет, двигаться дальше. Сначала проверили, потом пишем код.

Основы продуктовой разработки:

  • Продукт должен решать проблемы покупателей и быть ценным для них

  • Работа над продуктом идет внутри команды, каждый вносит свой вклад

  • Аналитика и тестирование гипотез

  • Прототипы (это может быть минимально жизнеспособный продукт MVP)

  • Обратная связь от пользователей и работа с ней.

Что важно в продуктовой разработке

Разработка продукта идет по принципу проверки гипотез: делаем немного, получаем отклик от рынка, дорабатываем или выбрасываем и все меняем.

Разработчики создают MVP и отдают его пользователям. На прототипе тестируют гипотезы и получают обратную связь по ним.

Суть продуктовой разработки в том, чтобы минимальным количеством ресурсов — времени и денег — сделать функционал. Не сработало? Не беда. Пилим следующий.

Сделать новую функцию за сутки, а люди сами напишут, что и как им нужно.

Лучше проверить много разных быстрых гипотез, чем одну идеальную за два дня.

Что делает продуктовый разработчик?

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

Один из продуктовых разработчиков пишет на Habr, что вместо сложной валидации формы сбора телефонов, он начнет с простой валидации длины и символов в номере. А уже потом будет улучшать форму по фидбеку от пользователей.

Непродуктовая разработка на примере

Василий задумал приложение с советами. Люди пишут вопросы, а эксперты — психологи, стилисты, сексологи, визажисты — на них отвечают. Типа ответы Майл ру, только без троллей и с модерацией.

Василий изучил рынок, ничего подобного не нашел, и решил: надо срочно делать! Он заплатил дизайнеру, разработчику и копирайтеру, те сделали приложение. Только скачивать его никто не стал.

Продуктовая разработка на примере

Разработчик предложил Василию сузить нишу и сделать MVP приложения по психологии. Те же вопросы–ответы, только отвечают на них психотерапевты.

Сделали прототип. За две недели его скачали несколько тысяч человек. Получили обратную связь, начали дорабатывать. Добавили фичу с онлайн–консультациями от психологов.

Над продуктом работает команда, собирает фидбек, улучшает сервис.

Продуктовая и проектная разработка: в чем разница?

Разработчики говорят, продукт — это когда все делаем с нуля и непонятно, какой будет конечный результат. Проект — когда есть техзадание и более–менее понятен результат, что надо получить в итоге. У проектов обычно есть заказчик. Создать сервис по доставке продуктов для ужина — это продукт. Разработать для этого сервиса лендинг и прикрутить туда оплату — это проект.

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

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

Для продуктовой разработки набирают команду, которая будет долго работать над продуктом. Например, у каждого продукта Яндекс своя команда — Яндекс. Деньги, Яндекс. Пробки, Яндекс. Музыка и так далее.

Для проектной разработки часто нанимают команды/людей со стороны или привлекают тех, кто освободился от других задач. Например, банк из Москвы заказывает проектную разработку в веб–студии Иркутска.

Продуктовая разработка — это всегда про гибкие методологии, работу в спринтах и с бэклогом.

Проектная и продуктовая разработка на примерах

В проектной разработке менеджер проекта связывает заказчика с разработчиками. Он может быть плохим переговорщиком и просто делать то, что говорит клиент. Например, заказчик просить убрать из приложения функцию оплаты за товар после получения. Команда выполняет. Через месяц заказчик снова вызывает к себе менеджера проектаконверсия упала на 15%. Верните фичу обратно. Команда выполняет. Что случилось? Продукт не становится лучше, его ценность в глазах пользователей не растет.

В продуктовой разработке заказчика и команду связывает продуктовый менеджер. Но он смотрит на продукт глазами пользователей. И прежде чем давать задачи команде разработки, продуктовый менеджер изучает пользовательский опыт, как проблема решается сейчас, как новая функция повлияет на продукт. Выбирает оптимальное решение, утверждает его с заказчиком. И только после этого команда начинает разработку.

Этапы продуктовой разработки

В новом продукте все начинается с идеи. Проводят исследования, опрашивают целевую аудиторию.

Затем переходят к разработке прототипа. И альфа/бета тестированию.

В существующем продукте все начинается с бизнес–требования. Проводят исследования, опрашивают целевую аудиторию новой функции. Потом разрабатывают прототип, выкатывают его на часть аудитории или на одну страну. Собирают фидбек и дорабатываю фичу.

Как работает студия продуктовой разработки

Представим, что у вас есть идея для продукта, но вы далеки от мира разработки, не знаете как составлять список требований и что писать в концепции. Что делать?

  • Вы идете в студии разработки. Они проверяют идею: стоит делать продукт или это ерунда. Опрашивают потенциальную аудиторию, изучают статистику по поисковым запросам, смотрят конкурентов.

  • Думают, как сделать, чтобы продукт решал проблемы клиентов и приносил деньги заказчику.

  • Если идея рабочая, посчитают, сколько будет стоить разработка MVP и предложат модели монетизации.

  • Примерно назовут сроки релизов.

Рустам Мухамедьянов, руководитель студии Winfox, приводит пример на VC. В студию обращается клиент: создать приложение для поиска репетиторов. Команда проверяет идею, опрашивает знакомых, размещает опросы в соцсетях, анализирует, что используют ученики сейчас. Если понимают, что идея годная, то предлагают клиенту план действий с прототипом и тестированием. Если же видят, что идея не сработает, то заказчику прямо об этом говорят. Не делают продукт ради продукта.

Сколько платят в продуктовой разработке

  • Разработчик продукта среднего уровня зарабатывает от 180 тысяч рублей

  • Менеджер продукта — от 200 тысяч рублей

  • Продуктовый дизайнер — от 120 тысяч рублей

  • Продуктовый аналитик — от 200 тысяч рублей.

Development Introduction for Agile Coach

Изучаем терминологию разработчиков

Основы терминологии разработки для скрам-мастеров

После этого модуля разработчики не смогут вами манипулировать

Мифы про Рефакторинг и Технический долг в Agile

Андрей Коломенский дает мощнейшую инженерную базу в стиле Robert Martin (Uncle Bob).

Основы процессов разработки для скрам-мастеров

Вы поймете, что разработка — это не инопланетный язык, и в нем нет ничего страшного

Как работают языки программирования?

В этом видео Андрей рассказывает о различиях языков программирования с точки зрения влияния на бизнес.

Python vs Java

Еще немного материала про различия языков программирования в контексте бизнеса на примере Python и Java.

Что происходит когда мы вбиваем URL в адресную строку

Что происходит когда мы вбиваем URL в адресную строку? Это полезно знать даже обычным интернет–юзерам.

Про типы сетевых протоколов

Какими бывают сетевые протоколы? И почему HTTPS важен для вашего продукта?

Про GIT и базы данных

Где и как хранятся данные и код продукта? Разбираемся.

Про Deployment Process

Как изменения в коде продукта уходят в релиз? И как выглядит Deployment процесс?

Про API

Что такое Application Programming Interface? И как продукты обмениваются данными между собой?

Микросервисная архитектура

Почему многие продукты переходят на микросервисную архитектуру? Это вообще зачем?

Архитектура огромных сервисов

Как устроены архитектуры таких гигантов как Netflix и TikTok? Смотрим.

Компоненты системного дизайна

Базовые правила системного дизайна.

Ответы на вопросы выпускника по разработке

В этом видео Андрей отвечает на вопросы нашего выпускника Владимира, который кстати успешно вышел на роль CTO после прохождения нашей программы.

Инженерная терминология для менеджеров

  1. Architecture: Общая структура и дизайн системы, включая ее компоненты и их взаимоотношения.

  2. DevOps: Набор практик, объединяющих разработку программного обеспечения (Dev) и IT–операции (Ops), направленных на улучшение и стабилизацию процессов разработки и обеспечение непрерывной доставки.

  3. Continuous Integration (CI): Практика частого внедрения изменений кода в общий репозиторий, за которой следует автоматическое тестирование.

  4. Continuous Deployment (CD): Практика автоматического внедрения каждой готовой сборки пользователям без участия человека.

  5. Version Control: Система, которая записывает логи изменения файлов или наборов файлов со временем, чтобы в дальнейшем можно было быстро восстановить конкретные их версии.

  6. Repository (Repo): Централизованное место, где разработчики хранят код и отслеживают изменения, например используя системы управления версиями, такие как Git.

  7. Merge: Процесс интеграции кода из одной ветви репозитория в другую.

  8. Pull Request (PR): Метод, используемый разработчиками для доставки их изменений кода в общий репозиторий. Другие члены команды получают возможность проверки, одобрения или предложения собственных модификаций.

  9. API: Набор протоколов и инструментов, позволяющих различным программным сущностям взаимодействовать друг с другом. Например двум сайтам: Ozon и СДЭК.

  10. SDK: Набор программных инструментов и программ, предоставляемых производителями оборудования или программного обеспечения, которые разработчики могут использовать для создания приложений на определенных платформах.

  11. Framework: Заранее определенная среда, в которой разработчики могут создавать приложения для определенных платформ.

  12. Full-stack: Относится к разработке, которая охватывает как интерфейс пользователя (фронтенд), так и сервер и базу данных (бэкенд). Такой суперразработчик. Сейчас тренд спроса на таких специалистов начал падать.

  13. Frontend: Часть приложения, с которой непосредственно взаимодействуют пользователи. Часто создается с использованием языков и технологий, таких как HTML, CSS и JavaScript.

  14. Backend: Серверная сторона приложения, которая обеспечивает обработку данных, хранение и другие операции за кулисами.

  15. Middleware: Программное обеспечение, которое служит мостом между операционной системой или базой данных и приложениями, например в сети.

  16. Cloud Computing: Хранение и доступ к данным и программам через интернет, а не на жестком диске компьютера.

  17. Server: Компьютер или система, предоставляющая ресурсы, данные, услуги или программы другим компьютерам, называемым клиентами. В основном по хранению данных. Например Yandex Cloud.

  18. Database: Структурированный набор данных, хранящихся в компьютере, к которому можно получить доступ различными способами.

  19. Bug: Ошибка или дефект в программном обеспечении, который приводит к неожиданным результатам или вызывает непредсказуемое поведение системы.

  20. Regression: Программный баг, который заставляет функцию перестать работать как предполагалось после определенного события.

  21. Refactoring: Процесс реструктуризации существующего программного кода без изменения его внешнего поведения.

  22. Unit Testing: Тестирование отдельных единиц или компонентов программного обеспечения на работоспособность.

  23. Integration Testing: Тестирование интерфейсов между компонентами или системами для обеспечения их совместной работы.

  24. Deployment: Процесс предоставления программного обеспечения для использования, путем установки его на пользовательские устройства или размещения на серверах.

  25. Scalability: Способность системы обрабатывать увеличивающееся количество процессов и данных, или потенциальная возможность ее роста для масштабирования в перспективе.

  26. Load Balancer: Устройство или служба, которая распределяет входящий сетевой трафик по нескольким серверам, чтобы ни один сервер не был перегружен.

  27. Virtual Machine (VM): Эмулированное окружение компьютера, работающее на физическом компьютере.

  28. Docker: Платформа для разработки, доставки и запуска приложений в контейнерах.

  29. Microservices: Подход к разработке программного обеспечения, при котором приложение состоит из множества независимых и небольших сервисов.

  30. User Experience (UX): Восприятие и реакция пользователя на взаимодействие с продуктом или услугой.

  31. User Interface (UI): Интерфейс приложения или веб–сайта, через который пользователь взаимодействует.

  32. Codebase: Все исходные коды программного обеспечения или приложения, обычно хранящиеся в репозитории.

  33. Quality Assurance (QA): Процесс обеспечения того, чтобы продукт или услуга соответствовали установленным стандартам и требованиям.

  34. Unit Testing: Тестирование отдельных единиц программного кода для обеспечения их корректной работы.

  35. Regression Testing: Тестирование, чтобы удостовериться, что новый код или функции не повредили существующую функциональность.

  36. Deployment Pipeline: Серия автоматизированных тестов и процедур, которые код должен пройти до доставки в производственное окружение.

  37. Kubernetes: Открытая платформа для автоматизации развертывания, масштабирования и управления контейнеризованными приложениями.

  38. Integration Testing: Тестирование взаимодействия между интегрированными компонентами программного обеспечения.

  39. Load Testing: Исследование работы системы под нагрузкой, чтобы определить ее поведение в реальных условиях.

  40. Git: Распределенная система управления версиями, используемая для отслеживания изменений в исходном коде во время разработки программного обеспечения.

  41. Database: Централизованное хранилище данных, доступ к которым можно получить с помощью программного обеспечения.

  42. SQL: Язык запросов, используемый для взаимодействия с реляционными базами данных.

  43. NoSQL: Нереляционная база данных, которая может хранить и извлекать данные без стандартных таблиц SQL.

  44. Cache: Промежуточное хранилище данных, используемое для быстрого доступа к часто запрашиваемой информации.

  45. RESTful API: Архитектурный стиль веб–сервисов, предоставляющий стандартизированный интерфейс для взаимодействия между приложениями.

  46. Endpoint: Точка конечного взаимодействия в коммуникациях или веб–сервисах.

  47. Serverless Architecture: Подход к созданию и запуску приложений, при котором разработчики не управляют инфраструктурой сервера.

  48. Bug Tracking: Процесс идентификации, записи и корректировки ошибок и других проблем в программном обеспечении.

  49. Technical Debt: Концепция, описывающая "стоимость" будущей работы, вызванную выбором более простого решения перед более сложным.

  50. Data Modeling: Процесс создания абстрактной модели структуры данных.

  51. Machine Learning: Тип искусственного интеллекта, который позволяет системам обучаться без явного программирования.

  52. Big Data: Огромные наборы данных, которые трудно обрабатывать традиционными методами.

  53. Webhook: Метод для улучшения или расширения веб–приложения с использованием пользовательских обратных вызовов.

  54. Dependency: Программный компонент или библиотека, необходимая для функционирования другого программного компонента.

  55. Open Source: Программное обеспечение, исходный код которого доступен публично и может быть изменен или использован кем угодно.

  56. Wireframe: Визуальное представление интерфейса страницы или приложения.

  57. Prototype: Рабочая модель программного обеспечения с основной функциональностью, разработанная для демонстрации и тестирования.

  58. Cryptography: Наука о безопасном кодировании и декодировании информации.

  59. Object-Oriented Programming (OOP): Подход к программированию, при котором программы структурируются вокруг объектов, а не функций и логики.

Дополнительные материалы по разработке для менеджеров

Рекомендуем вам посмотреть материалы канала EngineerSpock: https://www.youtube.com/@EngineerSpock

Также будет полезным поизучать материалы Роберта Мартина с его и других каналов:

10 инженерных терминов своими словами

Опишите своими словами текстом (или при помощи ChatGPT) 10 любых инженерных терминов так, чтобы ваше описание было понятно любому обывателю.