4 июня 2019

Таймтрекинг: стоит ли вести учёт рабочего времени программиста и если да, то как?

Стоит ли вести учёт времени работы программиста и если стоит, то какие инструменты для этого использовать и как сделать так, чтобы сотрудников это не раздражало? А если не стоит, то как контролировать программистов? Узнаем ответы на эти вопросы у наших экспертов.

Евгений Тюменцев, CEO Hello World! Technologies

Для большинства IT-специалистов гибкий график — это общепринятая практика работы. Но есть нюанс: согласно Трудовому кодексу РФ, работодатель при этом просто обязан вести учёт рабочего времени. То есть в рамках правового поля вопроса о том, стоит ли вести этот учёт, вообще не стоит (подробнее: ТК РФ Статья 102. «Работа в режиме гибкого рабочего времени»).

В то же время нигде не написано, как именно это следует делать. Самый дешёвый и удобный способ — использование таймтрекера. Мы считаем, что таймтрекер — это не орудие контроля, а орудие свободы. Возможно, потому что сами некоторое время назад написали свой таймтрекер для учета рабочего времени, тщательно проработав этот вопрос: что удобно, что нет и так далее.

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

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

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

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

Как сделать так, чтобы сотрудников это не раздражало? На наш взгляд, самое главное — это грамотное обоснование того, зачем и почему ведётся учёт рабочего времени. Если с самого начала у коллег нет вопросов «почему они должны…», то и в дальнейшем это не станет проблемой.

Андрей Пчелинцев, исполнительный директор WhenSpeak

Мы в компании стараемся оцифровывать все процессы, ведь цифровые данные — хорошая основа для принятия управленческих решений. Процесс разработки является важнейшей составляющей любого SaaS-продукта, поэтому фиксировать время выполнения задач необходимо. Но основная причина такого учёта заключается не столько в контроле над самим программистом, сколько в важности оцифровки других показателей, например, оценки потраченного времени для понимания инвестиционных затрат или себестоимости проекта, стоимости реализации новых фич или некорректно описанных задач. Собранные данные позволяют выявлять ошибки, анализировать их, делать выводы и постоянно улучшать «экономику» продукта/проекта.

Убеждён, что специальные программы, в которых сотруднику нужно лишь нажать кнопку «старт» в начале работы и кнопку «стоп» в конце, а также программы, которые записывают экран рабочего устройства, действуют скорее как раздражающий фактор и, скорее, несут больше вреда. В первую очередь подобный подход оттолкнет очень востребованных в наши дни программистов (компании борются за лучшие умы, предлагая современные офисы, особый график, спортзалы, смузи и прочее — всё, чтобы привлечь и удержать сотрудника). Конечно, в определённых сферах доскональный контроль через специальные программы необходим, но мы стараемся доверять своим сотрудникам. Поэтому придерживаемся открытого диалога в рабочих процессах, разговорах на ежедневных stand-up, обсуждении сложностей при подготовках к релизам и т.д. Учёт рабочего времени по конкретным задачам ведём через плагин в Jira по каждому таску и проекту в «механически-доверительном» формате. На практике это означает, что каждый программист после выполнения задачи самостоятельно отмечает на доске затраченное на нее количество часов. Конечно, мы периодически проверяем указанные часы на объективность, но делаем это выборочно и доверяем сотрудникам. Они же, в свою очередь, понимают, что эти часы напрямую влияют на экономику компании, которая в конечном счёте отразится и на них, поэтому работают на совесть, а не на формальные показатели. Конечно, есть и те, кто пытается хитрить, с такими мы стараемся быстро прощаться, ведь такие люди нарушают наш важнейший принцип — доверительные и долгосрочные отношения с сотрудниками.

Андрей Саулин, генеральный директор «Аэроклуб ИТ»

Всё зависит от условий, в рамках которых осуществляется работа специалиста. Самая простая причина, по которой стоит учитывать время, потраченное на проект разработчиком, — управление ресурсами. Чтобы понимать общую загрузку и иметь возможность планировать распределение ресурсов, необходимо списывать часы сотрудников, работающих над задачами в рамках разработки проекта. Загрузка рассчитывается как отношение списанных часов ко всем доступным рабочим часам за конкретный отчётный период. Это позволяет оценить, чью загрузку необходимо снизить, а кому можно добавить задач. Кроме того, учёт часов, потраченных на проект, позволяет проанализировать эффективность реализации проекта. Если потребовалось больше часов на разработку, чем предполагалось по предварительной оценке, то это должно стать сигналом для менеджера проекта и руководителя разработки. В командных методологиях разработки, таких как Scrum, таймтрекинг применяется редко, если не требуется удовлетворение остальных пунктов.

Еще одна причина, по которой необходимо использовать таймтрекинг, — разработка IT-продукта, который будет поставлен на баланс как актив компании. Учёт времени необходим для расчёта стоимости формирования начальной стоимости такого актива. Для этого списанные на продукт часы умножаются на диверсифицированную ставку по ролям, либо на среднюю ставку, согласованную по компании для разработки.

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

Сергей Полуэктов, основатель и генеральный директор MediaSoft

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

Но есть и серьёзные минусы. Отслеживание рабочего времени почти всегда подразумевает, что программист должен отработать определённое количество часов в день, и это может стать проблемой. В таких условиях многие люди бессознательно начинают думать о том, как «отсидеть» положенные 8 часов, и могут расходовать рабочее время менее рационально. Менеджерам и тимлидам при этом приходится постоянно проверять, как и на что расходуется каждый час. Это не только раздражает сотрудников, но и требует больше ресурсов.

Мы предпочитаем работать по другой схеме, предоставляя разработчикам самим решать, когда и сколько они будут работать. Главным критерием оценки их работы является результат, то есть объём и качество выполненных задач. Если требуется командное взаимодействие, участники проекта сами договариваются, как будут пересекаться в офисе.

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

У гибкого графика есть слабые места: например, разработчик может сделать задачу за час, а сказать, что потратил четыре. Чтобы исключить такие вещи, можно периодически проводить выборочный аудит затраченного времени. Поручить это можно любому опытному специалисту, например, руководителю разработки.

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

Юлия Гулюк, PR-директор Grapheme

Каждая компания сама для себя определяет, нужно ли вести учёт времени программистов. Все зависит от модели оплаты за проект: Fixed Price vs. Time and Materials. Не будем вдаваться в подробности и отличия, лучше расскажем про свой опыт.

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

Мы работаем по системе Fixed Price, но это не означает, что нам не нужно вести учёт времени менеджеров, дизайнеров или разработчиков. Нам это нужно, чтобы понять, успевают ли ребята выполнить задачи в срок, чтобы не профукать дедлайн и понять, какие проблемы возникли, сколько времени ушло на их решение, сколько времени команда тратит на те или иные виды работ. Это очень помогает при последующей оценке новых проектов и составлении смет.

Для таймтрекинга мы используем ActiveCollab. Там нет встроенного таймера (есть отдельная приложуха, которую нужно устанавливать на ПК, но она не очень удобная, часто дает сбои) как, например, в Jira. Но нам это и не нужно. Не все специалисты горят желанием отписывать каждую минуту потраченного времени. За неделю можно выполнить задачу и записать время, потраченное на неё. Так мы не трекаем каждую секунду, проведённую за компьютером каждый день, а можем отметить просто в конце недели всё время, потраченное на задачу.

Эту практику мы ввели относительно недавно, и для многих ребят фиксирование времени на задачи стало достаточно болезненным. Но практически сразу приходит понимание, что это нужное и важное мероприятие, которое в дальнейшем помогает более качественно оценить проекты на стадии составления сметы и давать клиенту более конкретные цифры и в итоге определить рентабельность.
Сложнее тем компаниям, которые работают по принципу Time and Materials. На прошлых местах работы наша команда сталкивалась с тем, что нужно не просто трекать каждую минуту, потраченную на решение задачи, а еще и находиться под постоянным наблюдением. То есть на ПК каждого сотрудника стоит программа, которая делает скриншоты экрана каждые несколько минут и следит за движением мыши. И если ты просто отошёл за чашкой чая, не остановив учёт времени, программа сама отключается. В таких условиях тотального контроля работать довольно сложно, ведь каждому из нас иногда нужно несколько минут пофилонить, чтобы с новыми силами ринуться в бой.

Антон Пальгунов, Senior Frontend Developer в компании Revolut

Если компания платит за код любого качества и готова к текучке кадров, то вести учёт рабочего времени программиста нужно обязательно. Включите тогда и более провокационные метрики: во сколько сотрудник пришел и ушёл, сколько времени провел в IDE, сколько строк кода написал, сколько времени потратил на мобильник, разговоры с коллегами и перекуры. Правда, программисты быстро убегают из таких заводов по производству кода.

Я видел обе крайности: и подобный завод, и его полную противоположность. Свобода тоже опасная штука. Команда может как самоорганизоваться в эффективную машину по решению задач, так и стать неуправляемой. О втором вы узнаете поздно, когда время и деньги уже будут потеряны.

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

Чтобы контролировать работу программистов, имеет смысл взять лучшее из scrum- и agile-подходов. Например, оценивать сложность задачи в числах Фибоначчи, попугаях, собаках, обсуждать эти оценки внутри команды или даже играть командой в planning poker. Из инструментов — только доска c задачами в любом виде и оповещения о выполнении задач членами команды. Через 2–4 месяца сработанная команда сможет довольно точно оценивать сроки и укладываться в них — каждому типу задач будет найден адекватный эквивалент в часах. Вот это уже поддаётся контролю и приносит ценность бизнесу. Только важно не уйти в карго-культ подхода. К примеру, если от ежедневных стендапов внутри команды нет пользы, делайте их реже, и они никого не будут раздражать.

Евгений Карпов, старший фронтенд-разработчик в IaaS-провайдере 1cloud.ru

Если программист сидит в офисе и работает по графику, то учёт рабочего времени уже сделан. Если работа проектная, то учитывать рабочее время программистов — необходимость, потому что появляется достаточно объективная метрика заработной платы — деньги за час работы. Есть 2 подхода: оценка времени на разработку до начала работ и после их окончания.

И в том и в другом случае есть свои подводные камни. В первом есть риск недооценки (или наоборот, переоценки — с запасом) сроков планируемых работ, во втором случае — риск «накрутки» реального рабочего времени. В своей работе фрилансером я предпочитал комбинировать 2 этих подхода. То есть сначала оценка фронта работ. Оплата 50 % от полученной суммы. Если потребуется больше времени по объективным причинам, то тогда объясняешь это заказчику и обычно проблем не возникает.

Ну если это не тот случай, когда планировал день работы, а тут вдруг месяц

Решение «Валарм WAF» будет доступно клиентам «Онланты» в облаке OnCloud.ru

20 сентября 2019

«Онланта» (входит в группу компаний ЛАНИТ) заключила соглашение о партнерстве с компанией «Онсек» – разработчиком комплексной платформы для защиты и тестирования веб-приложений и API «Валарм». В облачном сервисе OnCloud.ru будет доступен один из модулей решения – «Валарм WAF». Клиенты «Онланты» смогут использовать его для защиты веб-приложений и API клиентов от различных угроз, включая OWASP Top-10 и 0-day уязвимости (ранее неизвестная уязвимость, которая эксплуатируется злоумышленниками в сетевых атаках).

 

Компания Utrace выпустила решение для работы с криптозащищенными кодами  

20 сентября 2019

Решение Utrace Proxy от российского разработчика Utrace – посредник между заводами и регистратором эмиссии. Оно поддерживает стабильную интеграцию с производителями товаров и гарантирует бесперебойную работу с государственной системой «Регистратор эмиссии» для участников рынка. Кроме того, Utrace Proxy автоматизирует получение криптокодов от регистратора эмиссии для лекарств.

 

Энергоэффективный ЦОД Liquid Cube представили на выставке в АСИ Владимиру Путину

19 сентября 2019

Российский разработчик инновационных высокотехнологичных инженерных решений компания «Инпро Технолоджис» в рамках выставки Агенства стратегических инициатив (АСИ) представила Liquid Cube - вычислительно-коммуникационный комплекс с непосредственным жидкостным охлаждением.

 

«Валарм» защищает Webinar.ru от кибератак

17 сентября 2019

Компания Webinar улучшила безопасность и надежность сервиса онлайн-конференций, установив решение «Валарм» для защиты платформы Webinar.ru. При помощи технологии Web Application Firewall обеспечена защита пользовательских данных от кибератак и организована бесперебойная работа трансляций на онлайн-площадке, где ежедневно проходит более 650 вебинаров с тысячами участников.

 

Accenture и Collibra начали сотрудничать на российском рынке в области управления данными

16 сентября 2019

Компании Accenture и Collibra объявляют о начале сотрудничества в области внедрения, поддержки и обучения работе с решениями по управлению данными на российском рынке.