Реальный смысл работы: почему одни программисты выгорают, а другие нет
Осторожно: эта статья может заставить вас пересмотреть отношение к своей профессии, себе, людям вокруг. И она вам точно не понравится!Идея статьи возникла у меня при попытке написать комментарий к этой статье в которой под конец я в очередной раз прочитал оскорбление в адрес программистов. Приведу цитату:«Программист — часто просто исполнитель в чужом замысле».Ох и выхвачу я сейчас минусов... Погнали!Коллеги! А вы не пробовали посмотреть на свою работу иначе? Просто попробовать представить себе, что от того как именно вы реализуете написанное в задаче, будет что-то зависеть? Попробовать перед тем как начать бездумно фигачить код, сначала вникнуть «а что нужно человеку для которого я это пишу?». И человек этот - пользователь, а не ваш тимлид или менеджер (хотя может и они тоже).В курсе, что почти всегда одну и ту же задачу в разработке (в администрировании и менеджменте тоже) можно решить более чем 1 способом?Вот примеры из моей жизни (в разное время в разных компаниях было):Проблема 1. «CRM тормозит. Надо чтоб при поднятии трубки на SIP-телефоне у того, кто трубку поднял карточка новая всплывала».Причина: Оказалось, что почти на каждую задачу в CRM выполнялся запрос типа «select * from cards;»И это как-то работало в тестах на 5 карточках, но через 2-3 месяца работы крупного агентства недвижимости этот запрос перестал работать быстро.Решение: Закомментировал вызов этого запроса в той части кода которая вызывалась на событие «подняли трубку», передал отчёт (по сути ТЗ) разработчикам и они доделали так: при звонке ДО поднятия трубки делаем «select id from cards where phone=...;» и потом уже при поднятии трубки человеку отдаём карточку либо новую либо уже заполненную (id нашли до поднятия трубки). Читать далее