Разработали сервис, который повысил эффективность сотрудников на 30%
Reporter в несколько кликов позволяет посмотреть статистику по проектам и сверить план/факт выработки. Это то, чего нет ни в одном таск-трекере, но так необходимо тем, кто работает с клиентами. Рассказываем, как с помощью Reporter добиться такой же прозрачности, как у нас. И не переживать, что команда сорвет сроки.
Зачем нам понадобилось разрабатывать свою систему?
С начала основания студии и до 2022 года мы работали в Trello. Этот таск-менеджер нравился тем, что он простой и удобный, а единственным его минусом для нас являлось отсутствие тайм-трекинга.
Так как мы занимаемся проектной разработкой, нам важно отслеживать показатели в часах, потому что клиент оплачивает фактически затраченное время. Поэтому после того, как Trello стал недоступен в России, мы перешли в Kaiten, в котором есть встроенный учет времени
Менеджеры создают задачи, а исполнители запускают таймер и фиксируют в комментариях, что они сделали. Так формируется отчет о фактически затраченном времени.
Но нам не хватало визуализации. Приходилось выгружать отчеты в Excel и вручную обрабатывать данные.
Чтобы решить проблему, мы создали собственную систему учета Reporter и интегрировали ее с Kaiten
Вот что умеет Reporter
- Формирует отчеты исполнителей
Система собирает данные из Kaiten по каждому исполнителю и выводит отчет по выполненным задачам. Отчеты могут быть сформированы за любой период.
- Ведет учет времени
Автоматически сопоставляет запланированные и фактически затраченные часы на задачи, а еще показывает прогресс по проектам — сколько задач в очереди, сколько в работе и сколько уже готово. Менеджер может сверить план/факт и вовремя свести риски к минимуму.
- Формирует статистику по всем сотрудникам
Менеджер может посмотреть сколько часов отработали исполнители за конкретный день, неделю или месяц. И отследить, кто это время не зафиксировал.
- Показывает общую статистику проекта
Reporter предоставляет информацию о том, сколько часов было запланировано на проект, сколько затрачено всего и сколько времени потрачено вне плана. Благодаря этому менеджеры могут оценить эффективность каждого проекта и даже отдельных спринтов.
- Считает рентабельность каждого проекта
Менеджеры могут оценить эффективность проекта и увидеть пробелы, требующие внимания.
- Считает маржинальность проектов
Отображает разницу между доходами и расходами, показывая фактическую прибыль проекта.
Как выглядела первая версия
Так как проект предназначался для внутреннего пользования, мы не составляли видение, не анализировали конкурентов и не прорабатывали структуру, как делаем обычно.
Вместо этого сосредоточились на проблемах, с которыми сталкивается руководство и описали то, как система должна их решать.
Разработка велась итеративно, функционал создавался по мере необходимости. В первую версию системы вошли:
Эти функции покрывали наши потребности. Со временем добавили еще две:
Эти показатели важны для нас, как для веб-студии, потому что помогают оценить эффективность и прибыльность проектов. Чтобы цифры считались корректно, нам пришлось создать дополнительный функционал:
- Историю оплат по проекту
- Расходную часть (стоимость часа работы каждого сотрудника)
А еще важно было отследить, эффективен ли сотрудник в целом, а не только по проекту. Поэтому мы разработали еще одну страницу:
Все это сделано не ради тотального контроля, как может показаться. Мы работаем по Time&Material. По этой модели оплаты клиент платит за часы, которые были затрачены на разработку, а потому для нас и для него важна прозрачность всех процессов
В дальнейшем из-за проблем с Kaiten добавился экран с историей запросов, но об этом позже.
Что делали с дизайном?
Дизайн первых версий Reporter был суровым «программистским». Позже мы подключили на проект дизайнера, чтобы создать интуитивно понятный интерфейс, который бы не отвлекал от работы с данными.
Боковой сайдбар с иконками, темная тема, акцентные желтые кнопки — все эти элементы мы добавили, чтобы пользователи могли легко считывать информацию и анализировать данные.
Шрифт выбрали читабельный, но компактный.
За основу брали прототип, который отрисовали еще до дизайна. Он помог визуально оценить структуру и удобство интерфейса. В итоге дизайн получился таким, каким мы и его задумывали — минималистичным и комфортным для взаимодействия с отчетами, таблицами и статистикой.
Сложности интеграции с Kaiten
Наш сервис тесно связан с Kaiten и это наложило определенные сложности.
В API Kaiten нельзя получить карточки по определенному пространству вместе с логами. Приходилось выполнять запрос на получение логов за нужный нам период, а уже потом выполнять запрос на получение карточек за тот же период.
То есть на одно пространство выполнялось 2 запроса.
Из-за этого обновление данных даже за 3 месяца по всем проектам занимало по 15-30 минут. Чтобы решить проблему, мы создали дополнительный функционал — историю запросов
После этого у нас появилась возможность формировать другие отчеты, пока подгружаются первые. А через 15-30 минут мы можем перейти в историю запросов и увидеть все нужные отчеты.
Иногда при выполнении запроса Kaiten попросту отмирал и Reporter не мог получить нужные данные. Эту проблему мы решили с помощью оптимизации, выгрузив данные в собственную базу.
Если менеджер формирует отчет, который не входит в загруженный диапазон, то Reporter автоматически поставит задачу на обновление, подгрузит данные и затем их сохранит. После этого менеджер сможет посмотреть отчет.
Авторизуется пользователь через почту. По ней мы определяем, с какой ролью зашел сотрудник, у каждого разные права доступа.
Еще у нас есть мобильное приложение, которое мы разработали с помощью модулей. Ими мы ускорили разработку за счет выведения определенных кусков кода в отдельную независимую библиотеку, которую встроили в приложение с минимальной конфигурацией и кастомизацией.
Что такое модульное мобильное приложение? Это подход, который позволяет не тратить время на разработку того, что повторяется из приложения в приложение: регистрацию, чаты, профиль, контакты и другой функционал. Модульная разработка сокращает время и бюджет на разработку в 2 раза, а за счет чего это происходит, вы можете узнать в предыдущей статье
Reporter построен на мощном фундаменте Laravel + React. Функционал хоть и кажется на первый взгляд простым, на деле он содержит большой объем данных, сложные формулы и математические расчеты.
В чем польза Reporter?
Спустя год после разработки эффективность команд по проектам выросла на 30% за счет того, что постановка и контроль задач стала четче. Теперь мы знаем, сколько ресурсов уходит на каждую задачу и ставим реалистичные сроки для новых проектов, не боясь факапов.
В планах сделать из Reporter полноценный корпоративный портал, чтобы объединить данные о сотрудниках в одной системе.
Кому подойдет решение?
Reporter — наш внутренний сервис. Но мы можем создать для вас такой же, с тем функционалом, который нужен вам. Будет полезен всем, кто хочет повысить прозрачность процессов, навести порядок в проектах и увидеть, куда уходят время и деньги.
Подходит любым сферам:
- IT и Digital
- Маркетинг, реклама, SEO
- Консалтинг
- Строительство
- Образование
- Финансы
- Транспорт
- Управление персоналом
- Недвижимость
- Организация мероприятий
Если хотите так же, напишите нам и мы посчитаем, сколько будет стоить автоматизировать процессы в вашей компании. Можем разработать десктопную версию, а можем мобильное приложение на модулях, которое будет дешевле и быстрее, чем разработка с нуля ↴
Странная система тк у каждого сотрудника индивидуальные навыки, опыт и алгоритмы мышления.
Условно, сотрудник, который уже решал схожую задачу, решит ее за 10 минут, а тот, который не решал, за 30, но исходя из вашей логики, тот, который не решал - молодец, а тот, который на опыте не молодец. Получается, что сеньоры - лохи и не работают, а джуны пашут и молодцы, хотя у сеньоров просто кпд кратно выше 🤷🏻♂️
этот комментарий говорит о непонимании базовых понятий в математике.
условный синь с зп 3000р/час сделал задачу за 10 мин. и заработал 500 руб
условный дж с зп/ 400р/час сделал задачу за 30 мин и заработал 200р
все честно
У нас на проектах сидят мидлы и сеньоры) Разработчики сами оценивают, за сколько они закроют задачу. А чтобы не было такого, что один запланировал 10 часов на выполнение одной и той же задачи, а другой 4, используем технику командной оценки — Planning Poker. Если один оценил так, а другой сяк и разница огромна, выясняем, почему. Один мог забыть о важных нюансах, другой хотел изобрести велосипед. Переоцениваем. Но всегда закладываем буфер на случай подводных камней
в этом и смысл всех этих "модных" систем впарить тупым манагерам "упущенные выгоды" там где их нет!
Каждый исполнитель дает предварительную оценку свою. Понятно, что тот, кто ее решал – сделает быстрее и оценит соответствующе. Также и наоборот
Засуньте себе свой средневековый тайм трекинг туда откуда его достали. Как можно в 2024 году отслеживать результаты работы по затраченному времени. Совок и палочная система
А вы хоть прочитали, для чего мы это делаем?