Уверен, не ошибусь, если напишу, что каждый программист хочет работать максимально эффективно, а каждый работодатель хочет, чтобы все его сотрудники работали максимально эффективно.
Однако в действительности часто случается, что даже самый целеустремленный и профессиональный программист не может работать эффективно, а работает лишь на 10-20% своих сил.
И постепенно его мотивация угасает, и 10-20% превращаются в 1-5%.
Что может быть причиной этого? И происходит это из-за многочисленных препятствий, мешающих эффективно работать.
Некоторые из этих препятствий невозможно устранить, не сменив работу, но с большинством можно бороться и преодолеть, и именно об этом пойдет речь в этой статье.
Ниже мой личный топ-лист подобных препятствий с комментариями для программистов и примерами из жизни.
Думаю, примерно такой же список актуален и для других IT-профессий.
1. Компьютеры недостаточно мощны для эффективной работы.
Самым важным фактором, деморализующим и снижающим эффективность работы, для меня является недостаточно мощный компьютер.
На таком компьютере на все тратится слишком много времени.
Любая операция занимает больше времени, чем могла бы, и все это время в совокупности может оказаться чудовищным.
Например, рассмотрим случай разработки большой компьютерной игры (цифры взяты не из воздуха, а из реальных проектов).
Создание большой игры может занять минуты или десятки минут. Более мощные компьютеры могут ускорить сборку в несколько раз.
Я видел 2 соседних компьютера, где собирался один и тот же проект — на одном время сборки было около 5 минут, на другом — 25 минут. 20 минут потраченного времени программиста только на сборку! Запуск большой игры, особенно в отладчике, на слабых компьютерах может занять несколько минут. Чтобы что-то проверить или отладить, нужно загрузить уровень — это тоже может занять несколько минут. При этом то же самое на мощном компьютере может занять 20-30 секунд. В результате я встречал людей, которые, сидя на слабом железе, тратят 5-10 минут на одну и ту же операцию, которая на мощном компьютере выполняется за 20-30 секунд. Учитывая, что подобных операций за день нужно проделать очень много, можно подсчитать реальные потери времени.
Иногда это час-два каждый день, то есть до 20% рабочего времени.
Какое решение я могу порекомендовать здесь? Во-первых, конечно, чтобы обманом заставить менеджеров и других начальников купить более мощные компьютеры.
Это простой метод, но вы не можете контролировать вероятность того, что он сработает. Во-вторых, всегда необходимо оптимизировать все процессы, которые отнимают много времени .
Это самый универсальный совет. И, ИМХО, самый полезный совет во всей этой статье.
Если сборка проекта занимает слишком много времени, переделайте систему сборки или используйте инструменты ускорения (например, Incredibuild).
Если запуск игры слишком долгий, оптимизируйте запуск.
Сделайте это быстро и на слабой машине.
Пользователи в конечном итоге скажут вам спасибо.
Если уровни загружаются долго, ускорьте загрузку уровней.
Оптимизируйте все операции, которые отнимают много вашего времени.
На этот раз вы потратите много сил и времени, но в конечном итоге это окупится, так как вся команда начнет работать быстрее и эффективнее, тратя меньше времени на длительные операции.
2. Ненужные митинги и митинги, а также другие отвлекающие факторы.
Рабочие встречи и митинги – это хорошо.
Они позволяют донести до всех нужную информацию, создать правильный настрой для работы в коллективе и т. д. Но в то же время, если таких встреч слишком много, это жутко демотивирует и мешает сконцентрироваться.
В результате, если в день запланировано 2-3 встречи, то никакой другой работы вы уже не сможете планировать — не успеете ее сделать.
Я решил просто для себя – если встреча не приносит мне пользы и не дает новой информации, то я ее игнорирую (70-80 процентов встреч на моей нынешней работе подпадают под это определение).
Другими факторами, отвлекающими от работы, являются сообщения по громкой связи или другие крики и шум, частые вопросы на различные темы, форумы, мессенджеры и Интернет в целом (когда он не используется для работы) и т. д. Большую часть этих факторов вы можете устранить самостоятельно, например, усилием воли, отказавшись от Интернета во время работы и работы в наушниках.
И часть из них вы не сможете решить самостоятельно, а можете только попытаться вместе со всеми вашими сотрудниками написать свод правил.
Например, я знаю команду, которая сидит в одной большой комнате и в которой с 12 до 15 официально запрещен любой шум (даже звонки по мобильному телефону).
В любом случае следует приложить усилия для снижения влияния этих мешающих факторов.
3. Плотный график работы.
я уже писал об этом в статье о времени прихода на работу И во второй части .
Кратко напишу, что гибкий график позволяет работать именно в то время, когда работа наиболее эффективна, а не «спать» на работе.
Я знаю случаи, когда люди (очень профессиональные) приходили на работу по строгому графику, а потом дремали в туалете.
Или они просто уснули за своим столом.
Кому это выгодно и какова эффективность такой работы? 4. Ненужная или неподходящая работа.
Под ненужной работой я подразумеваю все, от «пойдем поможем вам разгрузить компьютеры» до «сделай эту ненужную функцию, а потом посмотрим, нужна она или нет».
Если у вас хороший менеджер, то с такими задачами вы вполне можете никогда не столкнуться.
Если нет, то нужно уметь от них отказаться или незаметно саботировать.
Я обычно сразу указываю на бесполезность той или иной работы и стараюсь от нее отказаться.
Если руководитель уверен, что эту работу нужно сделать, он будет настаивать и в итоге работа, скорее всего, будет выполнена.
А вот для действительно ненужной работы в момент обсуждения может оказаться, что она действительно не имеет значения или ее может сделать кто-то более подходящий.
Так что, если вы видите, что работа, скорее всего, ненужна или вы недостаточно квалифицированы для ее выполнения, не бойтесь спорить с руководителем.
Он получит в диалоге дополнительную информацию, которой ему, возможно, не хватало, и в конечном итоге примет более правильное решение.
5. Чрезмерная безопасность.
Пароли на любой чих.
Это новый для меня момент, с которым я раньше не сталкивался.
Помню, первое потрясение, которое я испытал на новой работе, было тогда, когда в первый же день мне сказали придумать 3 разных пароля длиной не менее 12 символов, которые должны содержать как заглавные, так и заглавные буквы и цифры.
Звучит страшно, особенно когда вы стоите перед клавиатурой и вам нужно печатать прямо сейчас.
Каждая крупная компания имеет кучу серверов и сетевых дисков.
Но в некоторых компаниях доступ к ним защищен паролем.
В итоге, чтобы что-то положить во временную папку на сервере, нужно ввести пароль.
Конечно, Windows кэширует пароли, но новые образы VMWare всё равно есть и в них всегда приходится вводить эти пароли заново.
Сюда же относится и плохо организованная политика прав доступа к серверам, базам данных, репозиториям кода и т. д. Например, в крупной компании можно потратить несколько недель только на то, чтобы вас включили во все необходимые группы для доступа к исходникам проекта.
А затем потратьте столько же времени на настройку ssh и создание своих учетных записей на разных серверах.
Настолько неэффективно все это может работать, если общение с админами происходит через приложения, а не лично.
На моей нынешней работе любой запрос к админам нужно делать через специальную страницу в интранете.
Затем они могут обрабатывать этот запрос до недели или двух.
В результате обработка простого запроса «Пожалуйста, добавьте меня в группу сборки на сервере 1» может занять неделю.
После первого долгого ожидания я для себя решил, что лучше пойти и поговорить лично, чем ждать так долго.
В результате, если вы спросите лично, то все подобные задачи выполняются моментально прямо при вас.
6. Антивирусы и другое предустановленное необходимое программное обеспечение.
Такое обязательное ПО может тормозить, как тормозят антивирусы, или глючить, но отключить или удалить его нельзя, так как в правилах написано, что это запрещено.
Например, недавний случай: полная сборка одного проекта с включенным антивирусом заняла у меня 15 минут, а без антивируса — 5 минут. Что делать в такой ситуации, терять время? Надо иметь смелость отступить от правил в таких случаях.
Например, я отключил сеть, отключил антивирус, сделал ребилд, а потом снова все включил - это безопасно и время не потрачено зря.
И тогда я воспользовался своим же советом из пункта 1 и оптимизировал систему сборки так, чтобы она занимала 5 минут даже при включенном антивирусе.
Каков ваш главный список вещей, которые мешают вашей работе? И как вы с ними справляетесь? Теги: #эффективность #GTD
-
Как Сбросить Пароль Itunes
19 Oct, 24 -
486 - Сборка, Программы И Бенчмарки
19 Oct, 24 -
Huawei Построит Дата-Центр Для Акадо
19 Oct, 24 -
Uwp — Проблема № 214
19 Oct, 24