По итогам анализа лидирующего новосибирского сайта с объявлениями о вакансиях программиста, были сделаны некоторые выводы о требованиях работодателей к соискателям.


Все требования были разделены на три группы в зависимости от того, насколько часто они встречаются в объявлениях:

  1. требования, присутствующие практически во всех объявлениях
  2. требования средней частоты
  3. требования специфичные для вакансии младшего программиста
  4. требования специфичные для вакансии старшего программиста
  5. редкие и единичные требования

1. Требования, присутствующие практически во всех объявлениях

Практически все работодатели хотят от кандидатов:
  • знания конкретных технологий
  • знания ООП, ООД, паттернов
  • знания английского языка
  • опыт работы в определённой должности не менее указанного срока

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

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

Также практически во всех объявлениях указывается то, что желательны знания «нужных» технологий (т.е. с использованием которых делается проект, на который хотят взять человека).

2. Требования средней частоты

Менее частые, но довольно распространенные требования:

  • опыт работы в команде
  • опыт работы с системами контроля версий, bugtracking-системами
  • ответственность, умение выполнять задачи в срок
  • умение разбираться в чужом коде

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

3. Требования специфичные для вакансии младшего программиста

Объявлений таких достаточно мало, но сказать о них можно следующее:

  • в большинстве случаев работодатель рассчитывает на студента
  • часто, но не всегда, требуется какой-то начальный опыт по технологии
  • самое главное – желание и умение учиться

4. Требования специфичные для вакансии старшего программиста

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

Основными моментами, которыми объявления о вакансии старшего/ведущего программиста отличаются от «просто» программиста, являются следующие:

  • умение проектировать и анализировать архитектуру и дизайн приложения
  • «продвинутые» умения, такие как умение оптимизировать

Отдельные требования специфичные для вакансий старшего программиста:

  • опыт проектирования
  • понимание принципов построения архитектуры программных систем
  • умение писать эффективные алгоритмы
  • опыт анализа предметной области и проектирования базы данных
  • умение планировать и оценивать проектные задачи
  • умение оценивать преимущества и недостатки выбранной архитектуры
  • опыт UML моделирования
  • написание архитектурных документов
  • навыки оптимизации
  • кластеринг и распределение нагрузки

5. Редкие и единичные требования

Требования из этой категории не образуют заметных трендов на рынке труда, однако могут быть использованы для построения портрета «идеального кандидата на вакансию программиста».

Редкие, но не единичные требования:

  • высшее техническое образование
  • умение писать качественный код
  • опыт работы с конкретными продуктами
  • знание конкретных предметных областей (чаще для 1С и ERP-систем)
  • знание конкретных протоколов (для коммуникационных приложений)

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

Рабочие моменты

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

Личные качества:

  • интерес к делу и профессиональному росту
  • обучаемость
  • коммуникабельность
  • инициативность

Выводы

Новосибирский работодатель хочет от программиста в первую очередь технологических знаний, понимания ОО-концепций, знания английского языка. Затем его интересует опыт человека в коммерческих проектах. В последнюю очередь работодатель интересуется личными качествами и отдельными умениями кандидата.

Leave a Reply