Наташа Косинова. Варю айти СУП
2.71K subscribers
68 photos
3 videos
9 files
336 links
Системный аналитик, бизнес-тренер, автор айти курсов. Работаю в айти с 2006 года. Мой канал про айти, без лапши успешного успеха. Варю айти СУП здорового человека)

Курс интеграции:
https://sup.expert/

Написать мне @tasha_kvitka
Download Telegram
#мысливслух #проаналитиков #системныйаналитик #hardskills #капитаннеочевидность

После этого поста от меня наверное некоторые отпишутся, но это #моемнение)))

Про hard skills системного аналитика.
На рынке, не смотря на пандемию, по-прежнему нужны системные аналитики. До того, как нас всех посадили на самоизоляцию, вакансий системного аналитика было около 2500 в Москве, сейчас 1500. Возможно компании не тратят деньги на hh.ru и перешли в телеграмм, но всё таки бизнесу не очень хорошо и они режут бюджет за тот же счёт новых вакансий.

Так вот. Я про скиллы, те самые hard. Почему так сложно найти системного аналитика? Да, потому что он инженер и нужно базовое, техническое образование и ещё желательно знание практик, и опыт их применения. И к практикам можно отнести не только нотации, методологии, но и большой блок теории и архитектуры. При этом с последним явно проблема. Да есть клиент-сервер архитектура, и сейчас популярны микросервисы, но есть и основа всего этого. Как то меня обвинили в том, что мол тебе не читали в институте теорию систем. Ахаха, ты недо-спец! Я начала смотреть, что туда включено и понимаю, что читали, но оно всё было в нескольких дисциплинах и годами. И тут тоже, всё как слоёный пирог, фундамент математика, физика, потом у нас шла теория АСУ и основы электроники, например, потому что нас учили проектировать платы и вычислительные комплексы. Алгоритмические языки программирования уже пошли на 3-4 курсе, архитектура ЭВМ и самый сок на 5 курсе. И был ещё 6 курс в виде диплома. А всё остальное, что мне нужно было в работе я спокойно изучала и набирала на практике, потому что уже был фундамент. Так к чему я клоню?

Стать хорошим системным Аналитиком без базового инженерного образования, очень, очень сложно. И можете кидать в меня камнями, но это так. Вы слышали такой термин "системная инженерия" или системотехника? У меня образование схемотехника, я фактически должна была печатные платы проектировать и к ним драйвера писать. Но системный аналитик - это инженер. И сложно его сделать из бизнес-аналитика или из экономиста, юриста. Да, есть таланты, да, есть те кто сможет на опыте всё это поднять, но это не полгода, или год. Это года! Почему-то у нас не возникает вопроса, зачем врачу образование? Но вот зачем айтишнику, да тем более системному аналитику, оно, постоянно встаёт под вопросом. И мне реально сложно понять, как кроме "теории+огромной практики" освоить те же паттерны построения архитектуры информационных систем. И странно, видеть море курсов, которые кричат, мы из вас сделаем системного аналитика за месяц. Люди очень любят обманываться. Я заплачу деньги и автоматом получу знания, и дальше высокую зарплату и должность. Курсы хороши, не спорю, но только тогда когда есть база и просто нужны новые навыки, инструменты.

Прикрепляю mind maps навыков аналитика, который составили ребята из Петербургского сообщества Аналитиков. Там можно увидеть ту самую теоретическую базу.
https://www.mindmeister.com/ru/1218346874?t=Gju1zoReP3
#моемнение #hardskills #наопыте #вопрос #рассуждения #мысливслух #ктовответе #мойопыт

Часто прилетает вопрос, да и запрос тоже, касаемо Hard Skills аналитика в плане технологий, знаний, умений. Мол, кто что должен делать. Когда делает аналитик, а когда разработчик?

Что часто просят:
Составление json схемы или структуры объекта в виде json.
Составление xsd, сюда же xml, wsdl.
Описание API в виде yaml файла (для добавления в swagger).
Проектирование API (REST, SOAP, когда не только CRUD).
Добавлю настройку и администрирование брокеров Kafka, rabbitmq.
Создание скриптов развёртывания базы данных.

Пожалуй хватит))
Как говорит Елена Бенкен на курсе по интеграции ШСА: "у некоторых аналитиков жизнь настолько тяжёлая, что они составляют вручную wsdl" (вместо wsdl можно поставить, например yaml или xsd).

Мой ответ будет таким - кто может, тот и делает. Но я НЕ требую подобных навыков от аналитика, может только проектирование API, и составление логической модели БД, без скриптов.

А теперь, что я видела в реальности. Я описывала xml, структуру данных, давала примеры для разработчиков, они делали xsd. Я описывала спецификации API, документ отдавала разработчикам, они делали wsdl. Есть аналитики, которые пришли из разработки и они мало того, что отлично (даже бывает лучше разработчика) проектируют API, так ещё могут и эмуляторы, заглушки сделать и отдать партнёру по интеграции, чтобы уже начать работы. Таких мало.

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

Я все подобные активности отдавала архитектору и разработчику.

Как-то с аналитиком, у меня на сессии менторства, мы посмотрели на то, сколько всего должен делать аналитик, сгрустнулось от матрицы компетенций. Что моё заключение было такое - аналитик супер человек!!! Слишком много компетенций! Слишком!!! Что куда ещё и код писать или администрирование чего либо впихивать. Администрирование брокеров или функционала аналитиком приведёт к его унынию и выгоранию, со словами "меня используют не так, я хочу проектировать и диаграммы рисовать, хнык". Или он натворит такие прекрасные вещи, что без такого админа система не будет жить. Был у нас такой случай.... Не сразу поняли, только когда аналитик ушёл в отпуск. Часть команды, часть корабля.

Про скрипты развёртывания БД - писала, часто и много лет 10 назад, потом тоже это отдала разработчикам и мир изменился, многие среды разработки не дают напрямую создавать таблицы в БД, их создают автоматически разные приложения.

И как-то странно вешать такие низкоуровневые задачи, когда весь мир идёт в упрощение и визуальное программирование)))

А что вы из этого списка делали или делаете на проектах?)