Чем занимается разработчик нейросетей
В общих чертах AI-инженер выясняет потребности заказчика, создает для него модель на базе искусственного интеллекта, обучает и тестирует ее. А теперь обо всём по порядку:
- Искусственный интеллект — это отрасль науки, включающая такое направление, как машинное обучение (Machine Learning).
- ML — это способ тренировки компьютера, при котором ему показывают пример и просят исполнить нечто похожее. Чем лучше подобран набор сэмплов, тем глубже уровень проработки задания.
- Нейросеть — один из алгоритмов машинного обучения. Если говорить простым языком, речь идет об искусственно созданном примитивном аналоге мозга человека, но, по сути, это сложная математическая модель, которая представлена в виде ПО и функционирует как нервная система живого существа.
Результат работы ИИ-инженера — нейронная сеть (компьютерная программа). Специалист добивается того, чтобы она научилась распознавать загружаемые в нее данные, определять закономерности, делать прогнозы и самостоятельно принимать решения. Это может быть модель для обнаружения залежей нефти, мобильное приложение с картой пробок на дорогах, бот телеграм-канала, принимающий заявки от потенциальных клиентов, и так далее.
С основными терминами разобрались. Но однозначно ответить на вопрос, что делает программист нейросетей, всё равно не получится. Модели искусственного интеллекта востребованы во многих сферах, поэтому перечень обязанностей специалиста будет зависеть от целей работодателя. Однако можно назвать ряд типовых задач, характерных для большинства проектов:
- исследование области, для которой конструируется модель машинного обучения, и выбор подходящих алгоритмов;
- оценка потенциальных рисков использования нейронной сети на целевом участке;
- сбор данных для формирования тренировочного набора ИИ, их визуализация и проверка на наличие вероятных закономерностей;
- проектирование модели, работа над архитектурой;
- программирование нейросети;
- применение к модели алгоритмов машинного обучения;
- обучение нейронной сети при помощи собранных ранее тренировочных данных;
- тестирование получившейся модели и исправление обнаруженных ошибок;
- разработка программного обеспечения для поддержания готовой нейросети;
- внедрение в бизнес-процессы (развертывание), мониторинг и обслуживание сетевой модели (доработка, масштабирование, исправление багов, борьба с переобучением);
- преобразование ML-модели в API (программный интерфейс приложения) для использования ее возможностей другими приложениями;
- взаимодействие с командами аналитики и техподдержки на протяжении периода жизненного цикла программы.
На самом деле, мы чуть ли не ежедневно сталкиваемся с разработками AI-инженеров. Рекомендация музыки в VK, подборки новостей, показ рекламы, отвечающей нашим интересам, — всё это «дело рук» нейронных сетей. Примеры очень разные, но во всех перечисленных случаях задача специалиста сводилась к тому, чтобы написать компьютерную программу, которая правильно интерпретирует входные сведения, анализирует их и генерирует новый массив данных для пользователя.
Для примера рассмотрим перечень обязанностей начинающего разработчика нейронных сетей с опытом 1–3 года в консорциуме «Интегра-С» (сфера безопасности):
Инженеру уровня middle поручают более сложные задачи. Посмотрим на текст вакансии ООО «Опора Стандарт» (сфера онлайн-образования):
А вот чем предлагают заниматься разработчику нейросетей с опытом от 3-х до 6-ти лет в компании LC Group (сфера автоматизации управления бизнесом):
Зарплаты и перспективы
По данным исследования «Ростелекома» и TAdviser, 85% российских компаний уже внедрили нейросети в свой бизнес. Государственные и коммерческие организации убедились на собственном опыте в том, что применение ИИ экономит деньги. Благодаря моделям на базе искусственного интеллекта, предприятия создают новые интеллектуальные системы, оптимизируют и автоматизируют процессы.
Развитие технологий затронуло многие отрасли, поэтому спрос на разработчиков нейросетей растет быстрыми темпами. И примечательно то, что экспертов по ИИ с многолетним опытом на рынке нет, ведущие университеты страны анонсировали профильные программы относительно недавно. Это говорит о том, что у джунов, готовых освоить сложные дисциплины, есть шанс быстро «войти в айти». А добравшись до мидл-уровня буквально за пару лет, можно отправлять резюме в международные и топовые отечественные организации вроде Сбера, Авито, Озона и Вайлдберриз.
На какой же доход может рассчитывать разработчик нейросетей? Давайте посмотрим на примерах реальных вакансий. Зарплату от 150 000 ₽ специалисту с опытом 1–3 года предлагает ЦИТ «Роскадастр-Инфотех» — главный оператор систем Росреестра:
ИИ-инженеры уровня мидл с опытом от 3 до 6 лет могут рассчитывать на оклад 450 000 ₽ — столько предлагает специалисту компания Rubbles, занимающаяся созданием Data Science-продуктов для различных индустрий:
Зарубежный айти-рынок предлагает AI-разработчикам уровня сеньор еще более привлекательные условия трудоустройства. Стоит учесть, что в большинстве случаев, помимо заработной платы, специалист получает также акции компании работодателя и различные бонусы. Например, вот какой оффер готова сделать программисту организация CyberCoder:
Средняя зарплата разработчиков нейросетей в России на момент написания статьи составляет 77 000 ₽. В Америке это $9300. На территории стран Евросоюза навыки ИИ-инженеров оцениваются в сумму около 4700 € в месяц.
Что должен знать и уметь разработчик нейросетей
Если посмотреть на roadmap специалиста по искусственному интеллекту, можно мгновенно утратить желание стать разработчиком нейросетей Неудивительно, ведь эксперт должен, помимо прочего, обладать знаниями в области машинного обучения и науки о данных (Data Science). Это две сложнейшие дисциплины, сами по себе позволяющие получить профессию ML-инженера и аналитика данных соответственно.
- Программирование. Чаще всего можно встретить разработчика нейросетей на языке Python (пайтон, питон), потому что его проще освоить. Но при разработке моделей и алгоритмов также успешно применяются Java, C++ и R.
- Математика и статистика. Без крепких знаний линейной алгебры, теории вероятностей, матанализа и дискретной математики не получится понять принципы алгоритмов ИИ. Статистика нужна для обработки данных перед передачей их на вход нейросети и выбора архитектуры.
- Машинное обучение. Не разобравшись с концепциями, алгоритмами и фреймворками ML (такими как PyTorch и TensorFlow), ИИ-инженер попросту не справится со своей работой. Также решающее значение имеет освоение принципов обучения нейросетей «с учителем», «без учителя» и с подкреплением.
- Глубокое обучение (Deep Learning). Эта дисциплина нужна для понимания методов обработки данных и построения моделей.
- Обработка естественного языка (NLP). Здесь будущему разработчику нейросетей предстоит научить компьютер воспринимать человеческий язык (русский, английский и так далее) — обрабатывать текст, распознавать объекты по названию.
- Анализ и визуализация данных. Дополнительным преимуществом будет умение пользоваться базами данных — поэтому придется освоить язык SQL и нетабличные БД, например, NoSQL.
- SPARK. Это система аналитики, которая используется в основном для обработки больших наборов данных. Есть API на языках Python, Java, R и Scala.
- Большие данные (Big Data). Технологии обработки больших данных нужны для того, чтобы анализировать огромные объемы информации, формулировать по ним выводы и составлять прогнозы.
- Облачные вычисления. Такие платформы, как Microsoft Azure, Google Cloud и AWS предоставляют разработчикам доступ к вычислительным ресурсам, без которых сложно заниматься обучением и развертыванием нейронных сетей.
- Английский язык (уровень не ниже B2, но следует стремиться к C1–C2). Без него не получится взаимодействовать с комьюнити, читать техническую литературу и понимать зарубежных заказчиков.
Разница между преуспевающими ИИ-инженерами и теми, кто испытывает трудности с карьерой, кроется в софт скиллах. Несмотря на то что программирование — это прежде всего техническая работа, успешное завершение проектов во многом зависит от «мягких» навыков. Компании готовы идти на определенные уступки, потому что на рынке сохраняется дефицит квалифицированных кадров, но всё же AI-разработчику будет проще справляться с обязанностями, если он:
- коммуникабельный — находит общий язык с членами команды аналитиков и тестировщиков, может донести сложную мысль до широкой аудитории, умеет выяснять требования заказчиков;
- бизнес-ориентированный — превращает технологические идеи в продуктивные коммерческие проекты, понимает, как функционирует предприятие, кого оно обслуживает и с кем конкурирует;
- дисциплинированный — находит время на общение с заинтересованными сторонами, проведение исследований, проектирование будущей нейронной сети, программирование и тестирование;
- способен решать проблемы — одновременно творчески и критически мыслит, дорабатывает нейросеть в режиме реального времени, оперативно вносит правки при изменении техзадания;
- обладает экспертностью в нише — понимает не только принципы разработки моделей на базе ИИ, но и учитывает потребности компании, ведущей деятельность в определенной сфере;
- умеет работать в команде — принимает во внимание чужое мнение, доходчиво объясняет свою точку зрения, находит компромиссы, гасит конфликты;
- аналитически мыслит — быстро оценивает приведенные факты и делает разумные выводы;
- придерживается концепции lifelong learning — обладает широким кругозором, любознательностью и желанием обучаться новому.
И, конечно, специалисту будет гораздо проще взаимодействовать с заказчиком и командой, если он обладает эмоциональным интеллектом. Умение сохранять адекватную самооценку и контролировать свое поведение под давлением внешних факторов — всё это качества зрелого человека, какой бы ни была его профессия. Этот навык успешно прокачивается на профильных онлайн-курсах. Стремление к лидерству тоже не помешает — мы же уже увидели, сколько получают тимлиды
Где учиться на разработчика нейросетей
Безусловно, в интернете сегодня есть большое количество материалов для самостоятельного изучения того же кодинга. Но лучше рассматривать это как возможность «попробовать» себя в роли разработчика нейросетей или научиться писать ботов для собственных нужд. То же касается и онлайн-курсов — они хороши для понимания сути профессии, самомотивации и поиска единомышленников, но для трудоустройства этого недостаточно. Сфера AI — тот случай, когда даже бакалавриата может оказаться мало. Зачастую работодатели выдвигают требование о наличии магистерского диплома по профилю.
- Поступление в университет. Согласно данным агрегатора учебных заведений postupi.online, разработчиков нейронных сетей готовят 111 вузов. Например, можно подать документы в НИУ «МЭИ» на программу «Технологии разработки интеллектуальных систем».
- Окончание магистратуры. Это не обязательно должен быть топовый вуз в России — впечатлить работодателя можно дипломом зарубежного университета.
- ДПО после окончания вуза. Но обучение должно проводиться строго по смежным направлениям. Например, с дипломом бакалавра компьютерных наук стоит записаться на курс «Математика и статистика».
Краткосрочные онлайн-курсы тоже можно пройти, но только чтобы применить полученные в вузе знания на практике, найти напарника для совместного проекта в портфолио и воспользоваться услугами карьерного центра.
Хорошая новость в том, что начинающий ИИ-инженер запросто найдет возможность попрактиковаться в создании нейросетей — ему будут рады как заказчики бирж фриланса, так и стартапы, которых сегодня много. Более того, некоторые онлайн-университеты предлагают в качестве выпускной работы создать нейросеть для собственного коммерческого проекта.
Как разработчику нейросетей устроиться на работу
Знания, которыми должен обладать разработчик нейросетей, позволяют специалисту претендовать сразу на несколько позиций. Расположим их по степени сложности обязанностей и возрастанию зарплаты:
Шансов на трудоустройство довольно много, но бум нейросетей начался не вчера. На рынке уже успели появиться выпускники вузов с профильными программами обучения, поэтому следует ответственно отнестись к составлению резюме, подготовке портфолио и интервью.
Портфолио
Если после окончания вуза вы стажировались в крупной компании и можете рассказать о нескольких успешных кейсах, вам без лишних раздумий предложат работу. В противном случае лучше обзавестись как минимум двумя проектами в портфолио.
- Помощь бизнесу. Сделайте профиль на бирже фриланса и предложите заказчикам выполнить для них работу на безвозмездной основе. Помните, коммерческий опыт не значит, что труд должен оплачиваться.
- Волонтерство. Обратитесь к НКО и узнайте, не требуется ли им помощь разработчика нейросетей. Такой шаг не только даст возможность попрактиковаться, но и добавит вам плюсов в карму.
- Учебные проекты. Это может быть экзаменационное задание на онлайн-курсах, вузовская лабораторная или дипломная работа.
- Пет-проекты. Самостоятельно придумайте «проблему» и решите ее с помощью нейросети. Здесь вам повезло — идей может быть множество, от чат-бота в телеграм-канале до сервиса, генерирующего изображения по запросу пользователя.
Не увлекайтесь — объёмными ТЗ можно заниматься несколько лет, и тогда работодателю будет сложно объяснить длительный период безработицы после выпуска из вуза.
Резюме
Откажитесь от завышенных требований к первому месту трудоустройства — соглашайтесь на позицию интерна, стажера и ученика ИИ-инженера. И уж тем более не следует отказываться от возможности стать частью команды более-менее известной компании вроде Яндекса — так вы обеспечите внимание рекрутеров к вашему резюме в будущем.
Оформление резюме в сегодняшней высококонкурентной среде — отдельный вид искусства. Освоить такой серьезный набор хард скиллов и «засыпаться» на этапе CV… было бы обидно. Поэтому лучше не изобретать велосипед и воспользоваться онлайн-конструкторами — готовые шаблоны учитывают требования эйчаров и включают все нужные разделы. Более того, вы можете быть уверенными в том, что их успешно просканируют системы управления кандидатами (ATS). Которые, к слову, работают на базе ИИ
Собеседование
Уделите внимание проверке своих технических навыков. Можно быть сколько угодно коммуникабельным, но работодатель в первую очередь захочет убедиться в том, что вы пригодны для задач, которые поставит перед вами бизнес. Почитайте литературу о прохождении собеседований в IT-компаниях — например, книгу «Карьера программиста» Лакмана Макдауэлла. Поищите на тематических форумах советы бывалых айтишников и посмотрите записи интервью. Если в 20% случаев вы не знаете, как ответить на вопрос, придется подтянуть хард скиллы или теорию.
Не забудьте заранее подготовить список вопросов, которые вы хотите задать интервьюеру. Если ни о чем не спрашивать, будущий работодатель решит, что вы не слишком заинтересованы в получении должности, так что это обязательный пункт. Также не забудьте о репетиции самопрезентации, рассказ о себе должен занять не больше 3–5 минут.
Кому подойдет профессия разработчика нейросетей
Итак, мы разобрались в том, что делает разработчик нейросетей, и какую пользу он приносит бизнесу. В заключение предлагаем рассмотреть плюсы и минусы этой профессии. Да, отрицательных сторон в работе специалиста тоже немало.
Плюсы | Минусы |
---|---|
Профессия останется актуальной на ближайшие десятилетия | Необходимо получить высшее образование, и желательно не останавливаться на бакалавриате |
Специалисты могут выбирать между офисом, гибридным и удаленным форматом занятости | Как правило, ИИ-разработчик трудится на условиях ненормированного рабочего дня |
На рынке пока мало специалистов с опытом | Предполагается высокий уровень ответственности, потому что на проекты выделяются огромные бюджеты |
Хорошо зарабатывать и получать бонусы могут даже джуны | Специалист должен одновременно обладать терпимостью к монотонной работе, многозадачностью, усидчивостью, высокой трудоспособностью |
На ИИ-разработчиков высокий спрос в самых разных отраслях (медицина, телеком, добыча нефти, логистика и т.д.), в том числе за границей | Придется осваивать несколько сложных дисциплин |
ИИ-инженер — специалист, который владеет сразу несколькими профессиями | Разработчик AI должен учиться на протяжении всей карьеры, поскольку на рынке часто появляются новые технологии |