Категории программистов...
От: hlt Россия  
Дата: 21.08.07 19:57
Оценка:
Так случилось, что в штатном расписании конторы (не IT) существуют позиции программистов, формально различающиеся категорией, а фактически только зарплатой. Назначение этих категорий людям, делается на основе субъективных выводов о продуктивности и полезности специалиста. До недавнего времени — всех это устраивало. Но теперь, в связи с увлечением ISO9000, требуется сформулировать чёткие, объективные, критерии категорий программистов. Причём, на основе этих критериев, программист должен чётко представлять, что он должен сделать, чтобы получить повышение...

Совершенно не представляю себе на 100% объективных критериев. Подскажите, куда копать?
Re: Категории программистов...
От: Miroff Россия  
Дата: 22.08.07 06:05
Оценка:
Здравствуйте, hlt, Вы писали:

hlt>Совершенно не представляю себе на 100% объективных критериев. Подскажите, куда копать?


Сто процентов объективный критерий один -- прибыль которую программист приносит компании. Критерий четкий (чтобы получать больше, нужно приносить больше прибыли), однозначный и совершенно объективный (измеряется в однозначных и объективных рублях). У него есть только два недостатка: трудно посчитать в большинстве случаев и опасность того, что работники узнав сколько им реально достается просто разбегутся.
Re: Категории программистов...
От: BulatZiganshin  
Дата: 22.08.07 06:57
Оценка:
Здравствуйте, hlt, Вы писали:

hlt>Так случилось, что в штатном расписании конторы (не IT) существуют позиции программистов, формально различающиеся категорией, а фактически только зарплатой. Назначение этих категорий людям, делается на основе субъективных выводов о продуктивности и полезности специалиста. До недавнего времени — всех это устраивало. Но теперь, в связи с увлечением ISO9000, требуется сформулировать чёткие, объективные, критерии категорий программистов. Причём, на основе этих критериев, программист должен чётко представлять, что он должен сделать, чтобы получить повышение...


я плакал и смеялся. категории инженеров — это пережиток советской системы. подозреваю, что они назначались на основе выслуги лет, но лучше об этом спросить у кондовых совестких кадровиков. сейчас эта система де-факто заменилась на западную юниор/средний/сеньёр. для последней, вероятно, можно привести какие-то критерии исходя из формулировок объявлений о работе
Люди, я люблю вас! Будьте бдительны!!!
Re[2]: Категории программистов...
От: bkat  
Дата: 22.08.07 07:41
Оценка: +1
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, hlt, Вы писали:


hlt>>Совершенно не представляю себе на 100% объективных критериев. Подскажите, куда копать?


M>Сто процентов объективный критерий один -- прибыль которую программист приносит компании. Критерий четкий (чтобы получать больше, нужно приносить больше прибыли), однозначный и совершенно объективный (измеряется в однозначных и объективных рублях). У него есть только два недостатка: трудно посчитать в большинстве случаев и опасность того, что работники узнав сколько им реально достается просто разбегутся.


Совершенно глупый критерий, если только не заставлять программиста самому бегать по клиентам и продавать продукт.
Если это не "внедреж" какого-нибудь SAPа, а реальная разработка,
то программист приносит исключительно убытки
Прибыль приносят другие.
Re: Категории программистов...
От: ry Россия  
Дата: 22.08.07 07:53
Оценка: 15 (1) :)
Здравствуйте, hlt, Вы писали:

hlt>Так случилось, что в штатном расписании конторы (не IT) существуют позиции программистов, формально различающиеся категорией, а фактически только зарплатой. Назначение этих категорий людям, делается на основе субъективных выводов о продуктивности и полезности специалиста. До недавнего времени — всех это устраивало. Но теперь, в связи с увлечением ISO9000, требуется сформулировать чёткие, объективные, критерии категорий программистов. Причём, на основе этих критериев, программист должен чётко представлять, что он должен сделать, чтобы получить повышение...


hlt>Совершенно не представляю себе на 100% объективных критериев. Подскажите, куда копать?


100% объективность в данном вопросе вряд ли достижима, но каким-то образом необходимо и оценивать, и дать возможность работнику понимание, каким образом происходит такая оценка.
Я делаю следующим образом (сразу предупреждаю, что сам только-только начал это дело, и система ещё не обкатана).
Вся зарплата делится на основную часть (оклад + персональная надбавка) и различные премии (по итогам работы за год, проект).
При найме с работником согласовывается основная часть, исходя из рыночной стоимости работы (сколько хочет претендент, сколько можем (хотим) дать мы). Далее основная часть раскладывается по составляющим.

ОКЛАД
1. Квалификация (образование и опыт)
Составляем таблицу: опыт по горизонтали (например, в годах и/или в количестве проектов и/или знание каких-либо технологий), образование по вертикали (среднее, неполное высшее, высшее и т. д.). В соответствующих клеточках проставляем баллы (это называется "метод факторных точек")
2. Физические усилия
Например, лёгкая работа (а у программистов работа лёгкая — 0 баллов, владение 10-типальцевым методом набора кода — 10 баллов (по баллу за каждый палец ) и т. д.
3. Инициатива
Создаём таблицу со строками от "следует установленным инструкциям" до "создаёт политику, определяет процедуры и методы работы" с соответсвующими баллами.
4. Самостоятельность
Таблица со строками от "Решения основаны на полностью известных фактах" до "Стратегические решения" с соответсвующими баллами.
5. Коммуникабельность
Таблица со строками от "Контакты ограничены внутри одного подразделения" до "Внешние и внутренние контакты, требующие трудных переговоров, видения стратегии" с соответсвующими баллами.
6. Исполнительность (производительность и качество)
Думаю, понятно, что невозможно оценивать производительность программиста в отрыве от качества его работы.
Составляется таблица: производительность по горизонтали, качество по вертикали. И соответствющие баллы. Проблема: в чём измерять производительность программиста, если написание самого кода занимает в объёме его работы до 3% (недавно видел таблицу) и качество (количество ошибок и дефектов на количество строк кода). Я пока использую именно эти оценки. Если кто-то знает приемлемую формулу (критерии), сообщите, пожалуйста.

ПЕРСОНАЛЬНАЯ НАДБАВКА
1. Сложность работы
Таблица со строками от "Монотонная работа" до "Сложная работа (постоянно несколько групп функций, непредсказуемость их возникновения, операции не всегда четко очерчены)" с соответсвующими баллами. Здесь же начисляются дополнительные баллы только за способность сотрудника заменять другого (по должности, по профессии). Это хоть какая-то защита от ухода сотрудников. Да и просто отпустить человека в отпуск без головной боли, что всё-таки актуально для небольшой компании.

Ну и, конечно, определяем стоимость балла.

ПРЕМИЯ
Годовое собрание акционеров (у нас ЗАО) определяет процент от прибыли на премирование сотрудников. Далее по известной всем сотрудникам формуле деньги и распределяются. Где-то прочитал, что лучшей системой премирования является следующая: "Сколько хочу, столько и даю". При условии наличия в фирме высококачественного топ-менеджмента.

Напоследок хочу заметить, что один из классиков теории менеджмента качества, Уильям Эдвард Деминг, заявлял, что система аттестации и ранжирования персонала, оценка личного вклада, ранжирование по значимости, премиальные системы, плата по труду оказывют разрушительный эффект.
Re[2]: Категории программистов...
От: Challenge  
Дата: 22.08.07 08:58
Оценка:
Здравствуйте, ry, Вы писали:

ry>Здравствуйте, hlt, Вы писали:


hlt>>Так случилось, что в штатном расписании конторы (не IT) существуют позиции программистов...


ry>Напоследок хочу заметить, что один из классиков теории менеджмента качества, Уильям Эдвард Деминг, заявлял, что система аттестации и ранжирования персонала, оценка личного вклада, ранжирование по значимости, премиальные системы, плата по труду оказывют разрушительный эффект.


Если не трудно, уточните, пожалуйста, направление воздействия "разрушительного эффекта".

P.S. Спасибо за весьма содержательный ответ топикстартеру.
Re[3]: Категории программистов...
От: ry Россия  
Дата: 22.08.07 09:18
Оценка:
Здравствуйте, Challenge, Вы писали:

C>Здравствуйте, ry, Вы писали:


ry>>Здравствуйте, hlt, Вы писали:


hlt>>>Так случилось, что в штатном расписании конторы (не IT) существуют позиции программистов...


ry>>Напоследок хочу заметить, что один из классиков теории менеджмента качества, Уильям Эдвард Деминг, заявлял, что система аттестации и ранжирования персонала, оценка личного вклада, ранжирование по значимости, премиальные системы, плата по труду оказывют разрушительный эффект.


C>Если не трудно, уточните, пожалуйста, направление воздействия "разрушительного эффекта".


К сожалению, я могу только предполагать и, видимо, то же самое, что и Вы, так как до сих пор не прочитал первоисточник, только калькуляции с него:
1. Обиды и, следовательно, интриги в коллективе -> разложение Коллектива (с большой буквы).
2. Затраты на поддержание системы.
3. Борьба за показатели, а не работа на результат.

PS: Если бы я был полностью согласен с Демингом, то мне надо было бы увольняться. Но проблемы, согласитесь, всё-таки существуют.
Re[4]: Категории программистов...
От: Challenge  
Дата: 22.08.07 09:30
Оценка:
Здравствуйте, ry, Вы писали:

ry>Здравствуйте, Challenge, Вы писали:


C>>Если не трудно, уточните, пожалуйста, направление воздействия "разрушительного эффекта".


ry>К сожалению, я могу только предполагать и, видимо, то же самое, что и Вы, так как до сих пор не прочитал первоисточник, только калькуляции с него:

ry>1. Обиды и, следовательно, интриги в коллективе -> разложение Коллектива (с большой буквы).
ry>2. Затраты на поддержание системы.
ry>3. Борьба за показатели, а не работа на результат.

ry>PS: Если бы я был полностью согласен с Демингом, то мне надо было бы увольняться. Но проблемы, согласитесь, всё-таки существуют.


Соглашусь (с Вами, с Демингом — не совсем), куда же без них.
Re[3]: Категории программистов...
От: hlt Россия  
Дата: 22.08.07 10:25
Оценка: 5 (1)
Здравствуйте, Challenge, Вы писали:

C>Если не трудно, уточните, пожалуйста, направление воздействия "разрушительного эффекта".


О вреде премирования — http://russian.joelonsoftware.com/Articles/IncentivePayConsideredHar.html
Re[2]: Категории программистов...
От: hlt Россия  
Дата: 23.08.07 03:47
Оценка:
Здравствуйте, ry, Вы писали:

ry>100% объективность в данном вопросе вряд ли достижима


С этим согласен.

ry>Далее основная часть раскладывается по составляющим.


В каждой из которых с объективностью проблемы...

ry>1. Квалификация (образование и опыт)

ry>2. Физические усилия
ry>3. Инициатива
ry>4. Самостоятельность
ry>5. Коммуникабельность

Всё это конечно важно, но все эти баллы не равнозначны, и конечная производительность и качество могут быть важнее, чем "минусы" в этих пунктах.

ry> Проблема: в чём измерять производительность программиста


Вот сдесь, по моему, будет 100% субъективность!
Re[3]: Категории программистов...
От: ry Россия  
Дата: 23.08.07 05:22
Оценка:
Здравствуйте, hlt, Вы писали:

hlt>В каждой из которых с объективностью проблемы...


ry>>1. Квалификация (образование и опыт)

ry>>2. Физические усилия
ry>>3. Инициатива
ry>>4. Самостоятельность
ry>>5. Коммуникабельность

Вот здесь-то и должна проявиться квалификация менеджера, его непредвзятость к людям, но куда же деться от субъективности. Но ведь всё равно нужно иметь единый измерительный инструмент и одинаково ко всем его применять.

hlt>Всё это конечно важно, но все эти баллы не равнозначны, и конечная производительность и качество могут быть важнее, чем "минусы" в этих пунктах.


А вот здесь и проявите своё видение важности, адаптируйте систему оплаты по мере развития фирмы, анализируйте реакцию системы (фирмы, людей) на ваши воздействия. Автоматическая система управления вряд ли возможна. Но... чем чёрт не шутит.

ry>> Проблема: в чём измерять производительность программиста


hlt>Вот сдесь, по моему, будет 100% субъективность!


А, по-моему, здесь-то как раз и нет особой субъективности, если измерять в количестве строк кода, просто, повторюсь, кодирование занимает в общем объёме труда современного программиста около 3%. Я сам в своё время удивлялся, почему, например, при 10-тикратной разнице в производительности двух программистов их зарплата отличается всего лишь в 2, от силы в 3, раза.

А вообще, если найдёте более приемлемые критерии оценки, дайте знать. Лучше в почту.
Re[4]: Категории программистов...
От: hlt Россия  
Дата: 23.08.07 10:11
Оценка:
Здравствуйте, ry, Вы писали:

ry>А, по-моему, здесь-то как раз и нет особой субъективности, если измерять в количестве строк кода


Нельзя измерять производительность в количестве строк кода. Ибо — краткость сестра таланта.
Re[5]: Категории программистов...
От: ry Россия  
Дата: 23.08.07 11:14
Оценка:
Здравствуйте, hlt, Вы писали:

hlt>Нельзя измерять производительность в количестве строк кода. Ибо — краткость сестра таланта.


Я уже просил, предложите объективный, эффективный, простой для понимания (но можно и сложный) и измеряемый критерий. Я с удовольствием буду его использовать.
Re[3]: Категории программистов...
От: Miroff Россия  
Дата: 23.08.07 11:23
Оценка:
Здравствуйте, bkat, Вы писали:

B>Совершенно глупый критерий, если только не заставлять программиста самому бегать по клиентам и продавать продукт.

Ну так я честно предупредил, что с подсчетом возникнут некоторые трудности.

B>Если это не "внедреж" какого-нибудь SAPа, а реальная разработка,

B>то программист приносит исключительно убытки

Если бы это было так, то удаление программиста из компании повышало бы прибыль в среднесрочной перспективе.
Re[4]: Категории программистов...
От: S-SH Россия http://shmakov.ru/
Дата: 23.08.07 11:28
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Если бы это было так, то удаление программиста из компании повышало бы прибыль в среднесрочной перспективе.


Если подписать с заказчиком договор, получить 100% предоплату, а через некоторое время уволить всех программистов, то прибыль резко вырастет. По крайней мере, до срока сдачи проекта.
IMHO. смайлики добавить по вкусу.
Re[4]: Категории программистов...
От: bkat  
Дата: 23.08.07 11:59
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, bkat, Вы писали:


B>>Совершенно глупый критерий, если только не заставлять программиста самому бегать по клиентам и продавать продукт.

M>Ну так я честно предупредил, что с подсчетом возникнут некоторые трудности.

B>>Если это не "внедреж" какого-нибудь SAPа, а реальная разработка,

B>>то программист приносит исключительно убытки

M>Если бы это было так, то удаление программиста из компании повышало бы прибыль в среднесрочной перспективе.


Зарплата программера — это необходимые затраты, которые придется понести,
прежде чем ты сможешь мечтать о прибыле.
Считай, что это типа затрат на электричество на фабрике
Говорить о прибыли нет вообще никакого смысла, пока ты эти затраты не понесешь.
Получишь ли ты прибыль — это зависит от других вещей.

Исключения связаны с косалтерским бизнесом, когда фирма Х продает время программера Y фирме Z.
Тогда прибыль — это разница между тем, что платит Z и тем, что попадет в карман Y.
Re[5]: Категории программистов...
От: Miroff Россия  
Дата: 24.08.07 06:12
Оценка:
Здравствуйте, S-SH, Вы писали:

SS>Если подписать с заказчиком договор, получить 100% предоплату, а через некоторое время уволить всех программистов, то прибыль резко вырастет. По крайней мере, до срока сдачи проекта.


Это краткосрочная перспектива. В среднесрочной прибыль уменьшится до нуля.
Re[5]: Категории программистов...
От: Miroff Россия  
Дата: 24.08.07 06:41
Оценка:
Здравствуйте, bkat, Вы писали:

B>Зарплата программера — это необходимые затраты, которые придется понести,

B>прежде чем ты сможешь мечтать о прибыле.
B>Считай, что это типа затрат на электричество на фабрике
B>Говорить о прибыли нет вообще никакого смысла, пока ты эти затраты не понесешь.
B>Получишь ли ты прибыль — это зависит от других вещей.

То есть получу я прибыль или нет не зависит от того понесу я необходимые траты или нет?
Всегда подозревал что популярная экономика -- лженаука

Прибыль вообще нельзя считать на момент времени, максимум, можно посмотреть состояние счета с учетом обязательств. Прибыль должна считаться всегда за какой-то период, календарный или срочный, неважно. Поэтому рассуждения о том, что "без программистов ничего не получится" или "программисты не приносят прибыли" никакого смысла не имеют. Если уж рассуждать, то рассужать физически: примем процесс за стационарный и будем вность в него возмущения последовательно удаляя по одному сотруднику за раз и наблюдая как меняется прибыль в долгосрочном периоде (т.е. когда шок вызванный изменениями устаканится) Если при этом прибыль падает до нуля, то сотрудник незаменимый. (Например единственный менеджер), если существенно -- ключевой (архитектор), если уменьшается несущественно -- рядовой сотрудник, а если прибыль возрастает -- то сей сотрудник процессу только мешает. Отсюда видно, что программисты, менеджеры и даже уборщицa -- все опосредованно приносят прибыль. Более того, прибыль приносят такие, какзалось бы траты как кондиционер, и современные рабочие места. Естественно, что в реальности процесс нестационарный и натурный эксперимент будет произвести затруднительно, хотя с некоторыми приближениями, возможно.


B>Исключения связаны с косалтерским бизнесом, когда фирма Х продает время программера Y фирме Z.

B>Тогда прибыль — это разница между тем, что платит Z и тем, что попадет в карман Y.
Это тривиальный случай.
Re[4]: Категории программистов...
От: Awaken Украина  
Дата: 24.08.07 06:43
Оценка:
C>>Если не трудно, уточните, пожалуйста, направление воздействия "разрушительного эффекта".
hlt>О вреде премирования — http://russian.joelonsoftware.com/Articles/IncentivePayConsideredHar.html

хорошая статья. Джоэл как всегда зажигает
Re[6]: Категории программистов...
От: bkat  
Дата: 24.08.07 06:58
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Здравствуйте, bkat, Вы писали:


B>>Зарплата программера — это необходимые затраты, которые придется понести,

B>>прежде чем ты сможешь мечтать о прибыле.
B>>Считай, что это типа затрат на электричество на фабрике
B>>Говорить о прибыли нет вообще никакого смысла, пока ты эти затраты не понесешь.
B>>Получишь ли ты прибыль — это зависит от других вещей.

M>То есть получу я прибыль или нет не зависит от того понесу я необходимые траты или нет?

M>Всегда подозревал что популярная экономика -- лженаука

Затраты на программера — это необходимые, но недостаточные, для получения прибыли.

M>Прибыль вообще нельзя считать на момент времени, максимум, можно посмотреть состояние счета с учетом обязательств. Прибыль должна считаться всегда за какой-то период, календарный или срочный, неважно. Поэтому рассуждения о том, что "без программистов ничего не получится" или "программисты не приносят прибыли" никакого смысла не имеют. Если уж рассуждать, то рассужать физически: примем процесс за стационарный и будем вность в него возмущения последовательно удаляя по одному сотруднику за раз и наблюдая как меняется прибыль в долгосрочном периоде (т.е. когда шок вызванный изменениями устаканится) Если при этом прибыль падает до нуля, то сотрудник незаменимый. (Например единственный менеджер), если существенно -- ключевой (архитектор), если уменьшается несущественно -- рядовой сотрудник, а если прибыль возрастает -- то сей сотрудник процессу только мешает. Отсюда видно, что программисты, менеджеры и даже уборщицa -- все опосредованно приносят прибыль. Более того, прибыль приносят такие, какзалось бы траты как кондиционер, и современные рабочие места. Естественно, что в реальности процесс нестационарный и натурный эксперимент будет произвести затруднительно, хотя с некоторыми приближениями, возможно.


Ну если у вас уже есть проверенная модель оценки прибыли по такой схеме и
вы сможете конкретно про меня сказать, сколько я принесу прибыли именно у вас,
то я пожалуй соглашусь
Но что-то я сомневаюсь в том, что у вас (да и вообще где-либо) в таком духе могут подсчитать прибыть от уборщицы.
А иначе остаются именно тривиальные случаи с консалтерами...
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.