Разделение труда в IT компании на примере двух задач

разделение труда

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

Предположим, что в некой компании N, которая имеет свой IT отвел и руководителя с вышеописанными качествами, ставятся две задачи.

  1. Напоминание о днях рождениях сотрудников, чтобы руководство могло подготовиться к поздравлениям.
  2. Организовать поздравление с 8 марта для женской половины коллектива

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

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

Секретарше (или среднестатическому менеджеру или персональному помощнику)

Самое очевидное и правильное решение. Это скорее всего гуманитарий с длинными ногами или смазливый мальчик на побегушках.

  1. Создаст табличку в Excel. Будет напоминать и более того – приносить кофе и помогать с организацией поздравлений.
  2. Может найти подходящие варианты для подарка (купить купоны, заказать цветы), позвонит куда надо, съездит куда надо. Это же ее/его работа, как никак.

Программисту

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

  1. Будет решено написать сервис, в котором можно будет с использованием календаря ввести даты рождений. К сервису будут прикручены все возможные способы оповещения, включая sms и отправки email. В своем стремлении полностью автоматизировать процесс, и чтобы не забивать голову ни чем отвлекающим от кода, программист потратит неделю времени, получит полезный опыт и таки сделает “чертов сервис”.
  2. Попытается провести сбор и анализ данных. Данная работа будет проводиться в команде с привлечением всего штата программистов. После обсуждения будет сделан вывод, что задача не имеет ралгоритмического решения и тогда будет выбрано наугад любое подходящее решение из множества подходящих решений. Если простыми словами – будет скачан стишок из интернетов, куплена первая попавшаяся открытка в газетном ларьке, куплен сертификат на какое-то мероприятие, даже в 10 раз дороже, чем можно было бы найти. Главное – задача решена и можно вернуться к коду.

Техническому руководителю (team lead, старшему программисту)

“Вот мы тебя, Вася, и повысили. Теперь уж точно это твоя задача – организовать мужской коллектив в лице программистов…” Блаблабла. Сказано – сделано!

  1. Именно он и примет решение (или одобрит идею) писать сервис дней рождений с оповещениями. Он будет разрабатывать архитектуру данного сервиса. Координировать и распределять задачи программистам внутри проекта. Делать code review, проверять результат, следить за соблюдением стандартов кодирования, за качеством кода в целом, управлять контролем версий. Так же он примет участие в разработке. По ходу работы он будет тесно работать с IT менеджером (не путать с секретаршей). После окончания работы над сервисом поставит задачу системному администратору на деплой и масштабирование проекта.
  2. Учитывая, что на написание сервиса из задачи 1 было потрачено все время…, а так же на то, что эта задача была поставлена в период, когда тим лид с полным погружением вместе с администратором занимаеся деплоем проекта на новый сервер… – задача скорее всего будет игнорирована или делегирована секретарше. Если задача была получена от IT менеджера, то она просто будет переназначена обратно на него в redmine.

IT менеджеру (project lead (не путать с секретаршей!))

Это именно тот человек, который получит список задач от руководства. Может быть это тот же программист Вася, который решил избрать темную сторону силы или же специально обученный Agile методологиям человек, в любом случае он…

  1. Будет доносить ТЗ до IT отдела максимально доходчивым, понятным и техническим языком. Будет представлять себе общую картину, собирать совещания, раздавать задачи в redmine, ставить сроки, обеспечивать все условия для выполнения задачи. Будет составлять отчеты руководству о проделанной работе и объяснять, почему необходимо потратить неделю на написание сервиса, а не просто вбить все в Excel и так же утверждать, что команда отлично поработала и ему лично удалось сократить сроки на 2 дня.
  2. Как ни странно, но в первую очередь постарается делегировать задачу секретарше (при ее наличии). Ведь после совещания с IT отделом ему абсолютно очевидно, что задача не решается программными средствами, а значит программисты тут не нужны, а тех. лидер вообще переназначил задачу с себя в redmine. Если же секретарша отсутствует – постарается выполнить задачу сам. Что же тут поделаешь, такова плата за переход на темную сторону..

На этом я пожалуй закончу с примерами. Может показаться, что мои немного субъективны или утрированы, но я уверен, что в целом они верно описывают все картину.
IT может иметь сложную орг. структуру (хотя обычно она типична) и вся эта структура является ресурсом компании. Для того, чтобы поставленные внутри компании цели достигались макимально эффективно – орг. структура должна быть хорошо налажена, должно быть четкое разделение труда, четкое понимание своих обязанностей у каждого сотрудника и крайне желательно понимание всего этого дела на уровне руководства. Только тогда задачи будут ставиться правильным людям, решаться так, как того ожидается и не будет возникать никаких спорных, конфликтных или разрушительных для основного бизнесс процесса компании эффектов.

Выводы.

Обе поставленные задачи в конечном итоге руководитель мог бы выполнить и сам. Следуя его же логике. Задачи все таки относятся к орг. задачам, они на столько просты, что самостоятельно он бы потратил на их решение гораздо меньше времени и ресурсов компании. Если все таки график руководителя не позволяет выделить лишние полчаса, то придется таки нанять секретаршу или простого менеджера по персоналу (не путать с IT менеджером). В случае с простым менеджером, который так же может не понимать специфику работы в IT, все может закончится той же постановкой задач не тем людям.
Лично я считаю, что IT отдел должен работать как черный ящик с единственным интерфейсом посредником в лице IT менеджеров. Главная задача IT отдела – решать IT задачи связанные с написанием программ и прочей технической деятельностью. Ставить тривиальные задачи, которые может выполнить секретарша, высококвалифицированным сотрудникам – это не эффективная трата ресурса компании и дополнительный раздражающий фактор для этих самых ценных для IT компании сотрудников.

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