С чего начать путь в ИТ: системный аналитик

 

/* Статья обновлена 16 июня 2022 */

 

Профессия аналитика появилась на рынке в 2010 году, и с этого момента  потребность бизнеса в ней стабильно растет. Аналитики востребованы в IT-компаниях, банках, ритейле, науке, машиностроении, медицине и других отраслях. За последние пять лет их зарплата поднялась в среднем в полтора раза. Сегодня аналитика входит в топ-10 самых востребованных профессий в IT. 

В этой статье мы разберем, кто такие аналитики, какие плюсы и минусы есть в профессии, каким набором hard и soft skills надо обладать и как подготовиться к первому собеседованию. В материале мы сделаем акцент на области системной аналитики, в которой наработали большую экспертизу и опыт.

Другие статьи серии: «Android-разработчик» и «iOS-разработчик».

 

КТО ТАКОЙ АНАЛИТИК

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

Сегодня в IT существует более 10 различных специализаций аналитика — от системного до data scientist. Всех их объединяет работа с данными, систематизация, поиск зависимостей, умение преобразовать поток информации в гипотезы и далее в выводы. Кратко расскажем об основных.

  • Системный аналитик работает по задачам от бизнес-аналитика. Пишет постановки задач для разработчиков на техническом языке.
  • Бизнес-аналитик выявляет требования у клиента и готовит описание бизнес-логики того, как должна функционировать система, для системного аналитика. 
  • Бизнес+системный аналитик находится между первыми двумя ролями: общается с бизнесом, пишет постановки команде разработки, знает и бизнес, и технологии достаточно хорошо, но не досконально.
  • Аналитик данных востребован на проектах с Big Data, знает математику и языки программирования (в частности, Python), базы данных, языки запросов и может сгенерировать любой отчет из данных в системе.
  • UX-аналитик собирает и анализирует данные о том, как пользователи взаимодействуют с сайтом, приложением или другим продуктом. Также занимается проектированием интерфейсов, поэтому на проектах его часто называют проектировщиком.
  • Интеграционный аналитик отвечает за соединение систем в единое целое. Он может понять стыки информационных систем и совместно с архитектором проработать процесс соединения. 

У нас в MediaSoft хорошо развита экспертиза в системной аналитике — в команде 15+ специалистов, которые работают на самых разных проектах. Поэтому в статье мы сосредоточимся на этом направлении: поделимся опытом наших системных аналитиков, расскажем про основные скиллы и перечислим подводные камни профессии.

КТО ТАКОЙ СИСТЕМНЫЙ АНАЛИТИК

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

Его роль на проекте прежде всего в том, чтобы подготовить техническое задание, на основе которого будет разрабатываться программный продукт. Это может быть как полноценное веб, мобильное или десктопное приложение, а также его бэкенд, так и отдельный функционал или часть, например, разработка API, личного кабинета и т.д. Техническое задание — это большой комплексный документ, в котором отражены все требования к проекту: описание предметной области, диаграммы процессов и взаимодействий, описание API-методов для интеграции и другое. 

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

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

ПЛЮСЫ И МИНУСЫ РАБОТЫ СИСТЕМНЫМ АНАЛИТИКОМ 

 

+

-

Поиск и формат работы

Аналитики сейчас очень востребованы — на май 2022 на HH.ru открыто более 26 000 вакансий.

На старте карьеры не стоит рассчитывать на высокую зарплату. 

 

Также в зависимости от специфики проекта и задач для работы часто необходим мощный компьютер. 

Обучение

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

Вместе с этим у профессии очень высокий входной порог знаний. Так как аналитик много взаимодействует с разработчиками, знание основ программирования для него must have. Без них начать свой путь в системной аналитике очень сложно. 

 

Также аналитику необходимы знания той области, в которой разрабатывается продукт. Например, FinTech, EdTech, Retail и даже AI-технологии.

Специфика задач

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

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

Общение 

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

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

СКИЛЛЫ, НЕОБХОДИМЫЕ КАЖДОМУ СИСТЕМНОМУ АНАЛИТИКУ

Требования к аналитику достаточно обширны. В зависимости от сферы деятельности они могут отличаться. Но несмотря на это существуют определенные hard и soft skills, которыми должен обладать каждый системный аналитик. 

Hard skills

Основные навыки. Для каждого специалиста, который анализирует и собирает требования к разработке IT-систем, есть база, необходимая для работы.

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

Знание БД, ER-диаграмм и языка запросов SQL. Нужный уровень, конечно, зависит от проекта, но умение составлять запросы к базе никогда не будет лишним.

Знание способов организации взаимодействия между клиентом и сервером — REST, SOAP, GraphQL; протоколы передачи данных HTTP, UDP, TCP; форматы данных JSON и XML.

Понимание архитектуры информационных систем и приложений: из каких частей может состоять проект (клиентов и сервисов) и принцип работы API. 

Знание жизненного цикла и методологий разработки ПО — Agile, Scrum, Waterfall и другие.

Знания BPMN-нотаций и UML-диаграмм. Для их создания аналитики используют программы:

  • Draw.io — онлайн конструктор для создания, обмена и совместной работы над различными диаграммами с интуитивно понятным интерфейсом и набором готовых шаблонов; 
  • PlantUML — позволяет задавать диаграммы (по большей части в нотации UML) в виде текста, описывающего элементы и связи между ними. 

Умение зафиксировать требования от заказчика в общепринятый шаблон. Среди таких шаблонов больше всего известны Software Requirements Specification и ГОСТ-34. Также у компаний может быть свой собственный образец.

Большим плюсом будут следующие навыки.

Опыт работы в task-менеджерах — это программы для управления проектами, которые помогают централизованно руководить задачами и их своевременным выполнением. Чаще всего это JIRA или Confluence.

Опыт работы в программе Swagger — это инструмент для создания документации API. 

Опыт работы с Postman или его аналогами (SoapUI, Katalon Studio, Tricentis Tosca и другие) — инструменты для работы с API, которые позволяют посылать запросы к сервисам и работать с их ответами. 

Знание английского языка. Большинство технических документаций и публикаций написаны на техническом английском — его знание хотя бы на среднем уровне сильно упростит изучение. 

Soft skills 

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

Желание работать в команде. Разработка продукта — коллективный процесс. Важно научиться слушать коллег, адекватно реагировать на критику и договариваться с людьми. Это поможет слаженно работать в команде и достигать общих целей. Если у вас возникают трудности с обоснованием своих решений, прочитайте статью нашего разработчика о том, как научиться выстраивать коммуникацию.

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

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

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

КАК ПРОЙТИ СОБЕСЕДОВАНИЕ

Чтобы успешно пройти собеседование, от вас потребуются:

  • Хорошее резюме — визитная карточка аналитика. Опишите в нем проекты, в которых вы принимали участие, и что именно вы делали. Если у вас есть проекты под NDA, в резюме укажите их сферу и двумя словами опишите задачу — например, составление ТЗ на разработку личного кабинета для продукта на фармрынке. Также не забудьте перечислить инструменты, с которыми умеете работать. Если у вас нет коммерческого опыта, вы можете рассказать про кейсы, которые делали в рамках курсов, тестовых заданий или стажировок. 
  • Успешное выполнение тестового задания. По его результатам работодатель поймет, насколько вам близки технологии и методы, используемые в компании. Для аналитиков чаще всего оно заключается в том, чтобы отрисовать процесс с помощью BPMN-нотации и UML-диаграмму, описать API-метод. 

Во время собеседования вас попросят еще раз рассказать о вашем опыте работы, а также ответить на теоретические вопросы (например, что такое «требования» и какие они бывают) и технические вопросы (как составить SQL-запрос и из чего состоят REST-запросы). Для отработки навыка составления SQL-запросов рекомендуем этот тренажер.

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

КАК ПРИШЛИ В ПРОФЕССИЮ НАШИ АНАЛИТИКИ

В ИТОГЕ 

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

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

Если вы только приступаете к изучению специальности аналитика, обратите внимание на обучающие материалы, которые мы оставили в конце статьи. И рекомендуем пройти наш курс по аналитике — регистрация уже открыта, старт занятий 5 июля 2022 г.

ДОПОЛНИТЕЛЬНЫЕ РЕСУРСЫ ДЛЯ ПОГРУЖЕНИЯ

Курс по основам программирования от Академии — плейлист с лекциями по ссылке.

Телеграм-каналы: 

BA/SA Аналитики, UX Notes, Путь аналитикаBusiness | System analyst, IT-журнал Завтра облачно, Дайджест продуктового дизайна

Статьи

Книги

  • «Разработка требований к программному обеспечению» (Карл Вигерс, Джой Битти)
  • «Освой самостоятельно UML за 24 часа» (Дж. Шмуллер) 
  • «UML. Основы» (Мартин Фаулер, Кендалл Скотт)
  • «Требования для программного обеспечения: рекомендации по сбору и документированию» (Илья Корнипаев)
  • «Современные методы описания функциональных требований к системам» (Коберн Алистер)
  • «Пользовательские истории: гибкая разработка программного обеспечения (Signature Series)» (Кон Майк)
  • «Введение в API» (Брайан Кукси)