25 July 2011

Сколько нужно платить разработчикам?

IT career
Translation
Original author: Joel Spolsky
Не так давно в блоге stackoverflow появился интересный пост от сооснователя компании Stack Exchange Joel Spolsky о расчёте зарплат разработчикам. Далее до хабраката выдержка из этого поста, а после — вольный перевод документа по системе компенсации в Stack Exchange.

Сейчас то самое время года, когда мы пересматриваем зарплату каждого сотрудника с целью убедиться, что она соответствует его уровню. Мы зависим от десятка системных разработчиков и платим им на основе системы компенсации, разработанной нашими двоюродными братьями из Fog Creek, которая настолько отличается от Stack Exchange, что возникали некоторые трения.

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

Одним из ключевых принципов Stack Exchange является то, что мы делаем всё, что можно, публичным, и мы стараемся оставлять публичные артефакты для всего, что мы делаем. В духе этого, я загрузил полную версию нашего актуального плана расчёта компенсации, так что вы можете увидеть, как принимаются решения относительно уровня компенсации в Stack Exchange. Только одна вещь не стала публичной – финальные расчёты, которые определяют каждый индивидуальный чек, это потому, что мы должны сбалансировать нашу философию открытости с правом каждого разработчика на личную неприкосновенность.


Компенсация разработчика в Stack Exchange


Это описание того, как определяется зарплата разработчиков в Stack Exchange.

Введение

Команда разработки в Stack Exchange – потрясающая группа программистов, которая оправдывает наш лозунг “быть умным и добиваться результата” каждый день.

Мы хотим предложить им справедливую, легко понимаемую, прозрачную и конкурентоспособную компенсацию.

Справедливая – означает без игр. Наша компенсация не основана на том, как хорошо ты договариваешься или как часто ты просишь повышения; она основана на повторяемой предсказуемой системе. Не существует принудительного рейтинга, так что люди могут не мешать друг другу работать хорошо. У нас нет возможных зарплатных планок для каждого уровня, у нас есть одна зарплата и система по её расчёту.

Легко понимаемая – означает, что любой разработчик может узнать, какая зарплата должна у него быть согласно системе. Он может увидеть, что нужно сделать для продвижения по карьерной лестнице. Также различные менеджеры могут узнать, сколько платить членам своей команды и получить последовательные и справедливые результаты.

Прозрачная – отражает ключевые убеждения Stack Exchange о поддержании нашего бизнеса открытым и без секретов. Это означает, что если бы список зарплат каждого неожиданно оказался на Wikileaks, никто не был бы удивлён настолько, чтобы расстроиться. Прозрачность – основа для гарантии справедливости.

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

Конкурентоспособная – означает, что вы зарабатываете как минимум столько в Stack Exchange, сколько могли бы зарабатывать в любом другом месте. Это критично – быть привлекательным и быть способным удерживать тех разработчиков, которых мы бы хотели видеть, работающими на нас. Если наша система компенсации неконкурентоспособна, мы не сможем нанимать людей, которых хотим, без предложения “исключительной” зарплаты и исключений в справедливости.

Составляющие конкурентоспособной зарплаты

Верхняя граница зарплат C# разработчиков по всему миру может варьироваться от 30000$ до 200000$.

Мы провели обширное исследование на предмет того, что используют другие компании для определения зарплат программистов для того чтобы быть уверенными в конкурентоспособности нашей системы. Мы обнаружили, что рыночные зарплаты являются функцией от:
  1. Навыков: насколько вы хороши в том, что вы делаете;
  2. Сферы деятельности: как много вещей, за которые вы отвечаете;
  3. Опыта: как долго вы программист;
  4. Размера компании: небольшие компании платят меньше крупных;
  5. Месторасположения: каждая географическая точка имеет свою собственную рыночную зарплату;
  6. Публичных артефактов: как много вы работаете публично и насколько вы хорошо узнаваемы в сообществе.
Наша система принимает во внимание все эти пункты.

Навыки

Даже работая в ненормально талантливой группе людей вроде команды Stack Exchange, всегда существует возможность выделиться. Навыки повторно оцениваются каждое лето вашим непосредственным менеджером. Смотрите “Быть Ещё Более Потрясающим” Чарт 2011 года в конце этого документа.

Сферы деятельности

Категория “сфера деятельности” отражает, как много ответственности лежит на вас. В больших компаниях это означает как много уровней менеджеров над вами.

В Stack Exchange, у нас нет чёткого разграничения по коду и кучи уровней “сфер деятельности”, но у нас есть:
  • Новичок – пока не доверяется писать код самостоятельно, в большинстве случаев даются небольшие задачи, которые выполняются под руководством наставника. Как правило, проводит не более чем пару дней, без необходимости дальнейшего контроля со стороны менеджера. Ожидается, что он быстро поднимется до уровня «участник»;
  • Участник – пишет большие куски кода самостоятельно. Как правило, проводит несколько недель без наставлений менеджера;
  • Архитектор – разрабатывает большие системы независимо. Управляет проектированием и разработкой больших значимых кусков кода, которые занимают месяцы. Предлагает и отстаивает главные новые улучшения и затем ведёт их к завершению. Управляет несколькими другими разработчиками в качестве менеджера или коллеги.

Опыт

Программисты, как правило, приобретают навыки по радикально разным ценам. Есть много 18-летних программистов, которые могут бегать кругами вокруг 20-летних ветеранов. Тем не менее, существуют периоды опыта, внутри которых рынок имеет тенденцию компенсировать их по- разному. Например, в компаниях нашего размера почти всегда есть единственная, фиксированная стартовая зарплата для новых выпускников, независимо от мастерства (вероятно потому, что ребёнок не может говорить о “мастерстве”, пока не поработает некоторое время). Через год по окончанию такой школы, навыки намного лучше определяют зарплату.

Наши периоды опыта:
  1. Студент колледжа или интерн;
  2. От 0 и до 1 года;
  3. От 1 года до 5 лет;
  4. От 5 до 15 лет;
  5. От 15 лет.
Мы измеряем опыт как полное время посвященное разработке ПО.
  • Время, проведённое за работой не связанной с программированием, не считается;
  • Время, проведённое в колледже на обучении или стажировках или до окончания учебного заведения (для тех, кто пошёл в колледж), не считается.

Размер компании

Мы постоянно сравниваем наши зарплаты с компаниями похожего размера. Более конкретно, мы присматриваемся к зарплатам других интернет стартапов в США, которые имеют менее 100 работников, финансируемых через венчурный капитал или уже оценённых как прибыльные. Мы точно не пытаемся гоняться за Google, Microsoft, инвестиционными банками или разогретыми стартапами.

Месторасположение

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

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

Публичные артефакты

Одним из ключевых значений Stack Exchange является тот факт, что мы работаем публично и создание публичных артефактов – электронного, публичного следа из хлебных крошек по работе, которую мы делаем – является необычайно важным для нас.

Это часть компенсации, потому что, чем лучше известно, о вас в индустрии, тем выше зарплату вы получаете.

Есть несколько способов, которыми вы можете воспользоваться для создания публичных артефактов. Никто не будет использовать их все, но выполнение, по крайней мере, некоторых из этих вещей – основная часть набора навыков каждого. Вот они:
  • Участие на сайтах Stack Exchange;
  • Написание постов в наш блог;
  • Написание постов в ваш собственный блог;
  • Участие в проектах с открытым исходным кодом;
  • Публичные выступления;
  • Посещения мероприятий по совместному программированию и встреч разработчиков;
  • Участие в обсуждениях;
  • Посещения конференций;
  • Запись подкастов или выступление в качестве гостя в таких подкастах.
Идея заключается в том, что от вас ожидается создание публичных артефактов как от представителя команды Stack Exchange – еле заметное выступление на конференции без представления себя как участника Stack Exchange для нас ничего не значит. Рубашки бесплатны. Оденьте их.

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

“Быть Ещё Более Потрясающим” Чарт 2011 года

AAA+++ Уровень гуру. Делает и учит. Вы действительно знамениты за этот навык. Это редкость даже в нашей потрясающей команде. Большинству людей следует иметь не больше одного или двух таких навыков.

A+ Потрясающий. Целиком и полностью доминирующий навык.

A Достаточный. Навык достаточный для выполнения текущей работы.

B Быть Ещё Более Потрясающим. Это хорошая точка для того, чтобы работать на повышение уровня своего мастерства в следующем году.

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

У нас нет C, потому что каждый здесь потрясающий. Если бы вы выполняли работу на уровне C, D или F, мы бы уже серьёзно поговорили с вами и работали бы в тесном контакте, чтобы исправить это.
Навык Выберите уровень
Фундаментальное программирование
Циклы, подпрограммы и т.д. Основы программирования
B A A+ AAA+++
Веб-разработка
HTML, CSS, JavaScript/JQuery, Ajax
B A A+ AAA+++
Наши инструменты программирования
C#, .NET, LINQ, SQL
B A A+ AAA+++
Другие инженерные навыки
DVCS, исправление ошибок, автоматизация, работа в команде и т.д. Все те штуки, о которых вы говорите на programmers.se
B A A+ AAA+++
Внеклассное обучение программированию
Изучение интересных новых технологий ради них самим
B A A+ AAA+++
Создание публичных артефактов
Посты в блогах, инструменты с открытым исходным кодом, книги
B A A+ AAA+++
Дизайн UI
Хорошие навыки в понимании опыта пользователя – код, который легко читать и использовать
B A A+ AAA+++
Доставка
Хорошо организованная доставка. Навык в быстрой доставке кода пользователям
B A A+ AAA+++
Пропаганда
Совместное программирование, волонтёрство, евангелизм, публичные выступления
B A A+ AAA+++
Выполнение работы
Выполнение плана, выполнение задач
B A A+ AAA+++
Производительность и оптимизация
Постоянно работать над ускорением пользовательского опыта
B A A+ AAA+++
Получение данных
Просматривать пользовательские данные с целью поиска путей по их улучшению
B A A+ AAA+++
Система администрирования
Важные технологии, используемые на нашем хостинге
B A A+ AAA+++
Идеи
Постоянная генерация новых идей
B A A+ AAA+++
Звук соединения модема
Возможность эмулировать модем в 1200 бод, используя только свой рот (с протоколом коррекции ошибок) достаточно хорошо, чтобы загрузить GIF в CompuServe
B A A+ AAA+++
Tags: stackoverflow.com stackexchange joel spolsky money developers
Hubs: IT career
+47
9.3k 85
Comments 73
Ads