Нужно ли ставить программистам время в задачах? Часть 2

В первой части статьи мы ожидаемо пришли к тому, что универсального рецепта не существует – слишком велика роль человеческого фактора. Поэтому нужны правила, по которым играют все, независимо от настроения и мелких условий. Сегодня расскажем о том, как за 12 лет мы построили систему, которая задаёт такие правила.

Нужно ли ставить программистам время в задачах? Часть 2

Как мы искали свой подход

С 2010-го года, когда компании KR Digital стукнуло 5 лет и она уже порядком выросла, мы стали искать инструменты для системного управления. На тот момент на рынке существовали различные методики проектного управления: PMBOK, Agile, Scrum – самые известные из них. Параллельно существовал софт для управления IT-проектами, состоящий из нескольких классов систем: таск-трекеры (Jira, Trello, Asana), планировщики (MS Project), софт для управления проектами.

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

За следующие 12 лет, в течение которых мы из маленькой региональной студии превращались в системного интегратора, система непрерывно дорабатывалась, менялась, подстраивалась под наши требования и подход. В итоге мы пришли к системе KR Core, которая выстраивает границы ответственности всех, кто задействован в разработке софта. KR Core замыкает в единый контур весь процесс работы проектного офиса: от пресейла до момента, когда клиент выставляет оценку готовому продукту.

Нужно ли ставить программистам время в задачах? Часть 2

Ключевые особенности системы

1. Интегрированность. Наша система объединяет и связывает между собой все блоки управленческого софта. Таск-трекер, проектная система, система планирования, система учёта ресурсов, мессенджер, блок вознаграждений и так далее – всё связано воедино через несколько модулей.

2. Отсутствие избыточных бюрократических процедур. Мы заложили в KR Core путь, который должна пройти задача от стадии идеи до готового продукта. Каждое действие, которое выполняется в системе, необходимо и достаточно для процесса разработки.

Как это работает? Возьмём, например, типичную задачу менеджера – сделать реестр затрат ресурсов в конце месяца (проекта) для заказчика. Вот он выгружает данные, начинает руками проверять их, собирать в единую таблицу… Эта процедура нужна для бизнеса, но не нужна для процесса – у нас этой процедуры нет. Благодаря интегрированной системе все оценки трудозатрат берутся прямо из трекера. Мы ничего не подгоняем: выгружаем то, что отмечено в трекере, и отдаём заказчику. Таким образом, мы можем ответить за каждые 10 минут работы над проектом. Всё максимально прозрачно.

Модули KR Core

1. Проектное управление. Здесь мы учитываем все параметры проекта – бюджеты, сроки, дедлайны, оценки результатов проекта, оценки качества проекта внутри.

2. Ресурсная часть. Всё, что связано с командой: производственный график, отпуска-выходные, нормативы рабочих часов, грейды разработчиков и их часовые ставки.

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

Нужно ли ставить программистам время в задачах? Часть 2

4. Классический трекер. Мы используем внешний софт: здесь подойдёт практически любой трекер, который комфортен команде. Главное, чтоб он интегрировался в систему, фиксировал состояние задач, расход времени и помогал выстраивать процесс. В целом даже Trello способен всё это делать с парочкой плагинов.

5. Вознаграждение. Позитивная мотивация – часть философии нашей системы. Мы регулируем бонусы с помощью этого модуля. Они могут быть финансовые, могут быть в виде дополнительных выходных или, например, оплаты спортзала.

Нужно ли ставить программистам время в задачах? Часть 2

6. Мессенджер. Мы используем Mattermost – опенсорсный аналог Slack. В нём реализованы порядка 10 ботов, позволяющих получать отчеты, обмениваться задачами, проводить собрания и участвовать в опросах.

7. Обратная связь. Сбор фидбэка по завершению проекта от клиентов и команды происходит автоматически. Также раз в квартал проходит опрос 360 для всех сотрудников.

Нужно ли ставить программистам время в задачах? Часть 2

Чем хороша система KR CORE

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

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

Сергей Ковалёв, основатель KR Digital

2. Отсутствие лишних временных затрат. Если разработчик придерживается обычной здравой логики – взять задачу, оценить сроки, сделать, перейти к следующей – то избыточные действия практически сведены к нулю. То же самое с менеджером: ему не нужно делать лишние своды данных и лишние отчеты. Каждый концентрируется на самом процессе. А при попытке обмануть систему приходится делать лишние действия, которые видны в отчетах и однозначно приведут к серьезному разговору. Тот случай, когда делать правильно – проще.

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

Нужно ли ставить программистам время в задачах? Часть 2

Бывают ли ошибки?

Любая сложная система время от времени дает сбой. Ведь мы имеем дело с человеком: мы не можем просто заставить его выполнять команды как робота – мы вовлекаем его в игру. Во многом система опирается на желание человека в ней работать.

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

Как мы адаптируем команду к системе KR Core

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

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

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

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

Нужно ли ставить программистам время в задачах? Часть 2

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

Компания – это, конечно, люди. Но люди – нестабильные создания: на наш настрой, эффективность и прочее влияет слишком много переменных, которые в совокупности и называются "человеческим фактором". Компания не должна страдать от этого. Поэтому мы и пришли к системе контроля – но постарались сделать её максимально комфортной. Прозрачность и ответственность – философия, которая заложена в KR Core. Нужно ли отмечать время в задачах? Обязательно! Но делать это важно с заботой о людях.

Сергей Ковалев, основатель KR Digital

Что ж, теперь вы знаете наш ответ на вопрос, вынесенный в заголовок статьи. Подробнее про KR Core можно почитать здесь. А задать вопросы, поделиться мнением, не согласиться – в комментариях. Будем рады честному фидбэку!

66
5 комментариев

Фидбек такой - ответа на заголовок в явном виде нет.

1
Ответить

Статья состоит из 2 частей. Разные подходы к этому вопросу обсуждались в первой части статьи (на нее дается ссылка в первом абзаце). В этом тексте мы рассказываем конкретно про наше решение.

Ответить

Конечно! Обязательно! Иначе они будут тратить время на разработку того, что нужно ещё вчера

Ответить

И денег им платить не надо

1
Ответить