¿Debo aprender Java y C # si quiero convertirme en un desarrollador de back-end?

No.

El desarrollo de software backend es un campo muy diverso. Cuando la gente dice backend , en este día y edad normalmente se refieren al contexto del software que se ejecuta en un servidor para formar parte de una aplicación web. Esa área en sí tiene muchos idiomas diferentes utilizados, dependiendo de la compañía, equipo y sector en particular.

Los lenguajes de desarrollo web populares incluyen:

  • JavaScript (específicamente, NodeJS, React, etc.)
  • Python (Django y Flask son marcos populares)
  • Ruby (Ruby on Rails es inmensamente popular)
  • PHP (sigue siendo muy popular aunque comienza a mostrar signos de su antigüedad)

Esta lista no es exhaustiva, estas son solo algunas de las que se me ocurrieron.

Sin embargo, si desea convertirse en un desarrollador más fuerte, le recomiendo que también aprenda algunos idiomas fuera de estos. Es probable que no los use para el desarrollo web, pero el conocimiento que obtenga de ellos será muy útil. Considere también:

  • do
  • Haskell
  • Erlang
  • Clojure
  • cualquier otra cosa oscura o inusual que te guste

¡La mejor de las suertes para ti!

No, no necesita aprender Java o C # para convertirse en un desarrollador de back-end. Lo que tendrá que hacer es identificar la pila de tecnología de fondo (combinación de tecnologías de fondo) con la que está más interesado en desarrollar. Las diferentes compañías trabajan con diferentes conjuntos tecnológicos, por lo que si tiene una compañía en particular para la que desea trabajar, es necesario investigar qué productos usan en su back-end.

Rails, Laravel, Play, ASP.NET, Spring y Node.js (con ExpressJS) son marcos comunes utilizados para construir el back-end de los productos. Tendrá que dominar Ruby, PHP, Java / Scala, C #, Java y Javascript respectivamente para construir backends con estas tecnologías.

Puede encontrar una comparación de los marcos de back-end populares aquí.

Edificio feliz!

No tiene que ser Java o C # porque otros lenguajes o marcos aún le permitirán crear soluciones basadas en servicios web: Python, PHP, Ruby o Scala. Su elección de idiomas dependerá de su sistema operativo y servidor web esperados: Linux y Apache versus Windows e Internet Information Server (IIS).

Sin embargo, el mundo está cambiando, por lo que la arquitectura orientada a servicios (SoA) de hoy podría convertirse en la arquitectura distribuida del mañana, como Hadoop o Hive. Java es un gran jugador en ambos mundos y una apuesta segura a largo plazo ya que Open Source finalmente está obteniendo una base sólida en el espacio de desarrollo comercial. Sun puede haber sido tragado por Oracle, pero Java realmente ha sido una historia de éxito. Tanto que Microsoft lo imitó con C #.

No solo piense en el lenguaje: la forma en que se desarrolla y las herramientas que usa son igual de importantes: SCRUM / Agile y Visual Studio o Git serán parte del conjunto de habilidades que los empleadores buscarán.

Learning Git no le costará nada y lo ayudará a alejarse de un modelo de una aplicación, un desarrollador como en iOS.

Si desea aplicar a trabajos donde se necesita Java o C #, deberá aprenderlos. Esos dos idiomas están muy extendidos en el sector empresarial. Sin embargo, si solo se trata de programar para backend, también puedes ir a Python, Ruby, Node.js, etc.

Necesitará cierta familiaridad con JavaScript (que no es Java), ya que el back-end puede generar el código JavaScript enviado al navegador. También necesitará conocimiento de SQL para casi todos los sitios web.

¿Pero Java o C #? No. No conozco bien a ninguno de ellos, y pasé muchos años desarrollando sitios web, tanto front-end como back-end.

no * tiene * que hacerlo, pero aumentaría la cantidad de trabajos posibles a los que podría postularse por un factor de … 50? 100?

si miras lo suficiente, encontrarás backends escritos en prácticamente cualquier otro idioma