С некоторой болью подтверждаю, что главному инженеру совсем не обязательно каждый день писать код. Я это делаю потому, что уверена, что человеку, отвечающему за практическое повседневное руководство многими командами, это очень трудно. Ваш режим дня на этом этапе изменяется: из «режима производителя» он переходит в разряд «режима руководителя». Скорее всего, на этой должности вы очень заняты: вам нужно проводить личные встречи с коллегами, встречи с техническими руководителями, совещания в группах по планированию, совещания с коллегами в подразделениях по продукции и других функциональных подразделениях. Реально воспринимайте свою загрузку. Если вы не можете посвятить написанию кода солидные отрезки времени и не можете выделять время хотя бы несколько раз в неделю, то создаваемый вами код будет продвигаться очень медленно.
К счастью, есть много способов оставаться в теме без активного участия в написании кода. Хорошо практиковать проверки или инспекции кода, хотя бы в качестве второго проверяющего. Если вы активно участвовали в создании систем, держите связь с ними, потому что вы помните детали лучше других и поможете работающим с ними инженерам-программистам с проверками и вопросами. Ценно также участие в работе по отладке системы, устранению ошибок и поддержке продукции. То, в каком качестве вы останетесь на практической работе с системами, зависит от уровня вашей подготовки. Если до ухода в менеджмент вы не были сильным отладчиком, то ваше неожиданное подключение к расшивке ошибок и сбоев в программах может принести больше расстройств, чем пользы делу. Вы можете быть более полезны, работая с кем-то в паре или ликвидируя мелкие ошибки в относительно простых программах. Мы часто недооцениваем небольшие усилия как ничего не стоящие, однако на самом деле они очень важны как средство создать у вас ощущение принадлежности к практической разработке софта и продемонстрировать командам, что вы хотите и можете помогать в повседневной работе.
Риск выпасть из темы значительно увеличивается, если вы перестаете участвовать в написании кода задолго до переключения на менеджерскую работу и не изучите глубоко хотя бы один язык программирования. Я настоятельно выступаю за то, что перед уходом в менеджеры вы должны добиться достаточного мастерства в программировании. В моем случае это заняло 10 лет, включая мои выпускные и магистерский дипломы. Возможно, вы способны достичь этого быстрее, чем я, однако внимательно и честно оценивайте себя. Считаете ли вы, что свободно владеете хотя бы одним языком программирования, чтобы продуктивно писать кодовую базу? Способны ли вы ускорить работу, используя стандартную среду выполнения и работая в стандартных платформах и стандартных библиотеках? В дальнейшем у вас могут уйти глубокие слои знаний, но свобода использования программного языка (подразумевающая владение стандартными инструментами программирования, работу с библиотеками и вычислительным окружением) — то, что остается надолго.
Свободное владение языком программирования подразумевает хорошее знание того, как на нем продуктивно работать над созданием программ, прежде всего с другими членами команды. Без ощущения единого ритма в разработке программы вам будет трудно в работе над одним из самых сложных на этом этапе вопросов — «расшивкой» командных проблем и обеспечением плавной работы команды над созданием качественного софта.
И наконец, даже если вы не собираетесь активно писать код, я настоятельно рекомендую высвобождать в течение недели хотя бы полдня от совещаний и других забот, стараясь использовать это время частично на что-то креативное. Вы можете писать посты для блога, готовить выступления на семинарах и конференциях или участвовать в открытых проектах. Делайте что-то, чтобы удовлетворить позывы к креативу, что в целом сложно сделать в роли менеджера.
Спросите технического директора: я скучаю по коду!