среда, 24 мая 2017 г.

How Much Do You Cost?

Я получаю несколько электронных писем каждый день от программистов, заинтересованных в работе с Teamed.io удаленно. Первый вопрос, который я обычно задаю, это «какая ваша ставка»? (по часам). Меня удивляет, как часто люди неправильно оценивают себя.

Я слышу очень разные цифры - от 5 до 500 долларов в час. Я никогда не говорю «нет», но обычно придумываю свою собственную почасовую оценку. Эта статья объясняет, какие факторы я делаю и не принимаю во внимание. Это мои личные критерии; Не принимайте их в качестве отраслевого стандарта. Однако я нахожу их объективными и логичными, поэтому позвольте мне объяснить.

Вклад с открытым исходным кодом

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

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

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

Вторая возможная причина заключается в том, что вы работаете с девяти до пяти, для еды, без страсти. На самом деле, никто так не проявляет себя. Вместо этого я часто слышу что-то типа «моя компания не платит мне за вклад с открытым исходным кодом, а дома я хочу проводить время с семьей». В современной разработке программного обеспечения большая часть кода, с которым мы работаем, - это библиотеки с открытым исходным кодом, фреймворки, инструменты, инструменты и т. Д. Почти все, что вы используете в своих коммерческих проектах, - это открытый исходный код. Поплатив зарплату, ваш работодатель уже инвестирует в продукты с открытым исходным кодом, потому что вы их активный пользователь. Проблема в том, что вы не заинтересованы в том, чтобы стать более активными в этом вкладе. Я рассматриваю это как отсутствие страсти и самомотивации. Будете ли вы быть эффективным разработчиком в наших проектах? Совсем нет, потому что вся наша модель управления основана на самомотивации.

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

Таким образом, если ваша учетная запись GitHub пуста и ваше резюме не позиционирует вас как «активного участника ядра Linux» (да, почему бы и нет?), Я сразу теряю интерес. С другой стороны, когда я вижу проект с более чем 100 звездами в вашей учетной записи GitHub, я волнуюсь и готов предложить более высокую скорость.

Географическое положение

Это обычная практика платить более высокие ставки тем, кто живет в более дорогих странах. Когда я получаю резюме от программистов в Сан-Франциско, их тарифы составляют 70 долларов США + в час. Те же навыки и опыт стоят 15-20 долларов в Карачи. Причиной здесь является стоимость жизни - в США она намного выше, чем в Пакистане.
Мы предпочитаем работать с людьми, чьи расходы ниже

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

Хотите заплатить $ 30 за обед? Станьте лучшим инженером. До тех пор купите хот-дог за несколько баксов. Просто говоря, что «я уже здесь, и мой обед стоит 30 долларов» не является аргументом.

Таким образом, чем дороже вы живете, тем меньше денег остается в кармане. Для нас это означает, что $ 100 будет стимулировать программиста из Карачи гораздо сильнее, чем те же 100 долларов, которые будут мотивировать одного и того же человека, если она живет в Сан-Франциско. Таким образом, мы предпочитаем работать с людьми, чьи расходы ниже. Наши деньги просто будут работать лучше.
Репутация: 0 Обычный

Мы все знаем, что имеет StackOverflow, но очень мало людей (на удивление мало!) Активно вносят в него свой вклад. Если ваш профиль пуст (или у вас его нет), я понимаю, что у вас 1) нет вопросов и 2) вам нечего ответить.

Во-первых, если вы ничего там не просите, вы не растете. Ваш образовательный процесс остановился некоторое время назад, возможно, сразу после того, как вы получили офисную работу. Или, может быть, вы слишком застенчивы, чтобы спросить? Или вы не можете описать свои вопросы в точном и точном формате? Или у всех ваших вопросов уже есть ответы? В любом случае, это печально.
Репутация SO - это доказательство того, что вы можете найти ответы на свои вопросы, общаясь с людьми, которых вы не знаете

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

Очень часто я слышу людей, говорящих, что они решают большинство своих проблем, спрашивая своих коллег, сидящих рядом с ними в офисе. Они говорят, что им просто не нужен StackOverflow (или аналогичные ресурсы, если они существуют), потому что их команда настолько велика, что на любые вопросы можно ответить внутренне. Это хорошо для команды и плохо для вас. Зачем? У вас нет очень важного навыка - найти ответ в общедоступном Интернете. В наших проектах мы препятствуем горизонтальным коммуникациям между программистами, и вы не сможете ни от кого получать помощь. Вы будете сами по себе, и вы потерпите неудачу, потому что вы привыкли к тому, что вас покровительствует старший в вашем офисе.

StackOverflow - это не просто показатель того, насколько вы умны и сколько upvotes вы получили за «лучший шуток программирования». Это доказательство того, что вы можете найти ответы на свои вопросы, общаясь с людьми, которых вы не знаете. Это очень важный навык.

Годы опыта
значок

«Я написал Java за 10 лет!» - и что? Это число означает только одно: мне удалось выжить в каком-то офисе в течение десяти лет. Или, может быть, в нескольких офисах. Вам удалось убедить кого-то в том, что он должен заплатить вам десять лет за то, что он сидел в своем доме. Означает ли это, что вы пишете что-то полезное? Означает ли это, что ваш код был совершенным? Это ничего не значит.

Годы опыта - ложный показатель. Это может сыграть против вас, в сочетании с другими показателями, упомянутыми выше. Если ваше резюме говорит о том, что вы только начали программировать два года назад, и ваши учетные записи GitHub и StackOverflow пусты, вы все равно можете улучшить свои шансы. Ты как раз в начале своей карьеры. Однако, если ваше резюме говорит о том, что вы «10-летний опытный архитектор» с нулевым вкладом с открытым исходным кодом, это означает, что вы либо лжете об этом десять лет, либо абсолютно бесполезны в качестве архитектора.

Я хочу сказать, что аргумент «многолетний опыт» следует использовать очень осторожно. Играйте в эту карту, только если у вас есть другие достоинства. В противном случае, держите это для себя.
Сертификаты
значок

Oracle, Zend, Amazon, IBM, MySQL и т. Д. - Я говорю об этих сертификатах. Чтобы получить их, вы должны сдать экзамен. Нелегкий, а не онлайн. Это настоящий экзамен, проведенный в сертификационном центре, где вы сидите перед компьютером в течение нескольких часов, без каких-либо книг или доступа в Интернет, отвечая на вопросы. Довольно унизительная деятельность для уважаемого разработчика программного обеспечения? В самом деле. И есть большая вероятность неудачи, что также довольно смущает.

Это очень хороший знак, если вам удастся пройти через это. Если вы сделали это несколько раз, даже лучше. Однако, если вы не получили никаких сертификатов за всю свою карьеру, это может быть одной из следующих причин:

Во-первых, вы боитесь потерять. Серьезная сертификация может стоить несколько сотен долларов (я заплатил более 700 долларов за SCEA), и вы не получите возмещение в случае неудачи. Если вы боитесь потерять, вы боитесь сражаться. Это означает, что вы попадете в реальную ситуацию, где предстоит решить сложную проблему.

Во-вторых, вы не инвестируете в свой профиль. Это, скорее всего, означает, что вы не хотите менять компании и предпочитаете найти мирный офис, где вы можете остаться навсегда. Помню, как-то я сказал моему другу: «Вы значительно улучшите свое резюме, если пройдете эту сертификацию». Он ответил с улыбкой: «Надеюсь, мне больше не понадобится резюме, мне нравится эта компания». Это отношение очень полезно для компании, на которой вы работаете, но это определенно работает против вас.

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

Разнообразие навыков

Чем больше технологий или языков программирования вы знаете, тем меньше вы стоите. Я не говорю, что невозможно быть экспертом во многих вещах одновременно - это вполне возможно. Но позвольте мне дать вам прагматичную причину, почему вы не должны соревноваться. На рынке есть тысячи «программистов Java7» - мы можем легко выбрать того, кто нам нужен. Но не так уж много «программистов Hadoop» или «дизайнеров XSLT».
В конечном итоге мы платим больше за узкоспециализированных специалистов, потому что у нас нет выбора

Если вы сосредоточитесь на какой-то определенной области и станете там экспертом, ваши шансы найти работу будут ниже, но выплаты будут больше. Обычно мы в конечном итоге платим больше за узкоспециализированных специалистов, главным образом потому, что у нас нет выбора. Если какой-либо проект, над которым мы работаем, нуждается в эксперте Lucene, мы найдем подходящего человека и сделаем все возможное, чтобы получить его / ее на борту. Делать все возможное - это в большинстве случаев увеличить цену.

Таким образом, когда я слышу, что вы «хорошо разбираетесь в MySQL, PostgreSQL, Oracle и SQLite», я понимаю, что вы мало знаете о базах данных.
Переговоры и публикации
значок

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

Как статьи в блогах, так и презентации на конференции делают вас более ценным специалистом. Главным образом потому, что эти вещи показывают, что некоторые люди уже рассмотрели вашу работу и ваш талант. И это был не просто отдельный работодатель, а группа других программистов и инженеров. Это означает, что мы также можем положиться на ваше мнение.

Кроме того, если вы пишете и регулярно представляете, у вас есть очень важный навык / талант - вы можете представить свои идеи «удобоваримым» способом. В наших проектах мы препятствуем неофициальным коммуникациям и используем системы продажи билетов. В этих билетах вам нужно будет объяснить свои идеи, вопросы или проблемы, чтобы каждый мог понять вас. Без достаточного количества презентационных навыков вы не выживете в своих проектах.

Кстати, некоторые разработчики программного обеспечения даже запатентовали патенты в своих именах - почему вы не можете это сделать? Или, может быть, даже издать книгу. Почему нет?
Предыдущая работа

Обычно я не уделяю большого внимания этому разделу вашего резюме. Наша модель управления настолько отличается от всего, что вы можете видеть где-либо еще, что не имеет особого значения, сколько раз вы увольнялись до этого и как высокопоставленный сотрудник занимал / работал с вашим постоянным работодателем. Даже если ваш титул «технический директор Твиттера» - это для меня ничего не значит.

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

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

образование

Бакалавр, Магистр, PhD ... мы заботимся? На самом деле, нет. Образование очень похоже на упомянутую выше «предыдущую занятость». Неважно, где именно вы провели эти пять лет после школы. Важно то, что вы сделали за это время. Если вам нечего сказать о вашей деятельности в университете, чем то, что это имя мне скажет?

Ну, конечно, если это Стэнфорд или Массачусетский технологический институт, это будет иметь значение. В этом случае я вижу, что вам удалось передать свои стандарты окончания и удалось найти деньги, чтобы там учиться. Это хороший знак и, безусловно, увеличит вашу почасовую ставку. Но если это какой-то мамбо-джамбо университет из ниоткуда (как тот, в который окончил я), то держите эту информацию в себе.

Ставки

$ 100 + в час, мы с удовольствием платим эксперту, который владеет несколькими популярными продуктами с открытым исходным кодом; Имеет показатель StackOverflow выше 20K; Имеет сертификаты, статьи, презентации и, возможно, даже патенты.

50 долларов США + в час мы платим профессиональному программисту, который имеет проекты с открытым исходным кодом самостоятельно или является активным участником; Имеет показатель StackOverflow более 5K; Пишет о разработке программного обеспечения; Имеет несколько сертификатов.

$ 30 + в час мы платим программисту, который регулярно вносит свой вклад в открытый исходный код; Присутствует в StackOverflow; Имеет некоторые сертификаты.

15 долларов в час мы платим всем.

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

Я написал эту статью в основном для того, чтобы мотивировать вас к росту.

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

1 комментарий: