GovTech Conference - Data Science and Agile—Can or Not?
Юджин Ян (Eugene Yan) выступил модератором панельной дискуссии на тему «Data Science и Agile — можно или нет?», прошедшей в рамках первой конференции STACK от GovTech в Сингапуре. В панели участвовали Steven Koh (GovTech), Adam Drake (бывший CDO Skyscanner и Redmart) и Ivan Zimine. Главный вывод: Agile — это прежде всего мышление и культура коротких итераций, постоянной обратной связи и корректировок, применимая и в data science, где результатом цикла могут быть анализы, проверка гипотез или визуализации. На примере с рекомендательным движком показано, как итеративный подход помогает избежать многолетней разработки не того продукта (поиск давал >90% кликов и покупок). Обсуждались также истинный Agile и принцип «Люди важнее процессов», а начинающим специалистам советовали собирать портфолио своих работ.
Конференция GovTech — Data Science и Agile: можно или нет?
[ agile datascience ] · чтение на 6 мин
Недавно меня пригласили быть модератором панельной дискуссии на тему «Data Science и Agile — можно или нет?» Это синглишский способ спросить, применим ли Agile в области data science. Панель проходила в рамках первой конференции STACK от GovTech для разработчиков, программистов и технологов из частного сектора.
Взгляните, какая у нас была потрясающая площадка
Кто участвовал в панели?
В панели участвовали следующие гости (слева направо на фото ниже):
Eugene Yan (это я, модератор): VP of Data Science в Lazada (приобретена Alibaba), в настоящее время Senior Data Scientist в uCare.ai. Steven Koh: директор Government Digital Services в GovTech, возглавляет команду Agile Consulting and Engineering и продвигает agile-разработку в государственном секторе. Adam Drake: бывший Chief Data Officer в Skyscanner и Redmart, с образцовым послужным списком в проектировании, разработке и внедрении экономичных, высокопроизводительных технических команд и систем. Ivan Zimine: физик и нейробиолог, работающий со сложными системами и применяющий open source и открытые практики.
Какие были самые примечательные вопросы и ответы?
Я не занимаюсь ничем, связанным с технологиями, — почему меня должны волновать agile или scrum?
Точка зрения панели была такова: Agile — это мышление и культура коротких итераций, постоянной обратной связи, корректировок курса и улучшений. Это применимо не только в технологиях, но и в других областях.
Один из участников привёл шутливый (хотя и не очень точный) пример внедрения agile в планировании бюджета, где ежедневные расходы корректируются на основе накопленных за каждый месяц трат, с оценками общих расходов за месяц. Хотя эти оценки вряд ли будут точны до копейки, они дают ориентировочную цифру, к которой можно стремиться.
Как выглядит agile в контексте data science? Как команда data science вписывается в agile-ритуалы? Проводят ли они ежедневные стендапы и планирование?
Некоторым слушателям было трудно понять, как agile можно внедрить в команде data science. Другие входят в команды data science, которые пытались его практиковать, но с ограниченным успехом.
Мы, участники панели (и я в том числе), считаем, что мышление agile можно перенять и в контексте data science, где проекты выполняются короткими итеративными циклами. Хотя результатом не всегда будет работающий продукт или новые функции, измеримые результаты есть. Они могут принимать форму аналитики, помогающей понять возможные причины проблемы, или проверки нескольких гипотез для выявления ключевой проблемы, или визуализаций, дающих лучшее понимание контекста.
В целом замысел — итеративная разработка вместо традиционного водопадного подхода. При водопадном подходе много времени уходит на разработку плана проекта и технических спецификаций, которые затем «замораживаются» (то есть мелкие изменения вносить трудно, а крупные — почти невозможно).
Затем система тщательно проектируется на основе технических спецификаций и разрабатывается в течение нескольких месяцев или лет. Иногда поставленная система оказывается менее или вовсе не актуальной для организации, поскольку она планировалась и проектировалась годы назад. Или, что ещё хуже, на поздних стадиях водопадного цикла обнаруживается, что проект решает не ту проблему или решает правильную проблему неправильным подходом. Месяцы и годы усилий уходят впустую.
Например, возможно, было принято решение разработать рекомендательный движок для сайта электронной коммерции. После значительного планирования, проектирования и разработки он наконец был выпущен через год или два. Однако никакого измеримого прироста по метрикам сайта (например, конверсия, выручка, среднесуточное число пользователей) не было.
В конце концов исследование покупательского поведения и пути пользователя показало, что бóльшая часть воронки продаж генерировалась поисковым движком, на который приходилось >90% кликов и покупок. Очень мало пользователей действительно просматривали товары на основе рекомендательного движка на главной странице, в поиске и на страницах товаров.
В примере выше, применив agile-подход, можно было бы провести какой-то быстрый анализ, чтобы определить, какой рекомендательный движок разрабатывать первым — для поиска, для страниц товаров или для главной страницы? В этом процессе обнаружилось бы, что потенциальная выгода от рекомендательного движка значительно меньше, чем от улучшения поискового движка. Тогда команда могла бы скорректировать курс и перенаправить усилия, сэкономив драгоценные ресурсы и время и принеся измеримую ценность.
Что значит практиковать Agile? Существует ли такое понятие, как настоящий Agile? Многие компании заявляют, что они Agile, но в реальности у них проекты зажаты нереалистичными дедлайнами, неясными требованиями и т. п.
В настоящее время, похоже, существуют разные школы мысли вокруг концепции agile и множество способов получить сертификацию по agile и scrum. Тем не менее в своей основе agile — это мышление, и фундаментальные принципы одни и те же.
Был упомянут Agile-манифест, в частности его первый принцип — «Люди важнее процессов». Навязывание одной школы или практики agile поверх другой нарушало бы этот принцип. Если команда находит, что следование основным принципам agile помогает работать продуктивнее, этого достаточно. Нет нужды придираться к тому, строго ли они придерживаются детальной agile-методологии или техник.
На случай, если вы не видели его раньше или нуждаетесь в напоминании, вот Agile-манифест.
Agile-манифест: Люди важнее процессов
Я недавний выпускник технического направления, но у меня нет опыта инженерии в продакшене, data science и т. п. Что я могу сделать, чтобы получить техническую роль в одной из этих областей?
Главный совет участников панели — собрать портфолио, демонстрирующее ваши работы. Это могут быть небольшие приложения на облачном сервере, прошлые анализы и обзоры или просто посты в блоге.
Один из участников поделился метким примером: он подбирал свадебных фотографов и оценивал их по прошлому портфолио. Многие ли наняли бы свадебного фотографа без портфолио? Аналогично, для технического кандидата наличие портфолио помогает показать ваши прошлые работы, давая потенциальным нанимающим менеджерам больше уверенности в том, что вы справитесь с ролью.
В целом это было приятное обсуждение с экспертами-практиками в панели. Надеюсь, аудитория многому научилась и извлекла большую пользу из их рассказов — я уж точно извлёк!
Чем больше панелей я модерирую, тем больше начинаю получать удовольствие от обсуждения. На некоторых прошлых панелях я нервничал из-за того, чтобы поддерживать разговор и обеспечивать его полезность для аудитории. В последнее время беседа стала более непринуждённой, и я даже могу пошутить с участниками. Возникали и естественные уточняющие вопросы, раскрывавшие ценный опыт и истории, которые аудитория могла унести с собой. С нетерпением жду следующей!
Если вы нашли это полезным, пожалуйста, цитируйте эту заметку так:
Yan, Ziyou. (Oct 2018). GovTech Conference - Data Science and Agile—Can or Not?. eugeneyan.com. https://eugeneyan.com/speaking/data-science-and-agile-can-or-not-talk/.
или
@article{yan2018govtech, title = {GovTech Conference - Data Science and Agile—Can or Not?}, author = {Yan, Ziyou}, journal = {eugeneyan.com}, year = {2018}, month = {Oct}, url = {https://eugeneyan.com/speaking/data-science-and-agile-can-or-not-talk/} }
Присоединяйтесь к 11 800+ читателей, получающих обновления о machine learning, RecSys, LLM и инженерии.