Отрасль IT развивается стремительно. Создаются новые технологии и знания, возникают идеи и стартапы, гиганты индустрии лидируют по капитализации в списках крупнейших компаний мира, а более традиционные области человеческой деятельности всё чаще используют IT-решения в своём развитии. Но что заметного происходит прямо сейчас? Что нужно не упустить, чтобы найти себе достойное место в будущем?
Чтобы разобраться в этом, мы решили узнать мнения спикеров нашей конференции YaTalks, которая пройдёт в Москве 30 ноября. Среди наших спикеров — Александр krainov Крайнов, Андрей yafinder Плахов, Андрей styskin Стыскин, Евгений eross Россинский, Роман romas1982 Ивлиев. А вот и вопросы, на которые они сегодня отвечают:
— Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
— Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
— Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Александр Крайнов, руководитель Лаборатории машинного интеллекта, Яндекс
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
Думаю, что самым громким событием стала история с баном Huawei. Её последствием может стать появление новой, альтернативной Андроиду, операционной системы и, вообще, некоторая фрагментация. Теперь не может быть однозначной уверенности, что использование чужих экосистем не несёт в себе больших рисков.
Если же говорить про технологические тренды, то меня очень впечатляет прогресс в машинном переводе и в синтезе речи, а также в генерации изображений. Сети GAN и их разнообразные модификации позволяют получать всё более реалистичные изображения, что, в свою очередь, породило и направление детектирования сгенерированного контента. Видимо, предстоит большая битва.
Ещё интересные события происходят в области обработки фотографий в процессе съемки. Решения на основе получения одного кадра объединением нескольких дают впечатляющие результаты. Кажется, тут еще не всё исчерпано. Стоит ожидать существенный прирост качества фотографий за счёт автоматического процессинга.
Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
Тут всё сильно зависит от конкретной темы. Я бы советовал читать статьи по интересующим темам со всех профильных топовых конференций. В компьютерном зрении это CVPR, ICCV/ECCV, ICLR. В более общем ML это NeurIPS и ICML.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Надо учиться учиться. Всё развивается так быстро, что без умения получать новые знания сложно рассчитывать на успех. И большой ошибкой будет считать, что полученных знаний в целом достаточно. Какие бы они глубокие и обширные ни были.
Хотя, конечно, и базовые знания алгоритмов, и умение программировать останутся необходимыми и в будущем.
Алексей Башкеев, руководитель направления технологического и продуктового развития, Яндекс
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
Возможно, я травмирован своей диссертацией (теоретическая работа о запутанных квантовых состояниях), но я очень рад прогрессу вот этих ребят в создании квантовых компьютеров. Признаться, я думал, что такое может и не произойти при моей жизни, и это одна из причин, почему я бросил фундаментальную науку и переквалифицировался в прикладного специалиста. 15 лет назад казалось, что это всё будет достижимо через какие-то десятилетия, а ждать, пока уровень технологий дойдет до практической реализации, не хотелось.
Теперь я уже не знаю, чего ждать в следующие 15 лет. Вполне возможно, квантовые вычисления перевернут привычный нам мир и начнут проникать в нашу жизнь так же изящно, как это делает машинное обучение всех видов. Но одно можно утверждать наверняка: ближайшие лет 10-20 будут очень интересными для новых аспектов сomputer science.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
В первую очередь, изучить какой-нибудь достаточно сложный язык, пока у вас еще есть на это время. Я бы посоветовал C++ или Java. Не столько синтаксис языка, сколько алгоритмы и структуры данных, их реализации на конкретных языках. Перейти с языка на язык, как показывает практика, не так уж сложно, а вот фундаментально разобраться в базовом программировании лучше в начале карьеры, чем догонять потом.
Не гонитесь за хайповыми технологиями. Все эти новые языки программирования и «какая-то-клевая-штука.js» — часто недолгоживущие вещи, многим из них сложно набрать и удержать популярность. Особенности многих языков можно освоить. Если на интервью у вас спрашивают, как в каком-нибудь языке добуквенно называется какая-то не особо популярная конкретная функция — скорее всего, лучше бежать из этой компании, у вас потом ещё и не то спросят.
Разберитесь с математической статистикой и теорией вероятности. Если, услышав слово «перцентиль» на рабочем совещании, вы пойдете в википедию, то вы что-то важное пропустили. Если вам не повезло, и у вас не было такого предмета или действительно хорошего преподавателя, современное онлайн-образование этот пробел легко восполнит.
И самое главное: в начале карьеры лучше найти достаточно хорошего руководителя. Того, кто согласится потратить на вас достаточно времени и сил, поделится своим опытом. И с кем вам будет комфортно работать. Хороший руководитель в начале карьеры способен сэкономить несколько напрасно потраченных лет в построении карьеры.
Ну и саму карьеру я бы советовал начинать с большой компании. И для резюме хорошо, и в целом лучше посмотреть, как всё это изнутри устроено на больших масштабах, прежде чем решать, нравится ли вам такой мир, хотите ли вы его дальше развивать в стенах большой организации или лучше запилить свой стартапчик с другом.
Алексей Миловидов, руководитель разработки ClickHouse, Яндекс
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
Наиболее обсуждаемыми новостями около IT стали события вокруг Boeing 737 MAX, а также торговая война с Huawei. Важными событиями в мире опенсорса этого года были продажи nginx, RedHat и GitHub; смена лицензии MongoDB и некоторых других; уход основателей Python, а также FSF. Сейчас развивается история с TON и Libra — будем следить за событиями.
Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
Рекомендую прочитать про разбор инцидента в CloudFlare. Ещё рекомендую интересную дискуссию по поводу примеров плохого кода.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Если вы только начинаете, я советую завести аккаунт на GitHub и попробовать найти какие-нибудь простые задачи в популярных опенсорс-продуктах. Пул-реквест в известный опенсорс-продукт обычно включает в себя весь цикл подготовки изменений и обеспечения их качества. Так вы сможете получить хороший профиль на GitHub, работодатели обращают на это внимание. Если знаний недостаточно — стоит посмотреть онлайн-курсы. Для C++ рекомендую курс «Основы разработки на C++» — он состоит из нескольких частей по возрастанию сложности: белый пояс, жёлтый пояс и т. п.
Андрей Плахов, руководитель отдела функциональности поиска, Яндекс
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
Хоррор года. Сомнительные, мягко говоря, практики в управлении проектом, проектировании и разработке, принятые в Boeing при разработке модели 737 Max, привели к двум жутким катастрофам с сотнями человеческих жертв. Хотя история на первый взгляд выглядит абсолютно не айтишной, она интуитивно понятна любому программисту, работавшему в больших компаниях, а сам фатальный баг был по сути софтверным. Разработка велась много лет, но все эти ошибки так ужасно проявились и были осознаны только этой весной. По своим последствиям, в том числе финансовым, эта история — хороший претендент на то, чтобы войти в «top of all time». Отличное подробное изложение истории на английском можно прочитать тут.
Шутка года. Разработчик одного из популярных JS-модулей начал вставлять в свой код рекламу, показываемую разработчику в терминале в момент сборки. К счастью, «изобретение» не было подхвачено и трендом не стало.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Напишу банальную, но редко проговариваемую вслух вещь. Чтобы всегда быть востребованным на рынке труда, разработчику нужно написать и прочитать очень много кода. Желательно — такого, который делал бы что-то полезное. Желательно разного. Только из конкретных мелочей, тривиальщины, всего этого супа из if-ов, перекладывания JSON-ов и изнурительного дебага, заканчивающегося рукалицом, постепенно возникнет ваше собственное видение, профессионализм и умение сделать нечто намного большее.
Короткого пути нет, даже если вы очень-очень-очень умный. Да, читать книги и блоги со всякой мудростью и обобщённым взглядом на мир тоже очень полезно, но пока вы не потратите свои пять тысяч часов на то, чтобы просто писать код, вы не поймёте полезные мысли, зато будете легко ловиться на булшит. И да, конкретные технологии и тренды на рынке труда могут быть важны, но накачанная кодерская мышца работает как мультипликатор к вашей способности их быстро и качественно осваивать.
Андрей Стыскин, руководитель поискового портала, Яндекс
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
Самый заметный для меня тренд — развитие различных процессоров и, в частности, GPU. Спрос к машинкам хорошо подтолкнул майнинг крипты, но теперь майнинг постепенно уменьшается, а мощности переиспользуются под задачи ML. Благодаря этому можно видеть всё больше новостей про разные любопытные применения методов машинного обучения в генерации и модификации изображений и видео. Думаю, в будущем нас ждёт интересное развитие, особенно в области специфических мобильных процессоров, которые позволят изобрести ещё больше любопытных приложений.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Изучайте ML и программируйте как можно больше! Чтобы всегда оставаться на гребне волны, нужно очень быстро бежать и учиться, учиться, учиться. ML сейчас находится в стадии бурного развития и будет в тренде ещё очень долгое время. Индустрия постоянно нуждается в новых специалистах, а действительно универсальных бойцов, на которых можно возложить большую ответственность, всегда не хватает. Поэтому, достигнув успехов в этой области, можно не бояться за своё будущее трудоустройство.
Программирование же продолжит быть весьма востребованным навыком, который поможет специалисту в любой специальности держать свою эффективность на высоком уровне. Чтобы не терять, а набирать свою программистскую форму, просто пишите много разного кода.
Григорий Сапунов, сооснователь и CTO, Intento
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
— Появляется больше интересного железа: специализированные процессоры для ML/AI, мобильные и не только (приходите на доклад!), programmable SSD, persistent memory, всё более быстрые беспроводные сети. Батарейки, кажется, только недостаточно прогрессируют. :)
— Много разных интересных вариантов распределённых вычислений, начиная с набившего оскомину блокчейна, к распределённому обучению нейросетей, которое уже давно commodity, federated learning, edge computing и т. д.
— Порог на вход в прикладной AI (в первую очередь речь о применении нейросетей) радикально снизился, многие интересные приложения уже можно собрать чуть ли не из готовых блоков, просто об этом ещё никто не догадался. Будьте первыми, кто догадается!
— Появилось огромное количество облачных когнитивных сервисов для обработки данных (машинный перевод, классификация картинок, распознавание речи и т. д.), которые в том числе можно обучать под свои задачи, почти ничего не зная про машинное обучение. Не надо создавать в компании отдел data science (если это не core-вещь для вас), не надо разворачивать и поддерживать свою инфраструктуру. Можно просто использовать, написав не самую сложную интеграцию.
— Развивается тема serverless, мне она нравится. Вроде бы уже можно осмысленно использовать, но, кажется, глобально там ещё поле непаханое.
Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
Много всего случилось в NLP (Трансформеры/BERT и их последователи), многое происходит в генеративных моделях (GAN и не только) и особенно в контексте deepfakes (кое-какой мой обзор есть здесь), много интересного произошло в области AI, умеющего играть в игры (OpenAI Five/Dota 2, AlphaStar/StarCraft, Pluribus/Poker).
Читайте свежие статьи! https://arxiv.org/, http://www.arxiv-sanity.com/, подпишитесь на интересных авторов в Google Scholar, подпишитесь на наш канал в телеграме: https://t.me/gonzo_ML.
Есть также видео моего сравнительно свежего выступления на тему архитектур нейросетей.
Посмотрите на Federated Learning.
Посмотрите на Swift for TensorFlow, поглядите на Neural Modules (nemo) от NVidia. Нейросети движутся путём традиционных языков программирования, к большей типизации и к более высокому уровню выражения ваших мыслей. Посмотрите на MLIR.
Если вы живёте в экосистеме JVM, поглядите в сторону Kotlin, если ещё не.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Всё довольно банально.
— Освойте современный нейросетевой фреймворк (TensorFlow 2.0 или PyTorch), научитесь решать на нём разные задачи.
— Сделайте какой-то pet project и опубликуйте его (сайт-демонстрация, репа на GitHub, библиотека или свой фреймворк, статья, …).
— Следите за трендами, читайте статьи, смотрите, что нового выходит от Google, Facebook, DeepMind, OpenAI, Nvidia — продолжите список сами.
— Общайтесь с коллегами! Как вариант, устройтесь в компанию, где много умных людей вокруг заняты чем-то интересным для вас. Или подумайте про свой стартап и какой-нибудь интересный продукт, который вы могли бы сделать.
— Смотрите, что происходит в других областях ML, AI и CS (эволюционные вычисления, artificial life, neuro-symbolic computations, SAT-солверы, криптография, распределённые вычисления, квантовые вычисления, …), что происходит на стыке с гуманитарными дисциплинами.
— Не забывайте об этике и о том, какие задачи вы решаете и ради чего.
Да, и это всё было про ближайшие два года. Про следующие два скажу через год-два. На десять лет планировать сложно, но если вопрос стоит именно так, то получите какое-то хорошее фундаментальное образование (физика, математика, современная биология, …), оно не пропадёт. И будьте открыты миру!
Евгений Россинский, CTO, ivi
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
— С опаской ожидаю, как будут проходить учения по обособлению российского сегмента интернета, что-то да должно отвалиться.
— Довольно интересно, как хардварные производители видят будущее и какие устройства создают для обеспечения твёрдой поступи AI по планете. Очень интересно наблюдать за вечными качелями идеологий толстых и тонких клиентов.
— Хочется, чтобы в вопросах AI ведущие компании занимались не только использованием чужих моделей, но и созданием своих. На это надо обратить самое большое внимание при развитии модного ныне направления.
— Если говорить про наше направление, то очень интересно наблюдать, как год от года растёт средний битрейт при просмотре видео в мобильных сетях. Эти тенденции очень радуют и позволяют делать более вкусные продукты — и в части интерфейсов, и с точки зрения качества картинки в видео.
Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
— Очень хорошие доклады рассказал Саша Тоболь про то, как пробивать NAT, как правильно готовить TCP для разных видов контента.
— Всегда с интересом читаю техблог Netflix, там попадаются очень интересные статьи типа таких:
- Netflix’s Production Technology = Voltron
- Building a Cross-platform In-app Messaging Orchestration Service.
— Являясь членом программного комитета Highload, очень много нового узнаю, просматривая доклады и обсуждая их с коллегами. Настоятельно рекомендую ознакомиться с материалами и докладами с ноябрьской конференции.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Не привязываться к конкретным технологиям, прокачивать теоретическую базу и скиллы коммуникации. Никто не знает, что будет востребовано с точки зрения технологий, но крутого инженера, способного быстро адаптироваться к новому инструментарию, умеющего общаться с коллегами и играть в команде, всегда будут отрывать с руками.
Роман Ивлиев, CTO, mos.ru
Какие события в мире IT за последний год запомнились тебе больше всего? Что интересного случилось, какие сейчас есть интересные тренды, на которые стоит обратить внимание?
По событиям сложно сориентироваться. Их много.
— Из последнего могу отметить уход Гвидо ван Россума из Dropbox, вряд ли это что-то важное, но Гвидо — личность.
— Ряд скандалов в крупных сообществах вроде Linux Foundation, связанных с различными высказываниями их участников. Раньше, как мне кажется, скандалов было сильно меньше. Я не фанат мыла, но это прям бросается в глаза. Уважаемые люди остаются за бортом. Это печально.
— Феерическая отмена PHP Central Europe из-за вопросов diversity.
Тренды, которые, как мне кажется, сейчас в топе:
— Diversity. Это слово намертво вошло в лексикон всех, кто в IT и около IT. Про это стали говорить много и с разных площадок. В результате, как мне кажется, сообщество разделилось на две половины. За и против. Безразличных, по сути, не осталось.
— SRE. Эта штука прям очень сильно прибавила в 2019 году в сообществе, хотя сама тема была поднята Google ещё в 2016-м.
— ИИ, ML, интернет вещей, большие данные и всё вокруг. Это прямо стабильно усиливающийся тренд. Многие большие конторы очень сильно вкладываются в это направление, оно будет развиваться и прогрессировать. Сообщество отвечает взаимностью.
— Тотальная цифровизация и цифровая трансформация. Не-IT-конторы активно в этом направлении стали топить. Можно отследить по количеству эвентов про цифровую трансформацию.
— Рост влияния IT-топов на жизнь своих контор. СТО, CDTO, CIO стали получать большие части бизнеса в своё управление.
— Рост интереса к квантовым вычислениям.
— Edge computing.
— Ну и конечно же, ИБ. Кругом утечки, сливы, торговля персоналкой и прочее.
Какие важные книги/статьи/выступления на тему разработки случились за последний год? Что порекомендуешь изучить тем, кто хочет быть в теме?
Кто хочет быть в теме — надо постоянно следить за трендовыми направлениями. Здесь сложно что-то предложить. Крутые статьи и выступления появляются каждую неделю. Многие статьи появляются в блогах компаний и часто попадают ко мне через третьи руки.
Тут надо подписываться на различные ИТ-каналы и вступать в группы (Telegram, Facebook, LinkedIn). Следить за всем невозможно, но постоянно обозревать ту область науки и техники, где работаешь, — жизненно необходимо, будь то PHP, Go или Mongo. Постоянно что-то происходит, выходит новый софт, мудрят новые подходы к разработке, в общем, движение есть. А вот если его в радиусе квадрата тех технологий, которыми ты занимаешься, нет — вот тут пора бы задуматься, всё ли верно в твоей жизни. Конечно, можно смотреть только Хабр и CNews, но это, по моему мнению, пара процентов от того, что происходит в мире.
Что посоветуешь действующим разработчикам и тем, кто только учится? Чем заняться прямо сейчас, чтобы через год (два, пять, десять) быть востребованным на рынке труда?
Постоянно следить за трендами и развиваться параллельно с ними. Лишних знаний не бывает. Разве что на всё не хватит времени. Поэтому нужно держать фокус и оставить место для всего, что находится вокруг твоей основной области. Уверен, что ИТ-рынок в целом будет развиваться во всех направлениях, будь то веб-разработка, ML или IoT. Даже если в рамках работы не требуется изучать что-то новое (такое бывает), нужно действовать проактивно, смотреть технологии, слушать доклады с конференций, понимать, чем дышит индустрия. Это позволит более уверенно чувствовать себя на рынке. Если через 10 лет нас, конечно, не заменят роботы.
Конференция YaTalks состоится 30 ноября в конференц-зале Paveletsky Space в Москве. Регистрация открыта и доступна по ссылке.