¿Qué tan viable es ser algo así como un gato de todos los oficios de desarrolladores web y de software en lugar de especializarse?

Muchos de los llamados “desarrolladores web” son usuarios de todos los oficios, y el mejor en ellos es fingir que son desarrolladores de software. Instalar WordPress no es desarrollar software.

Si quieres ser un desarrollador de software, primero aprende programación (Teach Yourself Computer Science). Sí, lleva un año o dos, al menos. Pero entonces sabrás cómo desarrollar software. (El desarrollo web sigue siendo desarrollo de software).

Luego aprende los idiomas que necesitas. Y prepárese para seguir aprendiendo nuevos idiomas (y nuevas técnicas: AJAX no apareció hasta aproximadamente 1999, y no se usó mucho hasta unos años más tarde) durante el resto de su carrera. Puedo escribir anillos alrededor de un Z-80 o un 6502, pero ya nadie lo hace. O escribe programas de dBase. ¿Pitón? Mi hermano tenía algunos cuando comencé a escribir software: una pitón era un reptil, no un lenguaje de programación.

Pero si se apegará a un área de programación o tratará de cubrir muchas áreas, aún tendrá que aprender a programar, y seguirá aprendiendo hasta (o incluso después) que se jubile. (He estado retirado por 5 años, no pude dejar de programar hasta que la artritis espinal me impidió llegar a la oficina cuando tenía 70 años, y todavía estoy aprendiendo).

Luego, después de todo eso, todavía tiene que decidir si desea especializarse en un área de programación, o saber lo suficiente sobre diferentes áreas para ser bueno en todas ellas. (E incluso si te apegas a uno de ellos, en 10 años, estarás haciendo algo diferente). La programación no es cuerpos humanos – 2 modelos y nunca cambian – son nuevos idiomas que salen todo el tiempo (casi 300 principales desde que comencé a programar) y nuevas técnicas para usarlas, e incluso si te limitas a un área, aún tendrás que aprender las cosas nuevas que salen en esa área.

Algunas personas se adhieren al desarrollo web, algunas trabajan en lo que sea que surja tan pronto como finalice el proyecto actual, y eso puede ser de 3 meses por proyecto, por lo que aprender 4 cosas nuevas cada año. (Y los campos en los que trabaja también requieren aprendizaje. ¿Nunca tomó un curso de contabilidad? Si tiene que escribir software de contabilidad como parte de un TPV [que es bastante trivial], tendrá que aprender contabilidad. No puede decirle a un computadora cómo hacer algo que no sabes hacer)

Aprenda programación, luego tome cualquier trabajo que se presente (probablemente en el nivel de entrada). Cuando eso termine, busque un trabajo que pueda usar las habilidades que adquirió en el primer trabajo. Si tiene que aprender algo para el segundo trabajo, apréndalo. No todos podemos pasar toda nuestra vida manteniendo Facebook funcionando.

Al Klein tiene toda la razón al obtener una buena base de informática. Mi primer libro “C / C ++” fue muy desalentador. No entendía por qué necesitaba saber todo tipo de variable y cómo se ordenaban los bits.

También estaba bastante furioso cuando estaba aprendiendo HTML de un “Desarrollador web” y no había lógica, operadores, variables, matemáticas o funciones (Luego aprendí sobre los lenguajes de programación del lado del servidor y del cliente). Me sorprendió el año pasado cuando conocí a un “Programador” que subcontrató su “desarrollo de UI”.

Obtenga una base informática general, elija un proyecto y aprenda solo lo que necesita. Diez años más tarde, 30 lenguajes de programación, 10 lenguajes de marcado y 20 entornos diferentes, y puede ser un gato de todos los oficios.

He realizado una enorme cantidad de programación PHP (un lenguaje peligrosamente fácil de aprender). Todavía busco cosas todo el tiempo. También lo hace mi compañero de trabajo 10 años mayor que tengo experiencia a nivel de sistemas, experiencia en desarrollo de juegos, experiencia front-end y experiencia en aplicaciones web. Con tiempo y experiencia aprenderás a aprender. Aprendemos idiomas en días … pero eso se debe a que conocemos la informática.

Piénselo así, una vez que sepa matemáticas … puedo hacerlo en otro idioma solo aprendiendo un puñado de palabras y símbolos.

Lo que no hago es aprender un idioma que no pretendo usar para un proyecto. Voy a programar “X”. ¿Cuál es la mejor (o única) plataforma? Ve a aprender eso. Hacer proyecto. Enjuague y repita.

En mi opinión, un grupo de todos los oficios puede ser un buen gerente, un buen consejero. Pero no hay buen desarrollador de software.
Para tener acceso a esos lugares, debe mostrar su valor en posiciones más bajas. Y este no siempre es un lugar para generalistas.

La razón es simple: si no profundiza lo suficiente en un tema dado (protocolos de red e infraestructura, marcos de Java, servicios web, lo que sea), no estará en su lugar para usarlo correctamente. Para usarlo, probablemente. Para obtener el máximo, para obtener un rendimiento promedio o una aplicación estable.

Los especialistas se arriesgan a estar demasiado cerrados en su campo, pero, en realidad, no puede estar tan cerrado. Interactúas con el entorno siempre.

Si quieres ser maestro, escritor, intérprete, gerente, etc., ser un experto en todos los oficios es realmente útil.

De lo contrario, si desea un trabajo para alguien que realmente está creando un programa, realmente quiere contratar a personas que se especialicen en un entorno específico.

More Interesting

¿Cuál sería un buen cronograma con respecto a las áreas de aprendizaje en informática cada semana para convertirse en un desarrollador de software de la industria competente?

Cómo entrenarme para el desarrollo de software

Imagine un freelance de desarrollo de software que ha adquirido un proyecto extremadamente importante que requiere un equipo. Sin embargo, el prototipo supera la financiación inicial. ¿Cuál es el mejor enfoque para darse cuenta del éxito del proyecto?

Estoy entrevistando para un desarrollador principal / CTO para mi puesta en marcha. ¿Qué preguntas debo hacer?

¿Por qué la gente máxima (cliente) supone que el desarrollo de software es gratuito?

¿Qué idioma (s) debo poner en mi cartera para un trabajo de desarrollador de software?

En su opinión, ¿qué hace que alguien sea un desarrollador de software sénior?

¿Puedes trabajar en proyectos relacionados con big data que no tengan habilidades de ciencia de datos?

¿Debo seguir un M.Tech de una buena universidad (IIT / NIT / BITS) o comenzar un trabajo?

¿Por qué se paga menos a los diseñadores que a los desarrolladores? ¿Alguna vez va a cambiar?

Cómo saber si sería un buen desarrollador de software

¿Qué piensan los desarrolladores del anuncio de Cragislist 'Buscando dos malditos grandes desarrolladores'?

¿Se aplica el impuesto de servicio a los desarrolladores de software independientes?

Cómo ganar experiencia como desarrollador de software fuera de la universidad

¿Debo elegir un contrato de desarrollador de software o un puesto de liderazgo a tiempo completo?