No es raro, dependiendo del tipo de lugar donde trabajas. Si usted es un programador corporativo, es probable que se quede en una sola tecnología, pero si trabaja en una agencia, la tecnología se elige para adaptarse a la tarea, por lo que está expuesto a muchas más opciones.
Los mejores ingenieros entienden sus problemas en términos de algoritmos, y si bien harán todo lo posible para cumplir con las convenciones de su idioma elegido, podrían volver a implementarse en otro idioma con bastante facilidad ya que sus pensamientos son sobre el flujo, no la sintaxis.
No todos son políglotas multiplataforma, pero muchos de los que trabajo son. Big Nerd Ranch tiene personas excelentes y, por lo general, lleva un mes o menos pasar de la exposición a un idioma a tener fluidez en ese idioma.
- ¿Cuáles son los principales sitios a los que cada programador debería suscribirse?
- ¿Por qué la mayoría de los ingenieros de software superiores tienen más de 35 años?
- Soy ingeniero de software, pero ahora tengo una cuenta de GitHub y no tengo nada que poner. ¿Qué cosas puedo desarrollar para mostrar mis habilidades de codificación?
- ¿Qué significa realmente 'no romper la compilación' en el contexto de la ingeniería de software?
- ¿Cada persona que posee una Mac también compra cualquier otro software?
Los proyectos de Big Nerd Ranch varían bastante: un año, trabajé en una gran aplicación web para administrar las operaciones de una empresa de servicios; una aplicación de mercado estilo eBay; una aplicación para iPhone que reproduce videos en tiempo real; soporte de accesibilidad agregado a una aplicación Mac existente; y escribió una aplicación de AppleTV. También brindé apoyo a una serie de aplicaciones corporativas (cosas como aplicaciones de ventas de campo o aplicaciones de relaciones con los accionistas). En la competencia anual de programación, mi equipo creó un nuevo control de entrada para nuestra oficina; eso requería programar el servidor Raspberry Pi en Elixir, pequeños controladores de luz en Arduino, y tenía aplicaciones de iPhone / Apple Watch / Android para los empleados, una aplicación de iPad para imprimir tarjetas de visitante y otra aplicación de iPad para mirar la puerta y colocar un GIF en Slack cada vez que alguien se acerca. Fueron dos personas haciendo toda esa programación en tres días.
Cuando no estaba trabajando en esos esfuerzos, pasaba tiempo escribiendo código en idiomas completamente nuevos para mí, usando marcos que normalmente no usaría, escribiendo publicaciones de blog sobre las tecnologías que estoy usando, o aprendiendo leyendo o asistiendo a una clase. Una semana, solo por diversión, escribí un clon de un viejo juego de arcade.
Antes de trabajar aquí, trabajé en varias otras compañías. En cada caso había una sola tecnología en uso (C ++, Java, .Net) con una pequeña porción de otros lenguajes utilizados para tareas de soporte (SQL, una pequeña secuencia de comandos de shell, algunas piezas de Python o PHP). caso, porque la mayor parte de los trabajos de ingeniería de software están en ese tipo de taller.
… pero si lo quieres, ¡puedes tenerlo!