От машинного обучения до цифровых двойников: море возможностей восходящих (и нисходящих) технологических трендов Новые и развивающиеся технологии быстро меняют стиль нашей работы, предлагая возможности творческой реализации для тех разработчиков, кто не против переориентироваться и научиться чему-то новому. В этой статье мы обратим взор на 11 новых технологических веяний, которые могут, по мнению экспертов, разрушить существующие подходы в сфере IT и создать спрос на разработчиков, ориентированных на будущее.
11 технологий, которые должен знать всякий уважающий себя разработчик - 1
Речь не идет просто об очередном мега-прорыве (aka Next Big Thing). Источник будущих возможностей для разработчиков лежит в слиянии нескольких передовых технологий — искусственного интеллекта (англ. artificial intelligence, AI), виртуальной реальности (англ. virtual reality, VR), дополненной реальности (англ. augmented reality, AR), интернета вещей (англ. Internet of Things, IoT) и облачных технологий ... и, конечно же, в вопросах безопасности, вытекающих из этого слияния. Если вам хотелось бы расширить свой личный набор инструментов, рекомендуем присмотреться к этим популярным технологиям, а также прислушаться к нашим советам о том, как добиться успеха с их помощью.

Безопасность интернета вещей

11 технологий, которые должен знать всякий уважающий себя разработчик - 2
После взлома в 2016 году десятков миллионов подключенных устройств, даже сторонние наблюдатели замечают, что незащищенные IoT-устройства (IoT = internet of things, интернет вещей) приводят к жутким проблемам с безопасностью. В своем недавнем отчете аналитическая компания Gartner опубликовала рекомендации для разработчиков и команд экспертов. В нём высказана мысль, что этим специалистам следует работать друг с другом с самого начала процесса проектирования. В таком случае можно устранять угрозы по мере их возникновения. Например, с помощью загрузки в IoT-устройства обновлений безопасности. Спрос на специалистов в области безопасности интернета вещей очень высок, особенно на тех, кто разбирается в уязвимостях аппаратного и программного обеспечения, используемого подключенными к сети устройствами. «Векторы атак в сфере IoT практически идентичны таковым для любой распределенной сети, например, компьютеров или сотовых телефонов. Так что познания в области безопасности будут актуальны и важны и этой сфере, – утверждает Ричард Уитни (Richard Whitney), вице-президент по выпуску продукции в стартапе Particle. — Изучите основы криптографии и аутентификации, и вы добьётесь многого». Том Гонзер (Tom Gonser), основатель компании DocuSign и партнер в компании Seven Peaks Ventures, говорит, что фирмам сейчас требуются навыки низкоуровневого программирования для микропроцессоров. «Им также требуется опыт работы с технологией Bluetooth, [фреймворком Windows Identity Foundation] и технологиями размытого спектра. Еще ценится знание новейших опций безопасности операционной системы Linux, особенно вариантов, оптимизированных для мини-ядра, например, Qubes OS». Мэтт Эбрамс (Matt Abrams), партнер в компании Seven Peaks Ventures, предлагает сосредоточить усилия на понимании технологических процессов и методик их разрушения. По его мнению, эра постквантовой криптографии приближается быстрее, чем ожидалось. Специалисты должны понимать, что такое дифференциальная защита персональной информации (differential privacy) и состязательные нейросети (англ. – adversarial networks)".

Искусственный интеллект

11 технологий, которые должен знать всякий уважающий себя разработчик - 3
Спрос на разбирающихся в сфере искусственного интеллекта инженеров, в ожидании новой волны автомобилей без водителя, роботов и "интеллектуальной" электроники, растет не по дням, а по часам. «Мы сейчас испытываем переломный момент, в основном благодаря прогрессу в области вездесущих компьютеров, доступных облачных сервисов и практически безграничных хранилищ информации, – говорит Никола Морини-Бьянчино (Nicola Morini-Bianzino), старший исполнительный директор и руководитель группы искусственного интеллекта компании Accenture. — Искусственный интеллект сейчас встроен буквально во всё». Морини-Бьянчино прогнозирует спрос на разработчиков программного обеспечения, технологов и исследователей с опытом работы в сферах [автоматизированного – прим. перев.] перевода с одного языка на другой, распознавания речи, машинного зрения, робототехники, обработки текстов на естественных языках, представления знаний и построения логических рассуждений. Пища для AI – это данные, так что потребность в специалистах по управлению данными и контентом, исследователях данных и аналитиках также крайне высока. Вице-президент по маркетингу компании Treasure Data Тамура Кийото (Kiyoto Tamura) предсказывает, что искусственный интеллект вскоре перейдет от узкоспециализированных, приземленных сфер применения к гораздо более широким – и увлекательным – приложениям. Раньше задачи для искусственного интеллекта выглядели примерно так: «Найти оптимальный маршрут доставки посылки... или самые подходящие сайты для поискового запроса». Теперь их формулировки ближе к таким: «сыграть в го на пристойном уровне», «безопасно управлять автомобилем» и т.д. «Это здорово, но людям все еще приходится указывать компьютеру цели, и, пока что с этим ничего не поделаешь " — комментирует Тамура Кийото. Спрос на исследователей данных, — ученых, работающих в области машинного обучения, и специалистов по вычислительной лингвистике постоянно растет, — утверждает генеральный директор компании MindMeld Тим Таттл (Tim Tuttle). Он цитирует проведенное компанией VentureScanner исследование, в котором перечислено 910 занимающихся искусственным интеллектом компаний, открытых с марта по октябрь 2016 года. Среди них более половины заняты глубинным/машинным обучением и обработкой данных на естественных языках. «Эта сфера растет не только количественно. В неё них было вложено больше всего средств, порядка 4.5 млрд. долларов,» – говорит Таттл. Несмотря на недавний всплеск интереса к интерактивным приложениям, существует асимметрия между спросом и предложением в этой области. В результате эксперты этой предметной области останутся ценным ресурсом до тех пор, пока научные круги и промышленность не выровняют баланс.

Машинное обучение

11 технологий, которые должен знать всякий уважающий себя разработчик - 4
Один из видов искусственного интеллекта, машинное обучение, позволяет обрабатывать колоссальные объемы данных с целью быстрого поиска закономерностей – например, распознавания лиц – и решения таких задач, как рекомендация фильмов для потокового просмотра, без необходимости программирования явным образом. Патрик Спэддинг (Patrick Spedding), старший директор исследовательского подразделения бизнес-аналитики компании Rocket Software считает, что когнитивные технологии, совместно с ботами и машинным обучением, смогут повысить эффективность работы организаций, занимающихся поиском «полезного сигнала среди шума». «Машинное обучение, в конце концов, основывается на возможностях развитой аналитики, ранее известной под названием «интеллектуальный анализ данных» (data mining), которой для большей «популярности» не хватало лишь подходящей платформы", — комментирует Спэддинг . Возникает вопрос: как набраться опыта в этой сфере тем разработчикам, которые хотят посвятить себя машинному обучению? Эбрамс из компании Seven Peaks Ventures, рекомендует онлайн-курс Эндрю Ына (Andrew Ng) по машинному обучению на портале Coursera. Те, кто прошёл этот курс, демонстрируют в конкурсах Kaggle более высокие результаты, чем некоторые специалисты-практики с многолетним опытом. Далеко не каждый разработчик, который занимается машинным обучением, получил образование в области вычислительной техники. «Разумеется, образование в области вычислительной техники или базовое инженерное образование обычно помогает техническим специалистам достичь успеха в своей работе, такие специалисты способны в течение длительного времени выполнять эксперименты и усовершенствовать модели машинного обучения, — говорит технический директор и соучредитель компании Solvvy Мехди Самади (Mehdi Samadi). — Тем не менее, я часто наблюдал, как компании нанимали кандидатов без образования в области вычислительной техники и превращали их в специалистов по машинному обучению».

Наука о данных

11 технологий, которые должен знать всякий уважающий себя разработчик - 5
Наука о данных — еще одна модная область, требующая различных междисциплинарных навыков, причем в каждой отрасли — своих. Для преобразования больших объемов данных в пригодный для принятия коммерческих решений вид может понадобиться опыт работы с машинным обучением и искусственным интеллектом. «Опытные исследователи данных – дефицитный товар, – говорит Спэддинг. — Мне кажется, что сферы, в которых можно создавать технологии, помогающие в принятии решений, например, интеллектуальных ботов (англ. cognitive bots) и направляемую аналитику (англ. guided analytics) – это сферы чрезвычайно прибыльных возможностей". Для тех, кто хотел бы работать в этих областях, ключевым требованием является доскональное знание теории вероятностей и математической статистики, говорит Гэри Казанцев (Gary Kazantsev), возглавляющий группу машинного обучения в агентстве Блумберга. «Инженерные навыки, такие как способность писать нужный для создания системы код, лишними не будут. Тем не менее, с появлением таких утилит как библиотека машинного обучения TensorFlow или блокнотов Jupyter, эта задача существенно облегчается. Чтобы заниматься наукой о данных пригодятся хорошие исследовательские навыки, то есть, умение формулировать гипотезы, проверять их, изучать современную литературу и постоянно следить за новостями в своей области". Гюнтер Ольманн (Gunter Ollmann), начальник службы безопасности компании Vectra, говорит, что в настоящее время во многих компаниях исследователей данных рассматривают отдельно от проектировщиков, научно-исследовательских групп и разработчиков. По мере того, как инструменты глубинного и машинного обучения усовершенствуются, а учебные курсы на тренингах всё эффективнее рассказывают ведущим инженерам о новинках в области науки о данных, разграничение между наукой о данных и программной инженерией постепенно будет исчезать. В будущем, сплав набора навыков и умения обращаться с обоими инструментами станет обязательным".

Цепочка блоков транзакций

11 технологий, которые должен знать всякий уважающий себя разработчик - 6
Преимущества этого способа создания распределенного средства финансового учета для транзакций заключаются как в прозрачности, так и безопасности, хоть отсутствие стандартизации замедляет внедрение его в широкий круг отраслей промышленности. Питер Луп (Peter Loop), помощник вице-президента и основной архитектор технологий компании Infosys, оценивает эту технологию оптимистически: "Несмотря на ошибочное представление о том, что от технологии цепочки блоков транзакций (англ. blockchain) нас отделяют годы, мы уже в следующем году увидим её полноценные развертывания в областях финансовых услуг, страхования и здравоохранения. Это полностью подорвёт нашу систему платежей в международном масштабе". У других развивающихся технологий более отвесная кривая обучения, – говорит Роберт Бардуниас (Robert Bardunias), соучредитель и главный налоговый инспектор компании IRIS.TV, восхищенный присущим этой технологии акцентом на предпринимательской деятельности. "Эти технологии с первого дня растут, ориентируясь на применение в операционной коммерческой практике, так что разработчикам не нужно придумывать сценарии использования – они возникают и развиваются в режиме реального времени, – комментирует Бардуниас. — Необходимость идти в ногу с новыми разработками и изменениями окажутся непростой задачкой для тех, кто захочет стать профессионалом в этой сфере. Я вспоминаю, как когда-то нарабатывал второстепенные профессиональные навыки, такие, как чтение веб-сайтов – и журналов по отраслевой торговле. Это последнее, чем мне хотелось заниматься, но сегодня это обязательная часть обучения разработчика, который хотел бы получить и сохранить конкурентные преимущества на мировом рынке".

Архитектура сетки приложений и сервисов (MASA)

11 технологий, которые должен знать всякий уважающий себя разработчик - 7
Также постоянно растёт спрос на приложения, способные сохранять бесперебойное соединение, переключаться и работать при нашем перемещении по дому. "Смысл многосвязной сетки — в высокой доступности: все элементы соединены между собой, – рассказывает Джозеф Карсон (Joseph Carson) из компании Thycotic. — Если маршрут недоступен, будет найдено другое устройство для установки соединения. Это используется, например, для отслеживающих устройств компании Tile, а также для криптовалют, таких как биткойн, как распределенного средства финансового учета". Другие эксперты указывают на потенциальное узкое место в отсутствии достаточной совместимости устройств. "Все производители по-своему пытаются завоевать доверие потребителей, делая собственные экосистемы, если они вообще существуют, закрытыми", – говорит Дерек Коллисон (Derek Collison), генеральный директор компании Apcera (ранее — сотрудник Cloud Foundry). "Мне кажется, что искусственный интеллект будет обучаться в облаках, на огромных массивах данных от всех пользователей, – говорит Коллисон. — Эти алгоритмы будут непрерывно обновлять свои модели выполнения, которые будут передаваться на оконечные устройства при помощи беспроводной связи и использоваться для обновления встроенного ПО на наших телефонах, автомобилях и домашних устройствах. Обработка данных будет проходить на аппаратном обеспечении локальных устройств, а обучение – при помощи программного обеспечения в облаке".

Цифровые двойники

11 технологий, которые должен знать всякий уважающий себя разработчик - 8
Подключенные к физическим и виртуальным сенсорам программные модели можно использовать для предсказания отказов продуктов и сервисов, что позволяет компаниям планировать и распределять ресурсы для выполнения ремонтных работ до того, как произойдет сбой. Успехи машинного обучения и внедрение технологий искусственного интеллекта позволяет снизить стоимость подобного прогнозного моделирования, именуемого "цифровыми двойниками", что дает возможность существенно увеличить эффективность и снизить эксплуатационные расходы в течение срока службы, скажем, реактивного двигателя или электростанции. По словам МатиасаВолошского (Matias Woloski), технического директора и соучредителя компании Auth0, бизнес сможет использовать цифровых двойников также на этапе концептуальной проработки и проектирования, проводя имитационное моделирование новых программных продуктов с поэтапным внесением изменений вплоть до получения удовлетворительного результата. Добытые на основе цифровых двойников сведения будут учтены при создании продукта. "Несколько организаций уже используют цифровых двойников. Главным образом эта технология востребована в тех проектах, где слишком велики предварительные затраты, а, следовательно, и цена неудачи", – делится Волошский. Технический директор компании SpaceTime Insight, Пол Хофман (Paul Hofmann), утверждает, что цифровые двойники пользуются машинным обучением, что делает их более эффективными при прогнозировании отказов, чем модели обслуживания по техническому состоянию. "Благодаря системам IoT и машинного обучения компании могут быть уверены, что их ресурсы не начнут отказывать случайным образом, а если и откажут, то компания сможет принять в режиме реального времени оптимальное решение, рассчитанное на долгосрочную перспективу".

Автомобили без водителя, роботы и бытовые приборы

11 технологий, которые должен знать всякий уважающий себя разработчик - 9
Бытовые приборы, промышленное оборудование, автомобили и дроны «умнеют» благодаря искусственному интеллекту и машинному обучению. По оценкам исследовательской компании Gartner, к 2020 году с конвейеров автомобилестроительных компаний будет сходить 61 млн автомобилей с сетевыми возможностями в год. «Здесь растут целые экономические системы, – говорит Винс Джефс (Vince Jeffs), директор по стратегии и маркетингу продуктов в компании Pegasystems. — Например, есть стартапы и уже сформированные компании, которые занимаются искусственным интеллектом, которые достаточно прочно обосновались в области автономных транспортных средств. Например, MobileEye – компания с венчурным капиталом в $500 млн, специализирующаяся на маленьких камерах, размещаемых по всему автомобилю. Аналогично, существуют компании, торгующие физическими роботами – например, SoftBank Robotics специализируется на роботах-консьержах для отелей. Их венчурный капитал составляет $250 млн". Прогресс в сфере глубинного обучения привел к усовершенствованию машинного зрения, обработки текстов на естественных языках и речи, равно как и умения машин и программного обеспечения "стремиться к вознаграждению" и максимизировать производительность, – говорит Уэйн Томпсон, главный исследователь данных компании SAS: "В результате мы получаем новое поколение машин, способных обозревать мир, слышать и читать на естественных языках, общаться с людьми и саморегулироваться как механически, так и в смысле поведения, что является совершенно беспрецедентным". Хотя многим автоматизация представляется кошмаром, лишающим людей работы, другие, напротив, утверждают, что эти технологии ведут к более светлому и гуманному будущему. "Меня часто спрашивают о последствиях автоматизации, – говорит Майкл Хаббард (Michael Hubbard), директор по международным связям компании ServiceNow. — Интеллектуальная автоматизация – это не угроза, а колоссальные возможности. Она способна освободить нас от рутинных действий, открывая путь творчеству и позволяя создавать более крепкие и продуктивные рабочие отношения".

Виртуальная и дополненная реальности

11 технологий, которые должен знать всякий уважающий себя разработчик - 10
После десятилетий назойливой рекламы, для виртуальной и дополненной реальности наконец-то наступает переломный момент. И для желающих разрабатывать продукты на основе этих технологий открываются новые горизонты: расширение ощущений во время игр. "Эти технологии ещё не слишком распространены, но стали куда более зрелыми вы последние годы,— делиться наблюдениями Энап Нэйр (Anup Nair), вице-президент и технический директор компании Mphasis Digital. — Я полагаю, что в отраслях биомедицины и охраны здравоохранения, AR/VR принесут огромную пользу, как в целях обучения, так и для обмена информацией о сложных хирургических процедурах. Мы видим планы мероприятий AR, нацеленных на выполнение глубокого анализа в центрах управления социальными медиа больших банков, а также в биржевых залах, где они будут предоставлять биржевым маклерам бесконечное пространство для анализа данных и совместной работы». Кристиан Сэссо (Christian Sasso), адъюнкт-профессор квалификационной программы VR/AR расположенного в Сан-Хосе колледжа Когсвэлл, считает дополненную реальность важнейшим технологическим трендом года. «Очень скоро можно будет использовать AR для обслуживания клиентов при необходимости ремонта произведенного компанией устройства", – говорит Сэссо. — Например, в проекте, над которым я работаю, очки дополненной реальности используются для связи с консультантом по обслуживанию клиентов в случае поломки телевизора или монитора. При непосредственном разговоре с клиентом через интерфейс дополненной реальности, представитель компании может получить всю необходимую информацию путем визуального осмотра поломанного экрана, без необходимости описания проблемы по телефону или поисков серийного номера". «Технологии AR и VR не будут широко распространены до появления более доступного и качественного аппаратного обеспечения для них, – утверждает Вишва Ранджан (Vishwa Ranjan), глава подразделения дополненной и виртуальной реальностей компании Infosys. — Уже в 2017 году мы столкнемся с тем, что компании-производители смартфонов начнут развивать возможности дополненной и виртуальной реальности, например, технологии, основанные на распознавании лиц, определении местоположения, использовании датчиков и камер с обзором в 360 градусов, которые сыграют существенную роль в продвижении продаж AR и VR устройств первым покупателям".

Человекоподобные помощники

11 технологий, которые должен знать всякий уважающий себя разработчик - 11
Это следующий этап искусственного интеллекта! Мы покончим с неуклюжими инструментами, которые сейчас используются для взаимодействия с цифровым миром. По мнению экспертов, вскоре скоро будем использовать вспомогательные средства не просто для онлайн-заказа товаров и услуг или поиска в интернете. Они превратятся в продолжение нашего собственного мозга. Нам больше не нужно будет запоминать столько информации: с помощью технологических инструментов мы освободим ресурсы для аналитического и критического мышления". Чему же стоит уделить внимание, если нас интересует разработка подобных вспомогательных технологий? "Наибольший спрос сейчас на глубокие знания (deep knowledge)", — рассказывает Гюнтер Ольманн, начальник службы безопасности компании Vectra. — Например, экспертные знания в области информационной безопасности (безопасность веб-приложений, экспертиза сетей, дизассемблирование вредоносных программ)". Дэвид Парментер (David Parmenter), отвечающий за данные и технический директор Adobe Document Cloud, говорит, что ключ к этому, даже в большей степени, чем ученое звание в сфере компьютерных наук, – страсть к математике и логике. "Креативность, желание постоянно учиться, клиентоцентричное мышление, стойкость перед неудачами – результаты машинного обучения представляют собой отнюдь не готовый продукт – и коммуникабельность – важнейшие социальные навыки для работающих в этой сфере инженеров".

И победитель... — сочетание всего этого!

11 технологий, которые должен знать всякий уважающий себя разработчик - 12
Хотя искусственный интеллект, вероятно, – чаще всего упоминаемая революционная технология текущего года, важнейшая тенденция — это слияние бурно развивающихся новейших технологий. Маартен Экторс (Maarten Ectors) из компании Canonical перечисляет больше десятка различных технологий, объединение которых дает больше, чем просто сумма составных частей: "облачные технологии, мобильные устройства, IoT, искусственный интеллект, цепочка блоков транзакций, дополненная реальность, голосовые интерфейсы, программно-управляемая радиосвязь, 'четвёртая промышленная революция' [автоматизация и обмен данными в промышленности], робототехника, периферийные вычисления и автомобили без водителя". Патрик Спэддинг, из компании Rocket Software, говорит, что отдельные технологии объединяются, в основном, из-за потребности компаний выбраться из завалов собственных данных – например, при анализе трафика веб-сайтов. "Если прибавить к этому рост объемов новых источников данных, таких как интернет вещей", – говорит он, – "оказывается, что нелегко даже просто поспевать за объемами доступной для принятия бизнес-решений информации". Спэддинг считает, что перспектив для слияния когнитивных технологий, ботов и машинных языков будет тем больше, чем более понятными они будут. Новое поколение "цифровых туземцев" ускорит внедрение этих объединенных технологий, – говорит он, – поскольку они ждут [от технологии] удобства использования, интерфейсов в духе компьютерных игр, а также повсеместного применения дополненной и виртуальной реальностей.
Что ещё почитать:

Эмпатия как секретная суперсила разработчика

11 каверзных нетехнических вопросов, которые ожидают вас на собеседовании с рекрутёром

Легенда о призрачном программисте-универсале или «вакансия для золотого кодера»