В идеальном мире:
В прекрасной статье « Не называйте себя программистом и другими советами по карьере» Патрик МакКензи объясняет, среди прочего, что язык не имеет значения:
Разработчик - это человек, который решает проблемы в целом. Разработчик не человек, который пишет код на определенном языке.
Фирмы не заботятся о языках, которые вы знаете. Если им нужно нанять разработчика для проекта, написанного на определенном языке, и у них есть кандидат, который имеет большой опыт, но никогда не писал ни строчки кода на этом языке, он все равно будет нанят.
Согласно моему опыту как разработчика, так и человека, которому приходилось нанимать других разработчиков, наблюдение очень похоже:
N-летний опыт в Java или N-летний опыт в C # не имеет значения. Важно то, что кандидат знает, как решать проблемы, знает разницу между спагетти-кодом и чистым кодом с продуманной архитектурой и т. Д.
Меня не волнуют языки, которые вы использовали раньше. Для проекта на C # я скорее найму профессионального разработчика, который посвятил всю свою жизнь написанию кода на Java, Python и Ruby on Rails, а не новичку, который знает только C # и плохо его знает.
Знания и опыт, приобретенные вами на одном языке, в основном можно использовать на любом другом языке.
Опытный разработчик, который использовал Ruby on Rails для веб-разработки и потратил остаток своей карьеры на написание настольных Java-приложений с использованием Oracle, идеально подходит для проекта ASP.NET MVC с использованием Microsoft SQL Server. Потому что этот человек уже знает все, что ей нужно для этой работы , кроме нескольких конкретных вещей и различий в синтаксисе.
С другой стороны, человек, который сделал всего несколько небольших веб-сайтов ASP.NET MVC, вообще не подходит, потому что он может не полностью понимать архитектуру MVC, может знать, что такое профилирование SQL, и может испытывать недостаток в некоторых других важных вещах. знания.
Не говорите мне, что я не могу исправить небольшую проблему с веб-сайтом PHP, который использует CodeIgniter только потому, что я никогда раньше не использовал CodeIgniter.
На практике:
На практике, когда я ищу внештатные вакансии и когда я вижу предложения о работе в целом, они очень зависят от языка.
Некоторые искали бы PHP-разработчика с двухлетним опытом работы в Magento. Другие будут искать человека с опытом работы с VB.NET не менее трех лет, и если вы отправите им резюме с упоминанием о том, что вы разрабатывали C # в течение шести лет, но без упоминания VB.NET, они не будут беспокоиться отвечать. Если они попросят человека с опытом работы с Firebird, они не будут слушать о вашем десятилетнем опыте работы с Oracle.
Почему существует такая разница между теорией и тем, что мы с Патриком МакКензи описываем как здравый смысл, и реальным миром предложений работы?
источник
Don't tell me that I'm unable to fix a small problem with a PHP website which uses CodeIgniter just because I never used CodeIgniter before.
Несмотря на то, что вы вполне способны решить проблему, если основной причиной является CodeIgniter (одна из немногих причуда фреймворка или одна из многих открытых ошибок), тогда вам потребуется значительно больше времени для решения проблемы.<rant>...</rant>
. Серьезно, тут есть реальный вопрос?Ответы:
Потому что во многих компаниях работают HR-дроны, которые не имеют ни малейшего представления об этом. Когда HR говорит: «Какая квалификация нужна кандидату?» гораздо проще сказать «Шесть лет на C #», чем «писать хороший код». Этот дрон понятия не имеет, как выглядит «Записывает хороший код» или как фильтровать резюме по тому, могут ли они написать хороший код. Они могут, однако, быстро прочитать резюме и увидеть «Пять и три четверти года C #» и выбросить его.
источник
Я думаю, что пришло время развеять этот миф о том, что разработчик с X-летним опытом работы с языком Y может легко перейти на язык Y2. Это не так, как это работает.
Если вы относитесь к языку только как к его синтаксису и общим шаблонам, то знание, скажем, Java даст вам огромное преимущество при переходе на C #. Однако он не подготовит вас к WCF, WPF, Click Once, различным библиотекам потоков, Linq, и, безусловно, не подготовит вас к тому, что в брошюре говорится, что работает, но на практике это не так.
Вы видите, что говорите не о языке, а о платформе. И там, где платформа .NET является хорошим примером, поддерживает множество языков, люди склонны сходиться в предпочтительном выборе.
Поэтому, когда я спрашиваю разработчика на C #, я фактически рекламирую разработчика платформы .NET, который имеет опыт работы с проектами на C #. Это, как правило, проекты .net server, проекты winforms / wpf.
источник
Я могу придумать несколько причин:
источник
Не все задания по программированию одинаковы. Моя нынешняя работа, безусловно, вписывается в вашу модель. Это требует много специального анализа данных, и мы подбираем и откладываем инструменты по мере необходимости. Я был нанят отчасти потому, что у меня была возможность быстро стать продуктивным с новыми инструментами.
С другой стороны , есть рабочие места , где будут в поисках конкретной технической экспертизы. Еще в 90-х годах я работал в небольшом магазине программного обеспечения, и нам нужно было быстро приобрести опыт в C ++. Несмотря на явную просьбу об экспертизе C ++ в наших объявлениях, большинство кандидатов знали C ++ меньше, чем я. «Но я могу быстро выучить C ++!» они все сказали. Ну да, я уверен, что вы могли бы, но я мог, как и другие люди, которые уже были там. Мы искали кого-то, кто уже действительно знал C ++, поэтому у нас был бы внутренний источник знаний, поскольку остальные из нас пришли к скорости. Наличие другого новичка в команде действительно не помогло бы.
источник
Скажем, вы ищете кандидата на работу в .NET / C #. Если у вас есть два кандидата на работу, оба, кажется, одинаково опытны, но первый получил свой опыт работы в экосистеме Java, второй - в экосистеме .NET - какой из них ваш любимый?
Кто может сказать, почему вы не получили ответ? Возможно, было достаточно опытных разработчиков VB.NET, претендующих на эту работу? Возможно, отдел кадров использует опыт работы с языком программирования в качестве фильтра, чтобы уменьшить количество рабочих мест со 100 до 10. Возможно, вы только что говорили с не теми компаниями (я полагаю, в моей компании мы отправили бы ответ в этом примере). Вы описали выше).
источник
В большинстве проектов результаты работы нужны быстро, и люди должны получать прибыль как можно скорее.
Люди, которые способны удовлетворить эти потребности и не связаны с определенным языком (языками), являются дефицитными и, как следствие, слишком дорогими. Эти люди нанимаются только крупными компаниями, которые требуют невероятных навыков.
Люди, которые могут решить проблему, но не могут быстро выучить конкретный язык, менее скудны. Они по-прежнему стоят больших денег, и у них есть дополнительные затраты времени, необходимые для изучения конкретного языка.
Эти дополнительные затраты времени уменьшаются за счет запроса программиста для конкретного языка. Он уже выучил необходимые навыки и может быстро добиться результатов.
Короче говоря, проект, который должен быть реализован в JAVA, не нуждается в дорогостоящем невероятном разработчике программного обеспечения и не требует среднего разработчика .net, которому потребуется время для изучения языка / структуры. Нужны немедленные результаты за наименьшую сумму денег, которую получает парень, уже имеющий опыт работы с JAVA и имеющий относительно хорошие навыки решения проблем.
Как всегда, речь идет о деньгах и получении максимальной отдачи от инвестиций
источник
Я думаю, что вы просто неправильно понимаете стандартную фразу «<язык здесь> разработчик». Компании не помещают эту фразу в рекламу, чтобы удержать разработчиков, имеющих опыт работы на каком-либо другом языке. Почему они хотят сдерживать способных разработчиков? С точки зрения работодателя, чем больше кандидатов, тем лучше. Они всегда могут не приглашать людей, которых они не интересуют.
Настоящая фраза в том, чтобы сказать вам, читатель, что повлечет за собой предложение работы. И это имеет большой смысл, ИМХО. Будете ли вы подать заявку на работу, где вы разрабатываете на языке ассемблера Z80? Или кобол? Или фортран?
И, очевидно, если в компании есть два кандидата, которые кажутся одинаково умными, то побеждает тот, кто имеет опыт работы с <language here>. Ни больше ни меньше. (Существуют особые случаи, когда люди нанимаются только для одного проекта, или для проекта, который уже опаздывает, или для первого проекта, который компания разрабатывает на <language here>, где вам действительно необходим опыт работы с этим языком с самого начала, но я не думаю, что они являются правилом.
Кстати, моя компания когда-то писала рекламу, как вы предлагали ( кажется , в конце концов, это имеет смысл). Результаты были разрушительными. Люди, которые действительно заботятся о своей работе, просто пропустили рекламу. Только отчаянные, которые относятся к любой открытой позиции. Мы никогда не пробовали это снова.
источник
Сделай шаг назад и подумай о предпосылке. Вы хотите, чтобы человек сделал какую-то работу .net. Вы помещаете это в описание своей работы, и вы ищете кандидатов с этим навыком! Это просто здравый смысл.
Я, конечно, согласен с вашей более подробной философией о том, почему это не может быть хорошей идеей, но большинство людей просто рекламируют, требуют и ищут кандидата с навыками, которые ему нужны сейчас. Это так просто, так что я думаю, что это ответит на заголовок вашего вопроса о том, почему.
Если они вообще не могут найти ни одного кандидата или проходят через несколько плохих, они могут немного учиться и быть более поддающимися деталям, которые вы детализируете. На самом деле в той области, в которой я нахожусь (Ruby on Rails), сейчас есть много рекламы, в которой говорится: «Опыт не требуется, мы обучим вас» и т. Д., И на самом деле некоторые из ведущих организаций Ruby on Rails очень открыт для кандидатов "без вредных привычек", которые они могут обучать. Таким образом, некоторые организации применяют правильный подход.
Имейте также в виду, что большинство объявлений сделаны внешними рекрутерами или нетехническими внутренними рекрутерами, у которых просто нет знаний, чтобы «идти в сторону», как вы описываете.
источник