En un mundo ideal:
En un excelente artículo No te llames programador y otros consejos profesionales , Patrick McKenzie explica, entre otras cosas, que el lenguaje no importa:
Un desarrollador es una persona que resuelve problemas, en general. Un desarrollador no es una persona que escribe código en un idioma específico.
A las empresas no les importan los idiomas que conoces. Si necesitan contratar a un desarrollador para un proyecto escrito en un idioma específico, y tienen un candidato con mucha experiencia pero que nunca escribió una línea de código en este idioma, aún sería contratado.
Según mi experiencia tanto como desarrollador como como persona que tuvo que contratar a otros desarrolladores, la observación es muy similar:
La experiencia de N años en Java o la experiencia de N años en C # no importa. Lo que importa es que el candidato sepa cómo resolver problemas, sepa la diferencia entre el código de espagueti y el código limpio con una arquitectura bien pensada, etc.
No me importan los idiomas que usaste antes. Para un proyecto de C #, preferiría contratar a un desarrollador profesional que pasó su vida escribiendo código Java, Python y Ruby on Rails en lugar de un principiante que solo conoce C # y lo sabe mal.
El conocimiento y la experiencia que obtienes usando un idioma son reutilizables en cualquier otro idioma.
Un desarrollador experimentado que usó Ruby on Rails para el desarrollo web y pasó el resto de su carrera escribiendo aplicaciones de escritorio Java usando Oracle encaja perfectamente bien para un proyecto ASP.NET MVC usando Microsoft SQL Server. Debido a que esta persona ya sabe todo lo que necesita para este trabajo , aparte de algunas cosas específicas y diferencias de sintaxis.
Por otro lado, una persona que ha realizado solo unos pocos sitios web ASP.NET MVC pequeños no encaja en absoluto, porque es posible que no comprenda completamente la arquitectura MVC, que sepa qué es el perfil de SQL y que le falten algunos otros elementos esenciales conocimiento.
No me digas que no puedo solucionar un pequeño problema con un sitio web PHP que usa CodeIgniter solo porque nunca antes usé CodeIgniter.
En la práctica:
En la práctica, cuando busco trabajos independientes y cuando veo las ofertas de trabajo en general, son muy específicas del idioma.
Algunos buscarían un desarrollador de PHP con dos años de experiencia en Magento. Otros buscarán a una persona con experiencia VB.NET de al menos tres años, y si les envía un currículum mencionando que ha realizado el desarrollo de C # durante seis años, pero sin mencionar VB.NET, no se molestarán contestar. Si solicitan una persona con experiencia en Firebird, no escucharán su experiencia de diez años con Oracle.
¿Por qué hay tanta diferencia entre la teoría y lo que Patrick McKenzie y yo describimos como sentido común y el mundo real de las ofertas de trabajo?
<rant>...</rant>. En serio, ¿hay alguna pregunta real aquí?
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.Si bien es perfectamente capaz de solucionar el problema, si la causa raíz es CodeIgniter (una de las pocas peculiaridades del marco o uno de sus muchos errores abiertos), le tomará mucho más tiempo solucionar el problema.