среда, 22 апреля 2009 г.

Матрица компетентности программиста

Перевод

1 часть: http://spreadsheets.google.com/pub?key=pmAWNZu8sBj_tXy5ms5foVQ 
2 часть: http://docs.google.com/View?docid=d28gm4q_56hmv6f72z

Оригинал http://www.indiangeek.net/wp-content/uploads/Programmer%20competency%20matrix.htm

На мой взгляд, это офигенно. Практически готовая аттестационная таблица для разработчиков.



6 комментариев:

Александр Кондуфоров комментирует...

Юра, там (http://omega-it.blogspot.com/) есть еще вторая часть:
http://docs.google.com/View?docid=d28gm4q_56hmv6f72z

А вот и оригинал:
http://www.indiangeek.net/wp-content/uploads/Programmer%20competency%20matrix.htm

Yury Skaletskiy комментирует...

О, Саша -- спасибо
обновил

Sergey Rozovik комментирует...

Ага. Некторые вещи повеселили, особенно в колонке log(n).
Представляю себе чувака, легко и небрежно кодирующего красно-черные деревья (в т.ч. и на ассемблере), но в повседневной жизни предпочитающего Erlang и Prolog. У которого от зубов отскакивают системы команд всех современных семейств процессоров, и в тоже время профессиональный опыт в более чем 6 платформах (.Net, J2EE, LAMP, ффуух - я столько платформ даже и вспомнить сразу не могу). Инструменты и фреймворки он пишет для себя сам, и выкладывает их для других, да еще и блог ведет. Интересно, на работу время остается у этого титана компьютерной мысли?
Думаю - нет. Он либо поглощен написанием очередного инструмента, либо пишет в свой блог :)

Александр Кондуфоров комментирует...

Та да :) Веселенькая картинка получается. С другой стороны, программист не обязательно должен быть гуру во всем. Где-то - log(n), а где-то - 2^n или и того нет... Главная ценность тут - системный подход :) Хотя, конечно, излишняя систематизация очень быстро приводит к формализации, а затем - бюрократизации. И если эта бюрократизация в голове у человека закрепляется - то это кошмар...

Так что где использовать такую картинку - неясно. На интервью - бесполезно, не успеешь, да и там главное зачастую не только знания проверить, но в том числе и способность мыслить. На performance review - тоже как-то глупо... Разве что себя проверить.

Yury Skaletskiy комментирует...

вот именно. эта матрица - просто checklist по части направлений computer science. сначала нужно понять, какие пункты вообще имеют смысл для специализации конкретного человека.

Дальше - оценки уровня по этим пунктам можно использовать как отправную точку для личного growing plan, можно в принципе зарплатную сетку даже к ним привязывать.

Как еще использовать -- например при планировании и оценке работ:

Специалист будет "щелкать на зуб" задачи с уровней меньше его (и при этом скучать), вполне качественно и быстро выполнять задачи своего уровня, а с задачами высоких уровней либо не справится нормально, либо это у него займет много времени.

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

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

Для маленьких контор - для личного развития, смотришь что написано в клетках выше твоего уровня, и изучаешь.

Vaspo комментирует...

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