понедельник, 11 января 2010 г.

Как выбрать программиста - 2

Хочу упомянуть еще об одном редком и важном свойстве программиста - умение разговаривать на языке заказчика.

В ходе постановки задачи, программист должен постоянно задаваться вопросом: зачем Вам, - заказчику это нужно. Цель всегда проще объяснить, чем средство к ее достижению. Тогда и техзадание легче написать и эффективный путь решения найти.

Табличка с космического аппарата "Пионер":
Попытка объяснить инопланетянам кто мы и как нас найти

Например вы говорите "Надо переделать этот отчет по остаткам чтобы была видна цена". Он должен понять так: "Надо сделать некий отчет с ценой и остатком", или даже: "Нужен инструмент для оценки стоимости товара на складе". Тогда предъявленный вначале отчет просто перейдет в разряд одного из вариантов решения, возможно наиболее трудоемкого. Может статься, что цель достигается уже существующим в системе отчетом, который вы пока не удостоили своим вниманием.

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

Чур без крайностей! Пусть бухгалтер не отождествляет программиста с аудитором! Таких примеров в истории масса!

Например: Одна из причин почему я применяю слово "программист" в этом блоге вообще и к себе в частности, заключается именно в том, что на языке заказчика так называют ИТ специалиста вообще. Программирования в моей работе, уверяю, очень не много!