[МиС-2024] Роли

Мышление письмом по пятой главе.

Так или иначе вопрос о ролях преследует нас в ИТ постоянно. Специализация труда наступает, появляются новые профессии. Почти забыты уже fullstack программисты. В вакансиях пишут ищем devops-инженера, в чатиках на эту тему смеются “таких инженеров не бывает, это практика, а не роль”. Аналитики размножаются спорами, как грибы. Были бизнес-аналитики как прослойка (переводчик) между бизнесом и программистами. Появились к ним в комплект системные аналитики. Т.е. раньше думали, что программисты не могут с бизнесом на одном языке разговаривать. Нужен кто-то кто сможет у бизнеса на его “бизнесовом” потребности выяснить. А как сделать программисты сами придумают. Теперь системный аналитик должен потребности взять у бизнес аналитика и перевести их с естественного языка на технический. Но ещё и решения о том, как делать вроде как тоже принимает системный анализ. Разработчики только по инструкции/спецификации кодируют принятое другими людьми решение. Кто они после этого? Кодеры видимо.

Вот вся эта каша, кто что должен делать, а кто что умеет. И что от тебя хотят в конкретной фирме довольно сильно волнует людей, работающих в ИТ. И меня в частности.

Давайте разбираться.

Роль — функциональный объект, часть проекта (а не агента, как было бы интуитивно думать).

Все более-менее понимают, что должность и роль это не одно и то же. Должность, записанная в трудовой, может указывать на роль, а может и нет. У меня сейчас в трудовой должность - эксперт. И все: системный архитектор, бизнес архитектор, бизнес аналитик, системный аналитик, backend программист на одном ЯП, frontend программист, backend программист на другом ЯП, QA инженер, релизный менеджер и т.п. Всё это многообразие запаковано в должность эксперт. Единственное, что там ещё может быть приставка “старший” и “ведущий”. Младших пока не видела. Значит на должность не смотрим. Смотрим на то, что пишут в вакансии. Кого ищут? Руководителя разработки, или директора центра. Или может всё-таки кого-то из аналитиков или разработчиков.

Берём вариант попроще. Вот я линейный сотрудник, аналитик или программист. По идее менеджерских ролей у меня нет. Но мы уже запомнили: ищут человека, который встанет в роль в проекте. В конкретном проекте. От одной и той же роли в разных проектах могут требовать разный набор компетенций и выполняемых работ. Проблема в вакансий в том, что довольно часто хорошо описаны технологии, которые ожидают. А вот что предстоит делать описано похуже. Там могут быть общие фразы. А может быть как в статье про аналитиков: будь ты и архитектор, и аналитик, и проектотировщик баз данных, и спец по интеграциям и ещё кто-нибудь. С такими грандиозными обязанностями за неочень грандиозную оплату понятно, что делать. Что делать с общими фразами и похожими на правду описаниями?

Я разработчик. Технологии указанные знаю, их список прирастает каждый год. Но обычно останавливаешься на том, что есть курс “kafka для разработчиков”, а есть “kafka для devops”. И понятно, что мне не нужно знать как разворачивать кластер и строить платформу на основе технологии. Мне нужно, как я этой технологией пользуюсь, решая свои технические задачи. А дальше начинаются интересные истории с вынужденной постановкой в соседние роли.

Вот бизнес-аналитик описал фичу. Если в этот момент свободного системного аналитика не было, то ещё и попытался накидать схему, как оно должно технически работать. Какие данные откуда взять, что в них поменять, чтобы было то, что они хотят. Принесли это в разработку. Разработчик “верит” аналитику. Реализовали решение, не работает. Оказывается нельзя просто взять и соединить данные, когда они в разных базах лежат. Бизнес аналитик зря залез в чужую роль? Разработчик зря не залез в чужую роль, не пошёл проверять системный анализ?

Другая история. Нашёлся системный аналик, сделал свою часть работы после бизнес анализа. Опять принесли, разработчики сделали. Точнее переделали три раза, потому что аналитики разбирались и меняли описание задачи. Сделали финальную версию, не работает. Системный аналитик не умеет в свою роль? Разработчику надо за обеими ролями аналитиков проверять? При этом например, то что я негласно становлюсь в роль QA, когда не только тесты пишу на свой код, но и на стенде его проверяю сначала сама, сопротивления не вызывает. Или когда devops инженер наш CI поправил, но сломал, я спокойно исправляю. Потому что считаю, что у инженеров по инфре широкие знания, но в некоторых местах неглубокие.

Из всего этого вытекает вопрос: какие роли мои и насколько сильно мне нужно разбираться в соседских? И главное в каких учебниках написано, как отличить хорошего архитектора/любую-другую-роль от плохого? Про архитектора книжка найдена. Остальных ждём в районе второго-третьего семестра.

Сейчас ещё адаптируюсь к новому ярлыку. Нас пересобрали по командам. Команда из продуктой стала технической. И при этом в ней backend программистов из моего стэка два человека, включая меня. Но внутри технической команды нас побили на подкоманды размеров до 5 человек. И вот мы вдвоём образуем одну из них. Но формально в таких командах должен быть лид(ер). Назначать лида в паре разработчиков примерно одинакового уровня мне кажется достаточно абсурдной операцией. Но архитектор сказал “номинально надо кому-то из вас поставить букву Л”. И мы недолго думая, решили вопрос старым вариантом генератора случайных чисел - монеткой. Л досталась мне.

А теперь по традиции плохих описаний, реальность отличается от “номинальности”. И в новой роли я помимо буквы получаю: роль скрам-мастера в усеченном варианте (ведущего дейликов), роль аналитика (задачу опиши, список работ нарежь), роль плохого менеджера(ходящего по бесполезным созвонам) и пока неизвестно какие ещё.

Это была первая неделя “нового формата” работы. И в первые дня три это выглядело как стресс-тест для собранности. Старый порядок исчез. А новый никто не подготовил. Т.е. просто всё развалилось, кто что должен делать никто не понимает. WIP - работы ведутся, ожидайте.

Очнулась я в раздражении от новых обязанностей, о которых мы не договаривались, дня через два. И села думать письменно, а что происходит. Сразу стало получше. Роль справочного бюро, отброшена, как ненужная. Бесполезные созвоны на ближашую неделю отбиты. С ролью ведущего дейликов смиряюсь. Всё-таки они два раза в неделю, против 4 в прошлом формате. И вдвоём есть шансы уложиться в 10 минут.

Есть непонятный момент. С одной стороны, можно сходить к архитектору (он глава нашей большой технической команды) и уточнить ожидания по поводу моей новой роли. С другой стороны, у нас вполне может быть конфликт интересов. У него же есть право делегировать (всё что он посчитает нужным), а у меня нет ни малейшего желания нахапать себе ещё неинтересных мне ролей. Ведь роль разработчика (который половина команды в нашем случае) с меня никто не снимал. Да я и не хочу её снимать. Отсюда вывод, стоило бы сначала прояснить свои интересы в данной ситуации. А потом предположить его интересы и подумать как это можно уторговывать. И только тогда идти разговаривать.

2 лайка

вспомнилось

а в чем разница?

У меня в последнее время все больше есть мыслей просто делать, а потом идти и ставить перед фактом(проще просить прощение чем разрешение).

хехе, котом наверно быть приятно)

Продуктовая команда делает бизнесовые задачи. Новую функциональность или допилы но под нужды бизнеса. Техническая - это оптимизация, стабилизация, техдолг. Т.е. мы повлияем на бизнес, если какие-то узкие места пофиксим. Но в основном это рефакторинг, выпиливание/замена, оптимизация запросов плюс разобрать всю мусорку из задач, которые скопились за полгода-год?! по техдолгу и уже неизветно надо ли их делать.

Я чаще тоже так себя веду. Но сюда же у меня к себе возникает вопрос: а почему мне некомфортно идти в коммуникацию? Что там за затруднения, я их себе придумала или они правда там есть. Потому что у меня состояние сильно влияет на восприятие. Я вот попала в эту непонятную ситуацию с обязанностями и напряглась. Но сходу и спрашивать не пошла. Потом успокоилась, села подумала. И поняла, что могу альтернативный вариант предложить, в котором мне будет комфортно. И мы быстро это порешали. А так бы я сидела и продолжала париться.

2 лайка

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

Предпосылки:

  1. Если до вас как до героини повести недолетело от архитектора/главы понимания вашей роли в актерской/должностной росписи, то обычно тоже самое произошло и с остальными людьми/актерами - очень вероятно что они столкнулись с теми же сложностями;
  2. Быстренько раскидав не детализированное амплуа (но не расписную сценарно-ролевую задачу) по наличному актерскому/человеческому составу - архитектор не начал “думать письмом” - т.е. пойти дальше по пути написания настоящего сценария архитектор/глава шагов не сделал, а значит общее название пьесы “Давайте в производство” есть и список актеров есть, и даже амплуа у них написаны, а самого сценария нет (или есть кусочками (типа у нас три антракта, бюджет на декорации леса зеленого и два часа на всё цирковое представление).

Вариант для “непонятного” - опишите не только свою роль, но и роли тех кто как вам нужно будет с вами взаимодействовать по ходу спектакля (прямые горизонтальные и вертикальные контакты). Обозначьте что должно приходить к вам и чего ждать от вас - и по возможности укажите прямо - кто принцесса, кто конь, кто дракон, кто принц. И свой кусок сценария с архитектором и обсуждайте.

Предсказание - если вы придете к архитектору/сказочнику только с тезисом “давайте обсудим как мне быть принцессой”, то ввиду отсутствия у архитектора/сказочника сценария этот самый сказочник страшно обрадуется и действительно все обязанности коня, принца и дракона могут быть вгружены на принцессу. А вот если на бумаге (во внимательном сосредоточении) появится не одна принцесса, а точно будет понятно, что принцесса это не конь, не принц и не дракон - тогда будет что обсуждать. Появится возможность не только грузить принцессу, а еще и позвать кандидатов к коня, принца и дракона - амплуа-то еще у кого-то есть, кроме принцессы.

На то, что даже амплуа в пьесе тоже так себе расписаны/понимаются указывает еще и то, что принцесса записана экспертом.

2 лайка

Если так писать раз в неделю, то можно написать сценарий документалки “Трудовые будни ИТ” =))))

Это уже хорошая тема для коммуникативной части. В какой роли у него есть право делегировать все, что он посчитает нужным? Является ли это делегированием?

Иногда рефлексии вполне достаточно. Как с сообщениями в чатиках, если ситуацию оставить отлежаться, часто работает “разберутся без меня”.

Тут больше вопрос фундаментальной собранности. Когда идут внятные и не очень call to action от людей, стоящих выше по иерархии, я время от времени теряюсь. Есть старый паттерн про работу в команде и некую необходимость подчинения. А новый про то, что нужно остановиться, оценить высказывание на “верю/не верю”, а потом ещё подумать какие у собеседника намерения и из какой роли он их делает - сложная и пока непривычная цепочка. Особенно любопытно получается, когда чужие намерения и не из роли вовсе. А человек вполне мог по-человечески посыпаться и начать пытаться за чужой счёт выехать.

Конфликтует во мне программисткая привычка “видишь проблему, давай чини” с менеджерской необходимостью оценить проблема ли это и есть ли у нас ресурсы на её решение.

У роли не может быть права “делегировать” - по идее описание для “ролей” это описания для распознаваний - “О! Этот в короне и командует - царь наверное”. А слово “делегирование” это из практики управлять - это из другого взгляда описание, описание для сценариста который “пишет в сценарий - реплики царю и реплики принцессам, принцам, коням, драконам и прочим на сцене”.

Рефлексия это хорошо - проверять менеджмент на степень менеджментности вполне возможно, не отвеченных вопросов по итогам проверки может быть масса - однако даже само наличие неотвеченного и его характер может дать ориентиры для “потерялся - ищем вариант выйти из леса”.

У менеджмента (ну и не только у менеджмента) в IT вообще очень ярко как-то проявляется “несрабатывание в роли”. Ну например про “делегирование” - отдать/передать можно то, что у тебя есть. Бригадир может дать тебе лопату и велеть копать - а если бригадир не понимает про “копать это лопатой” - то роль бригадира будет вынуждена отправить только сигнал “копай”.

В случае копать-лопатой-канаву легко быть в роли бригадира и в роли копателя быть легко - размерность лопаты и то что “копать это лопатой” не требуют особых обсуждений, даже замена лопаты на экскаватор это легко. А вот когда даже понять что наш инструмент именно “лопата” это уже не маленькая работа/экспертиза/квалификация - резко смещается ресурсный баланс для физического воплощения интеллектуального наполнения все немножко смещается. Видеть откуда-куда канава понимается не самым сложным видом экспертизы (обычно - сложные случаи тоже бывают, канава вполне себе инженерное сооружение) и именно лопатой копать тяжело/дорого/ресурсно кубометры перекидывать - а “кнопки нажимать” это не сложно, дорого/долго понимать какие/когда.

У меня модель “канаву лопатой копать” с набором довольно диких вопросов “чья лопата?”, “у кого лопата?”, “кто лопату вообще видел?”, “как канаву меряли?”, “заказчик канаву видел?”, “руки на лопате где расположены?”, “у бригадира чертеж канавы есть?”, “почему не экскаватор?” - местами вообще спасает от “мы все провтыкали посмотри какой красивый дашборд” :slight_smile:

Бригадир не всегда сыпется по-человечески (чтобы это ни значило), у бригадира может не быть лопаты, чертежа и имен для всего этого. У Бригадира сыпется роль, может не хватать материала для реплик/действий - варианты есть либо брать на себя, либо договариваться где/кто находит/приносит, либо ждать пока бригадир найдет где-то/как-то свой материал для роли. Предмет для подумать есть - “видишь, чини” очень не единственный вариант, хотя тоже вариант.

1 лайк