Думай как программист: почему вашей компании нужен свой язык

Думай как программист: почему вашей компании нужен свой язык

Специалист по обработке данных Дэвид Уоллер рассказывает, что работники сегодня должны научиться мыслить на языке кода

Будущее
Фото: Roger Marks/Flickr

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

Такая смена перспективы очень важна. Большинство компаний воспринимают код как нечто, спрятанное в загадочных уголках ИТ-отдела, или как прерогативу избранной группы специалистов по обработке данных. Но организации, которым удалось перевести вопросы анализа на язык программирования, часто растут и внедряют инновации быстрее других.

Опора на программирование принесет пользу организациям в трех отношениях.

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

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

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

Так что должны сделать менеджеры, чтобы перенаправить работников от формул к коду? По нашему опыту, ведущие компании совершают три практических шага.

Разрушение «Вавилонской башни». Общение — это залог для сотрудничества. Языковые барьеры создают самые сильные препятствия для эффективного обмена идеями. Это касается не только обмена текстами или разговоров, но и кода. Необходимость мысленно переписывать идеи на нескольких языках программирования требует дополнительных знаний.

В чем решение?

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

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

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

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

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

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

Некоторые компании, скажем, Google и Microsoft, делятся своим кодом публично. Один оператор связи опубликовал часть своих внутренних разработок, что позволяет компании пользоваться помощью людей, даже не работающих в ней, и это потенциально может стать стандартной платформой для телекоммуникаций.

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

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

В-третьих, люди должны знать, к кому обратиться за помощью. Страх перед обучением значительно снизится, если эта помощь будет своевременной и актуальной. И люди, которые на шаг впереди остальных, могут стать наставниками для начинающих. Менеджеры, предъявляющие подчиненным новые требования, должны быть готовы сами помогать им — мало что дает более сильный стимул для изучения чего-либо, чем понимание, что вам придется научить этому других.

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

Источник

Свежие материалы