Основной проблемой рынка труда является острая нехватка кадров. Тому есть несколько причин, каждая из которых сама-по-себе весьма важна. Однако, главнейшей из причин, я считаю политику компаний-гигантов, которые в эпоху бурного роста 2005-08 годов стремились больше брать готовые кадры с рынка, чем инвестировать в обучение новых. Таким образом, мы оказались в ситуации, когда рынок заполнен либо джуниорами, которые не имею достаточных знаний и опыта, чтобы сразу давать хороший результат; либо переоцененными в финансовом и должностном плане сеньйорами, которые на самом деле являются крепкими мидлами, и мидлами, которые в лучшем случае являются очень хорошими джуниорами.
Кто виноват?
Сейчас я скажу достаточно крамольную вещь - в таком состоянии рынка виноваты в-первую очередь "генералы", или если угодно топ-менеджеры, от бизнеса компаний-гигантов, которые были родоначальниками такой политики, и во-вторую очередь мы - "средний и старший офицерский состав", или если угодно руководители различный рангов и веса на предприятиях, которые позволили такой политике стать общепринятой практикой. Могли ли мы что-то предпринять? Я уверен, что могли. По крайне мере заставить этот вопрос звучать рефреном на внутренних митингах. Дало бы это какой-то результат? Сейчас вопрос риторический.Тем не менее, как говорил первый президент Украины, маємо що маємо. И закономерный вопрос.
Что делать?
Краткий ответ - переформатировать бизнес из потребителя готовых кадров в созидателя новых.Длинный ответ подразумевает несколько весьма болезненных и неоднозначных предложений, которые я и хочу предложить обсудить в широком кругу
- Постепенное введение практики, когда высококвалифицированные инженеры работают не в одном проекте, а в нескольких. Достичь этого можно снимая рутинную нагрузку с сеньйоров и передавая ее джуниорам. Таковое введение позволит улучшить
- Лояльность квалифицированных кадров - люди начнут использовать накопленные зания и опыт, избавятся от рутины, будут получать больше удовольствия от работы.
- Качество проекта - архитектура, которая будет разрабатываться людьми априори квалифицированными с гораздо большей степенью вероятности будет отвечать требованиям к качеству проекта, чем это происходит сейчас
- Одним из первых шагов может стать организация экспертных групп, состоящих из высококвалифицированных инженеров. Задачей таких групп я вижу в-первую очередь анализ новых и существующих систем с точки зрения качества кода и архитектурных решений. Второй, но не менее важной задачей, таких групп может стать техническая экспертиза проблемных, важных или не известных остальному персоналу решений, если говорить грубо - эдакая скорая помощь и внутренняя база опыта в едином лице. Организовать такие группы можно
- Через списки рассылки. Возможно на первых порах нет необходимости закреплять какой-то особенный статус или выделять команду
- Несколько раз в месяц на регулярной или не регулярной основе проводить брэйнштурмы посвященные улучшению кода, архитектуры, процессов
- Выделить или вменить в обязанности группе необходимость еженедельных (вариант ежемесячных треннингов) посвященных методологиям повышения качества ПО
- И последнее, применяя и расширяя предыдущие практики, добиться ситуации, когда проекты будут менее человекозависимым, а следовательно появится возможность строить более разноуровневые и сбалансированные команды.