Junior-Middle-Senior - якими папугами міряємо?

У мегатопіке від Максима , який на момент написання замітки мав 400 + комментов:), в ході обговорення я навів такі ось критерії для Junior-Middle-Senior за рівнем складності робіт і самостійності:

Jun: сам робить просту роботу і під наглядом - середню
Mid: сам робить середню роботу і під наглядом - складну

Sen: сам робить будь-яку роботу і ще може наглядати

робота ділиться на:
проста - нецікава, зрозуміло як робити
середня - цікаво, зрозуміло, що можна зробити, але є неясності з потенційними несподіванками - такий собі «перчик» детектед

складна - дуже цікаво, але незрозуміло як зробити

Таку градацію я використовував при роботі в оутсорсе - вона проста, компактна і шляхом нескладного аналізу дозволяє отримати ті кілька десятків компетенцій, який будуть мірилами якісної оцінки співробітника на предмет співвідношення його з погонами і відповідної виделкою оплати.

Перейшовши в продуктову розробку (в тому числі і замовну), система цінностей та критеріїв, природно, змінилася, тому я б хотів детальніше розкрити свою поточну позицію з цього приводу.

Я вважаю, що загальноприйнята роздача погон залежно від технічних скілів та/або тривалості досвіду роботи - від лукавого. І це не залежить від моделі бізнесу - дуже шкода, що я зрозумів це пізно і багато не зробив в оутсорсе. Я часто отримую резюме, де написана купа технологій і зазначені погони типу «був тим-лідом на великому проекті». Але, мені не потрібно закрити вакансію «по головам» з заданими погонами, мені потрібно знайти людини , якому я міг би довірити рішення проблем іншої людини , причому за гроші .

І, можливо, рішення цих проблем призведе до використання всього яскравого набору технічних скілів, а може бути і немає. Тому, людина повинна хотіти вміти вирішувати проблеми - чужі, і власні, а не просто обмінювати якийсь розмір коду на якийсь розмір компенсації.

Розробка софта - це суцільне рішення проблем, починаючи від перетворення ідеї замовника в концепцію реалізації і закінчуючи впровадженням і супроводом, з попутним постійним вирішенням проблем взаєморозуміння на різних рівнях, технічних проблем, проблем управління різними ризиками і т.д. З урахуванням цього, я використовую градацію за наступними критеріями:
- Людина вміє і хоче вирішувати проблеми засобами ІТ.

- людина не завжди вміє, але хоче вирішувати проблеми засобами ІТ.

Все, запрошуються у команду тільки такі люди. Решта - ні. Під «проблемою» розуміється комплекс проблем, які треба вирішити і подолати, щоб якусь ідею перетворити на програмний продукт і дати це продукт людям. При цьому, неможливо повністю відхреститися від частини проблем (впровадження, наприклад) і зробити тільки шматочок цікавою для тебе роботи. Перефразовуючи класиків: злегка вагітним бути не можна, а спеціалізація - це для мурашок. Тому, можна не вміти вирішувати якісь проблеми, але хотіти це робити і розуміти їх механіку - обов'язково.

Виходячи з вищезгаданого - так, «можна бути сеньйором в 23 роки», а можна і не бути в 50. І вік дає тут просто розмір набору підходів, практик, паттернов мислення і прийняття рішень. Вирішує не вік, а зрілість. Причому не статева, а інтелектуальна:)

Інша справа, що в нашому ментальному просторі дуже прийнято перекошувати поняття і відриватися від якісних характеристик і контексту нашої роботи на догоду кількісним.

Тому, суперечка про «сеньйорити» - ні про що суперечка:)

У мене ось такі пріоритети, тому що я допомагаю вирішувати проблеми бізнесу за гроші і моя аудиторія - зрілі не віком а мисленням люди, які займаються вирішенням проблем засобами розробки та впровадження софта. І погонів у таких людей лише двоє - розробник і тестувальник:)
Я хочу робити «максимальну якість за прийнятну вартість або прийнятну якість за мінімальну вартість» [c] і постійно переживаю за свої і чужі ризики, а в когось інші життєві пріоритети і тому, природно, він придумав собі іншу градацію зі своїми віковими планками , погонами і висотою стільців.

Все залежить.

З повагою і вибачте за болд в тексті - розставив акценти, щоб не було пересудів:)

Опубліковано: 13/07/11 @ 10:03
Розділ Різне

Рекомендуємо:

Використання SQLAlchemy в django
Яндекс.Старт в Одесі
Післямова - про зарплати і сеньйора
Значення HTML 5 для пошукової оптимізації
Семінар «Як отримувати максимум цільового трафіку від Google»