В идеальном мире:
В прекрасной статье « Не называйте себя программистом и другими советами по карьере» Патрик МакКензи объясняет, среди прочего, что язык не имеет значения:
Разработчик - это человек, который решает проблемы в целом. Разработчик не человек, который пишет код на определенном языке.
Фирмы не заботятся о языках, которые вы знаете. Если им нужно нанять разработчика для проекта, написанного на определенном языке, и у них есть кандидат, который имеет большой опыт, но никогда не писал ни строчки кода на этом языке, он все равно будет нанят.
Согласно моему опыту как разработчика, так и человека, которому приходилось нанимать других разработчиков, наблюдение очень похоже:
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.
Почему существует такая разница между теорией и тем, что мы с Патриком МакКензи описываем как здравый смысл, и реальным миром предложений работы?
<rant>...</rant>
. Серьезно, тут есть реальный вопрос?
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 (одна из немногих причуда фреймворка или одна из многих открытых ошибок), тогда вам потребуется значительно больше времени для решения проблемы.