2009-06-23 6 views
10

He estado haciendo desarrollo de sitios web desde hace 10 años, principalmente la pila de MS, pero también algo de LAMP. Hay tantas opciones en estos días para los programadores y el mercado de trabajo parece estar por todas partes.¿Los beneficios y las ventajas de ser un jodido programador?

Antes de sumergirme en una nueva tecnología una vez más, esperaba obtener una perspectiva de los demás con respecto a los beneficios adicionales de ser un desarrollador de todos los oficios, además de tener un amplio conjunto de habilidades comercializables. Entra con tu experiencia por favor.

+1

Duplicado http://stackoverflow.com/questions/17903/should-developers-be-specialists-or-generalists y otros – cletus

+0

No es una tontería, que pregunta "¿debería uno ser generalista o especialista?", Esta pregunta se centra en solo el generalista. – Marc

+0

¿Cuál es la diferencia entre y beneficio y una ventaja? :-) –

Respuesta

16

Estas son algunas reflexiones sobre los beneficios de tener una variedad de experiencia en el campo de la programación:

  • Cada lengua y la tecnología ofrece la oportunidad de aprender un enfoque diferente para la resolución de problemas. Tener diferentes técnicas de resolución de problemas en su conjunto de herramientas es una forma invaluable de mantenerse relevante en un campo en constante cambio.
  • Aprender una nueva tecnología o idioma ayuda a mantener la mente alerta - te obliga a organizar dominios de conocimientos similares pero similares en tu mente y te ayuda a mantener tu cerebro activo.
  • Un fondo diverso es más atractivo para los empleadores porque implica que usted es una persona motivada que busca la excelencia en su campo. Si sus antecedentes solo demuestran experiencia con una tecnología estrecha, puede implicar que solo le gusta trabajar en su zona de confort o, lo que es peor, que es inflexible en el aprendizaje de nuevas habilidades.
  • Diferentes idiomas y tecnologías se adaptan a diferentes problemas de manera diferente.'Si todo lo que tienes es un martillo, todo parece un clavo', es el viejo adagio. Conocer múltiples tecnologías le permite seleccionar la mejor para el problema en cuestión.
  • amplía el grupo de personas que pueden interactuar y comunicar dentro de su campo-'hablar el idioma', para robar una frase, hace que sea más fácil para usted trabajar con personas que se especializan en otras tecnologías. Por ejemplo, una buena comprensión de SQL y arquitectura de base de datos facilita la interacción y comprensión de las preocupaciones de los DBA.
  • Es divertido. Personalmente, encuentro que aprender nuevos conceptos en mi campo es una manera divertida de mejorarme como persona. Me gusta aprender.
1

Sé que generalmente estoy atascado pensando dentro de la caja, así que me gusta tener una caja muy grande.

+5

Eso es lo que dijo SHE (?) – harto

3

Ser capaz de resolver una amplia variedad de tareas es aún más importante que una gama de habilidades comercializables.

Las habilidades comerciables te ayudan a encontrar trabajo. La resolución de tareas lo ayuda a retener el trabajo y tiene una variedad de tareas interesantes en lugar de tener que resolver un par de tareas y resolverlas una y otra vez.

Además, sea cual sea el problema, al menos usted sabe por dónde empezar a resolverlo: ambos se ven muy impresionantes y se sienten geniales.

6

En mi corta experiencia de ~ 5 años en la industria del software, trabajé en varios dominios y tecnologías (Java/J2ee, .Net, PHP, scripts de linux-shell, XSLT, javascript, Endeca y muchos más). Lo que siento ahora es que soy bueno para resolver problemas lógicos en cualquier idioma, pero el valor de mi mercado de trabajo no es mucho.

No he aplicado (léalo como nunca lo he intentado) para ningún trabajo nuevo en los últimos 3 años pero, cuando veo cualquier descripción de trabajo abierto, dice 3+ años en Java o 5 años o más en .Net. No estoy seguro de dónde encajar en el mercado laboral actual.

+3

"x + años" en las descripciones de trabajo suelen ser un tipo de requisito "agradable de tener" del lado de los empleadores. Las personas con experiencia "larga" podrían haber estado trabajando en el mismo conjunto de tareas mundanas una y otra vez. En cambio, es lo hábil o flexible que es lo que cuenta. Entonces, no debes permitir que eso te impida realizar trabajos. – Spoike

1

Existen 2 tipos de tecnologías: las que he usado y las que no he usado TODAVÍA. En serio, aprovecho casi cualquier oportunidad para aprender nuevas habilidades, ya sea aprendiendo cosas más profundas sobre lo que ya sé o saltando por completo a nuevos temas.

1

Si prefieres empresas más pequeñas como start-ups, creo que es más importante ser adaptable y ser capaz de aprender nuevas habilidades. En una compañía más pequeña, es importante poder usar muchos sombreros.

En las empresas más grandes, hay más especialización de habilidades, por lo que ser un experto en un área determinada es más valorado, en mi humilde opinión.

Tener exposición a una variedad de disciplinas e idiomas le ofrece a uno la ventaja de tener diferentes perspectivas y quizás ser capaz de resolver problemas. Esto es más importante si está buscando más funciones de diseñador/arquitecto.

Creo que fue el propio Joel quien escribió que preferiría contratar a alguien que pueda adaptarse y adaptarse al entorno del negocio.

0

Me gustaría añadir una propia (mientras espero conseguir algunos upvotes utilizar para LBushkin)

Hay un montón de desafíos que vienen de aprender una nueva tecnología y que se presta a tener algo completamente diferente para trabajar de vez en cuando.

1

Tiene un conjunto de habilidades centrales, eso es increíble. Tener conocimiento en muchas áreas además de eso también es genial. Te convierte en un activo muy valioso. Especialmente si puedes aprender nuevas habilidades fácilmente. Si puede probar eso, entonces no solo tiene un traje fuerte y muchos otros conocimientos amplios, sino que tampoco se limita a los detalles de su lista. Eso te llevará lejos.

Para aquellos sin un conjunto central: esto es muy malo durante una entrevista. Si te metes en una entrevista como un "experto en todos los oficios, dueño de ninguno", serás parte de la neblina gris de todos los demás candidatos. ¿Cuántos programadores decentes NO SON un gato de todos los oficios? No muchos. Y ellos son quienes te están comparando. Siempre necesita ser excepcionalmente bueno en al menos un área. Sí, es aterrador poner tantos huevos en una canasta, pero si no lo arriesgas, siempre serás solo una de las masas durante las entrevistas.

6

He sido desarrollador durante muchos años y me considero un maestro de todos, maestro de ninguno. He tenido un éxito moderado con esto, pero hasta cierto punto deseo tener la paciencia (y más inteligencia) para realmente especializarme y haber aprendido los aspectos prácticos de ciertas habilidades/dominios.

Desde mi experiencia, aquí están algunos de los beneficios de ser un generalista sobre la especialización:

  • me mantiene en mis dedos de los pies. Me siento mucho más adaptable a mi entorno de trabajo siempre cambiante. Me siento menos propenso a convertirme en un dinosaurio.
  • Es más divertido trabajar en una startup donde se requiere hacer muchas cosas diferentes.
  • Una mayor selección de carreras.

beneficios de la especialización:

  • natural - cuanto mayor es la especialización, mayor es el salario.
  • También trabajé en "large-co", donde si te especializas, estás empleado para la vida (la tuya o la vida de las empresas, lo que viene primero).
  • Me he arrepentido de algunas de esas áreas en las que terminé voluntaria o involuntariamente especializándome. P.ej. Escribí nuestro sistema de compilación y para siempre fue etiquetado como el "chico de la construcción" a pesar de que he hecho muchas otras cosas. Los sistemas de compilación son una función valiosa infravalorada, pero eso no es lo que quiere que se le conozca.

En pocas palabras: a equilibrar los dos escogiendo algunos de los dominios en los que puede ser un poco más especializados que sus compañeros de trabajo.

1

¿Ha considerado el beneficio de poder ser un mejor empleado manejando tantos tipos diferentes de puestos en el pasado? Posiblemente estoy tomando tu pregunta bajo una luz diferente, donde estoy viendo todas las diferentes experiencias que he tenido y cómo me benefician. Por ejemplo, ¿quieres simplemente ser un codificador o quieres una gran variedad de tareas mientras eres un "desarrollador" en el título? ¿Qué tipo de progresiones de carrera y condiciones de trabajo sacan lo mejor de ti?

Puedo recordar los diferentes tipos de empresas que trabajo y contrastar lo que funcionaba bien aquí, qué era basura, etc. Mientras que la comerciabilidad de esto es cuestionable ya que todos los que trabajan por x años tienen el mismo número de años de experiencia para usar y algunas empresas pueden sufrir los cambios suficientes que a veces es como una empresa diferente. Aprovechando esto para decirle a un empleador o empleador de perspectiva, "¿Podríamos trabajar así?" o "Donde solía trabajar, hicimos cosas como esta, esta y algunas de ellas, y funcionó de maravilla. ¿Podríamos intentarlo aquí?" La capacidad de analizar el pasado y el apalancamiento es mi punto principal aquí, ya que las experiencias de todos son lo que los coloca en su lugar actual.

2

Ser un "gato de todos los oficios" puede ser una desventaja cuando estás buscando un nuevo trabajo, porque carece de experiencia en cualquier campo. Supongamos que tiene experiencia en Java y .NET.

Trabajo Java: Su experiencia general con Java no lo convierte en un especialista JSF y su experiencia .NET no tiene sentido.

.NET job: su experiencia general con .NET no lo convierte en un especialista WPF y su experiencia en Java no tiene sentido.

-1

Cuando mencionas todos los oficios no es que solo sepas lo básico de todas las cosas, debes saber al menos algunas de ellas básicas y más, para que puedas trabajar con la habilidad que tenías.

Ser capaz de codificar 'Hello World' en todo el lenguaje de programación de ninguna manera lo convierte en 'el más vendido'.

+0

Esto realmente no constituye una respuesta y no agrega nada a las respuestas ya publicadas. –

Cuestiones relacionadas