Desafortunadamente, se aplica la salida habitual: depende de su cliente.
Sin embargo, recomendaría los siguientes consejos genéricos:
- Para el kit funcional en su caja de herramientas: Scala (para cuando se hace funcional en una casa Java), Elixir (funcional, y mucho para recomendarlo). Clojure puede ser mejor que Scala, pero dependerá de la tienda en la que te encuentres.
- Para Web, JavaScript, Elixir, Java (para tiendas empresariales que no se han convertido a nuevas opciones).
- Para pan y mantequilla, Java, Node.JS JavaScript y C #.
- Para ciencia de datos: Python, R
- Lo importante es no tener una pulgada de ancho y una milla de profundidad (solo conozco un idioma realmente bien). Cada tipo de problema tiene un lenguaje que se adapta bien a ese tipo de problema, pero podría ser un mal ajuste para otros tipos de problemas.
Elija cuatro idiomas principales (recomendaría Elixir, JavaScript, Java, C #, Python) y haga cosas como ejercicios SICP, Project Euler y Advent of Code en cada uno de esos idiomas.
- Tengo dos años de experiencia en análisis y ahora estoy cambiando como desarrollador de Hadoop. ¿Cuáles son las posibilidades y qué CTC debo esperar?
- ¿Debo seguir una carrera en seguridad cibernética o en aprendizaje automático?
- ¿Cuáles son las ventajas y desventajas de obtener una maestría en ciencias de la computación después de 8 años de experiencia laboral en la industria de TI?
- ¿Cuáles son mis opciones si no puedo soportar un trabajo corporativo?
- ¿Cuáles son algunas de las mejores universidades para CA después de 10 + 2?
Sin embargo, esto es solo la primera mitad. Lo siguiente es comparar sus soluciones a un problema en los diferentes idiomas, incluida la evaluación comparativa de los resultados. ¿Qué idioma produce mejores resultados de referencia? ¿Cuál se ve más fácil de mantener? ¿Cuál es la complejidad de tiempo y espacio para la implementación habilitada por las características de cada idioma? ¿Qué idioma considerarías como el ganador general?
A partir de esto, habrá trabajado en la construcción del kit más importante que tiene como desarrollador … su conocimiento de la herramienta adecuada para el trabajo y las características de ese lenguaje que se aplican mejor a su problema actual.
También podrá hacer mejores soluciones híbridas. Realmente disfruto de Elixir, pero todavía me encanta el combo de Node.JS para el front end y Erlang para el backend.