¿Tener un trabajo técnico mejor pagado significa que ya no puedes codificar? [cerrado]

58

Trabajo en una gran empresa donde los técnicos se clasifican aproximadamente en una de estas categorías:

  1. Un desarrollador en un equipo scrum que desarrolla para un solo producto y tal vez trabaja con otros equipos que están estrechamente relacionados con el producto.
  2. Un arquitecto que es más un consultor en múltiples equipos (5-6) y trata de reconocer las similitudes entre los esfuerzos del equipo que podrían resumirse en bibliotecas (sin embargo, los arquitectos no escriben el código de la biblioteca). Este arquitecto también asiste a muchas reuniones con la gerencia e intenta establecer una dirección técnica.

En mi empresa, el rol de arquitecto es donde la mayoría de las personas técnicas se mueven como el siguiente paso en su carrera.

Mis preguntas son: ¿La mayoría de las empresas trabajan de tal manera que sus técnicos mejor pagados están muy lejos de escribir código? ¿Es esta una tendencia natural para la carrera de un desarrollador? ¿Puede un desarrollador tenerlo todo (código Y dirección establecida)?

c_maker
fuente

Respuestas:

75

¿La mayoría de las empresas trabajan de tal manera que sus técnicos mejor pagados están muy lejos de escribir código?

La mayoría de las malas compañías. Existe una tendencia natural a una mayor responsabilidad para involucrar menos escritura de código y más enfoque en otros aspectos del desarrollo de software. Dicho esto, es muy común que la gente técnica pierda el contacto con lo que es común / mejor / posible si no dedican tiempo a la codificación. Esto tiene un efecto desastroso en la empresa.

¿Es esta una tendencia natural para la carrera de un desarrollador?

Si. Al final, una persona puede ayudar mucho más al producto orientando, coordinando, diseñando, conociendo el dominio del problema y realizando otras tareas de desarrollo de software de las que puede escribir código. Y con toda honestidad, tener buenas habilidades de liderazgo o diseño es mucho más raro (léase: valioso) que la habilidad de escribir códigos.

¿Puede un desarrollador tenerlo todo (código Y dirección establecida)?

Absolutamente. Aunque es necesario darse cuenta de que la cantidad de codificación será bajar. Simplemente no puede hacer bien esas otras cosas valiosas si pasa el 80% del día en un IDE.

La otra opción que sucede es la del 'ingeniero principal' por falta de un término mejor. Algunos desarrolladores son muy especializados. Trabajé con alguien, por ejemplo, que escribió controladores de gigabit ethernet para Linux. Necesitábamos que hiciera ese tipo de trabajo para nosotros, y dado que solo un puñado de personas podía hacer bien ese trabajo, hizo montones de dinero en efectivo además de escribir código la mayor parte de su día.

Sin embargo, la mayoría de las empresas no necesitan ese tipo de especialización. Solo están conectando datos juntos o creando otro sitio web / aplicación móvil.

Telastyn
fuente
1
Esta. Sin embargo, en la mayoría de las jerarquías hay algunas posiciones entre el "mono de código" promedio y un arquitecto; El desarrollador junior, el desarrollador senior, el líder del equipo e incluso el gerente de proyecto a menudo se encuentran debajo de un arquitecto de software. Hasta el gerente de proyecto, la mayoría de esos puestos siguen siendo codificadores primarios, con funciones de trabajo de supervisión / asesoría que aumentan gradualmente, con un salto cuántico cuando avanza a PM que prácticamente alivia todas las tareas de codificación a favor de la gestión de recursos y personas. Los arquitectos generalmente saltan los PM para mantenerse más cerca de la codificación, pero obtienen autoridad sobre múltiples proyectos.
KeithS
1
Gran respuesta. Y su comentario sobre "tenerlo todo" es perfecto. Recientemente tomé una decisión consciente de alterar mi carrera profesional para poder volver a escribir código. Tuve la suerte de encontrar una empresa que pueda utilizar mis habilidades arquitectónicas y de programación. Definitivamente pueden ser difíciles de encontrar.
3
"La mayoría de las malas compañías". Preciso y conciso. +1
orip
Google / Find en twitter John Carmack ( twitter.com/ID_AA_Carmack ) Es fundador / Director técnico de ID Software, y aún así escribe código todos los días. Gran ejemplo
kodisha el
@kodisha counter example Linus Torvalds . Parece que no codifica tanto como solía hacerlo.
Autodidacta el
8

Esto depende en gran medida de la cultura de la organización. Muchas empresas no tienen puestos técnicos superiores reales, aunque pueden tener algunos falsos.

Algunas compañías tienen estos puestos. Una de las razones por las que los grandes ingenieros tienden a atraer a algunas grandes empresas (por ejemplo, Google) o a las nuevas empresas es que pueden seguir siendo desarrolladores y trabajar en cosas que les entusiasman con una alta compensación y un estado organizacional. En la mayoría de las empresas, si quisieran seguir siendo desarrolladores, estarían en los peldaños más bajos de la escalera.

orip
fuente
4

La experiencia personal es cuanto más experiencia tengo en escribir código, menos tiempo puedo permitirme escribir código.

Paso tiempo tratando de arreglar los problemas antes de que surjan. Para ayudar a otros cuando están atrapados. Para planificar cómo se sentarán las cosas juntas. Incluso solo tratando de hacer que la gente tire en la misma dirección.

Se siente inevitable en mi posición. Prefiero trabajar con el código, pero hay cosas que puedo hacer por nuestra compañía que son mucho más valiosas.

Ahora bien, esta es una experiencia personal, pero sí, creo que reflejaría la mayoría de las empresas más pequeñas. Sin embargo, le he dejado claro a mi propio jefe que no quiero que me eliminen del código por completo.

Creo que los mejores arquitectos de software son prácticos. Vi un buen artículo http://www.infoq.com/articles/brown-are-you-a-software-architect. Mire la parte 4 Diseño, desarrollo y pruebas.

Dicho esto, ¿por qué las actividades de codificación del día a día no deberían ser parte del papel de un arquitecto? La mayoría de los arquitectos son codificadores experimentados, por lo que tiene sentido mantener esas habilidades actualizadas. Además, el arquitecto puede experimentar el mismo dolor que todos los demás en el equipo, lo que a su vez los ayuda a comprender mejor cómo se ve su arquitectura desde una perspectiva de desarrollo.

Wes
fuente
0

Depende de cuáles sean sus responsabilidades. Si es responsable de asuntos técnicos, entonces debe permanecer en una posición de codificación. Dividir el proceso de 'idea' del proceso de 'implementación' es un camino por el camino equivocado. Si alguna vez te encuentras en esa posición, debes resistir el impulso de ser ese genio que simplemente no tiene el tiempo para implementar sus brillantes ideas.

Por otro lado, si su responsabilidad recae en la administración, no creo que deba codificar. Un gerente debe administrar el tiempo de llenado. Tal posición incluye facilitar la comunicación entre diferentes codificadores, y entre el equipo y el gran ecosistema burocrático. Los peores gerentes en mi experiencia donde los que se quedaron cayeron mientras codificaban mientras el equipo se desmoronaba debido al conflicto y la mala comunicación.

nbv4
fuente
1
+1 "Los peores gerentes en mi experiencia donde los que se quedaron se quedaron con la codificación"
Vadimo