Найти, нанять, выбрать программиста, квалифицированного разработчика программ, программных систем. Наем, поиск. Квалификация.

Как найти хорошего программиста? Как понять квалификацию разработчика? (10+)

Как найти и нанять хорошего программиста

 1  2 

Оглавление :: Поиск

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

Я решил систематизировать свои соображения на этот счет в статье.

Вам нужен программист?

Не следует ожидать, что Ваш новый сотрудник будет отвечать за все задачи, связанные с информационными технологиями. В этой отрасли уже произошла сильная специализация. Хороший программист может не быть сносным системным администратором или IT-менеджером, системный администратор может не уметь программировать, по крайней мере, в промышленных масштабах.

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

Промышленности нужны промышленные программисты

Если Вы хотите нанять программиста для решения своих производственных задач, то Вам нужен промышленный программист, то есть человек, не просто умеющий программировать, а способный решать поставленные задачи к установленному сроку. На рынке много людей, знающих пару языков программирования, написавших в своей жизни несколько несложных программ, но совершенно не организованных, не способных работать систематически, не просто работать над задачей, а решать задачу к сроку.

Определить, относится ли Ваш собеседник именно к такому типу, при первой встрече практически невозможно. Но другие люди Вам не нужны, так как они создадут проблемы, сломают нормальную работу компании, испортят жизнь Вам. Мой подход состоит в том, что человека прежде, чем нанять, нужно проверить на практической задаче, не очень сложной, но требующей нормального планирования и решения в течение нескольких дней. Я обычно предлагал человеку такую задачу, которую он бы мог решать в свободное время, не увольняясь со старой работы. При этом я соглашался общаться с соискателем по этой задаче в нерабочее время, тогда, когда ему это удобно. Это немного обременительно, но окупается потом отсутствием управленческих проблем с новым человеком. Люди обычно соглашаются, так как они тоже заинтересованы перед увольнением понять, смогут ли они работать с новым руководителем в новых условиях.

Для такого тестирования Вы должны поставить задачу. Соискатель за пару дней должен ее продумать и составить план работы. В плане он должен разбить ее на этапы, определить сроки по этим этапам и результаты этапов, которые можно проверить. Не годится, когда человек говорит, что сделает задачу к такому-то сроку, без поэтапного планирования. Даже в небольших задачах такой подход непригоден, так как Вы, как руководитель, не сможете в этом случае контролировать ход работ и отвечать за весь проект в целом, не сможете вовремя вмешаться, подкорректировать работу подчиненного. А Вам это необходимо, ведь Ваше руководство спросит за весь проект, его не будет интересовать, что Мухин не сделал свой кусок, и из-за этого весь проект задерживается.

Сроки на этапе проверки соискателя пусть он определит самостоятельно. Я и в производственной работе стараюсь не навязывать сроки. Вот задача, назови срок, но потом будь добр уложиться в этот срок. Теперь проверим, что наш соискатель способен выполнить свой собственный план. Для этого после каждого этапа в обговоренный срок он должен предъявить запланированные результаты своего труда. Если ему это удалось, немедленно его нанимайте. Мой опыт показывает, что 50% соискателей пропадает, когда надо показать результаты первого этапа, еще 50% оставшихся - когда подходит очередь сдавать второй этап.

Умение разбивать работу на этапы, планировать и выполнять план как раз отличает промышленного программиста от программиста - художника, работающего ради искусства и не способного решать производственные задачи.

Знание языков программирования и прикладных систем

По моему мнению, этот фактор, за исключением случаев, когда система или язык программирования очень специфические, особой роли не играет. Сам я программировал в своей жизни более чем на 20 языках программирования. Изучить новый язык, новую библиотеку, новую среду разработки у меня занимает около недели при наличии документации и возможности задать вопрос квалифицированному коллеге. Так что значение этого фактора преувеличивать не стоит. Если у человека правильно простроены мозги, есть навыки программирования на похожих языках и есть мотивация, то он быстро освоит новый. Тут только следует отметить, что языки программирования делятся на некоторые группы. Не вдаваясь в подробности, есть алгоритмические языки высокого уровня, аппаратные языки и языки запросов. Логика программирования на них разная. Можно ожидать, что человек быстро освоит новый язык, если он знаком с другим языком из той же группы. Но если он много писал на C++, но не работал с базами данных и не владеет языками запросов, освоение SQL может вызвать проблемы.

(читать дальше...) :: (в начало статьи)

 1  2 

Оглавление :: Поиск

 

К сожалению в статьях периодически встречаются ошибки, они исправляются, статьи дополняются, развиваются, готовятся новые. Подпишитесь, на новости, чтобы быть в курсе.

Если что-то непонятно, обязательно спросите!
Задать вопрос. Обсуждение статьи.

Еще статьи

Примемся за дела немедленно. Советы по самоорганизации....
Как перестать откладывать дела на потом. Несколько простых советов. Книга, котор...

Задачи, решаемые оперативным управленческим учетом, цели, показатели и...
Цели и задачи внутреннего управленческого учета. Шаблон, пример, образец форм оп...

Техническое задание, ТЗ - поставить, написать, разработать, составить....
Как поставить ТЗ на программный продукт? Советы, как разрабатывать техническое з...

Эффективное совещание. Регламент выступления. Время докладчику и други...
Подготовка совещания. Советы, как подготовить материалы участникам. Типовой регл...

Как рекламировать и продвигать товары в интернете. Оценка эффективност...
Опыт проведения рекламной кампании для продвижения товарной марки в сети интерне...

Рейдерский захват бизнеса, компании, предприятия, рейдерство, рейдеры....
Меры против рейдерского захвата. Советы по безопасной юридической структуре пред...

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

Отношения, взаимоотношения, коммуникация с руководителем, руководством...
Как построить отношения с руководителем...