¿Demasiadas personas mayores en un equipo? [cerrado]

15

¿Puede ser malo tener demasiados programadores senior en un equipo?

Dicho como, 4-5 programadores senior en un equipo de 6-7 personas. ¿Cuál es la relación / número óptimo en este tipo de situaciones?

¿Puede esto conducir a demasiada filosofía y argumentos sobre ideas?

¿Alguien ha tenido una experiencia así, que pueda compartirla conmigo?

TheBoyan
fuente
¿Hay algún arquitecto? Demasiados desarrolladores alfa necesitan a alguien por encima de ellos que organice todo el potencial "creativo" ;-). La última vez que trabajé en un proyecto con tantas personas mayores, el primer mes fue hilarante. Hubo demasiadas "refactorizaciones" y "rediseños" porque muchos puntos de vista "creativos" :-)
Laiv

Respuestas:

40

Si pudiera elegir, tendría 6-7 personas mayores en un equipo (suponiendo que el proyecto necesite tantas).

El único momento en que puedo ver que esto es un problema es si las personas de la tercera edad solo son mayores en autopercepción y no en ética de trabajo.

No hay nada mejor que trabajar con un grupo de personas que aprecian que cada pieza de desarrollo de software es importante: la documentación, la planificación, el código, el café, todo es importante y se necesita que los desarrolladores maduros (realmente mayores) estén "arriba" nada "y hacer el trabajo correctamente.

EDITAR : Muchas otras respuestas han dicho que demasiados líderes son un problema, pero ¿por qué existe la percepción de que un superior debe liderar? Un senior debe ser lo suficientemente maduro como para elegir un líder y seguirlo. Lo que importa es el proyecto: ¡elige / consigue un papel y hazlo tonto!

Stephen Bailey
fuente
1
Es cierto que los Devs no tienen que liderar, pero a menudo tienen alguna responsabilidad de liderazgo. Esto puede variar entre las organizaciones ...
FrustratedWithFormsDesigner
10
¡Concurrir! Un verdadero profesional de software de alto nivel debe poseer las habilidades y la madurez profesional para poder entrar y salir de los puestos de liderazgo según lo necesite la organización. Un equipo de verdaderos adultos mayores opera más como un conjunto de jazz que como una orquesta.
bit-twiddler
Oh! Esa es la respuesta que estaba tratando de componer antes, pero no pude entenderlo. +1
pdr
10

El mayor problema que veo al cargar un equipo con programadores senior es que podría debilitar a otros equipos. Si tiene desarrolladores junior en otros equipos que necesitan tutoría y orientación, entonces es posible que deba cambiar a las personas.

¿Puede esto conducir a demasiada filosofía y argumentos sobre ideas?

Claro , pero deben ser lo suficientemente maduros para saber qué diferencias importan y cuáles no. Si ha designado un líder de equipo respetado, este tipo de argumentos filosóficos deben mantenerse al mínimo con poco esfuerzo.

Bill el lagarto
fuente
Además, el valor educativo de las personas mayores se ve disminuido por el hecho de que no tienen a nadie a quien enseñar.
Basilevs
7

¿Puede ser malo tener demasiados programadores senior en un equipo?

Seguro.

Soy un gran defensor de Fred Brooks patrón del equipo quirúrgico .

Y dicho esto, si las personas mayores en un equipo de desarrollo no saben quién es el "cirujano jefe", entonces se enfrentarán por decisiones arquitectónicas importantes y tomarán diferentes direcciones en detrimento del equipo.

PD: La necesidad de un equipo de desarrollo de un "cirujano jefe" es similar a la necesidad de un director de orquesta. En cualquier caso, es probable que tengas muchos veteranos; pero tendrás un lío sin una persona que esté indiscutiblemente a cargo.

Jim G.
fuente
77
Solo los equipos en los que senior significa "cinco años de experiencia" necesitan un "cirujano jefe". Todos en mi equipo tienen más de cuarenta años. Utilizamos un modelo totalmente cooperativo para dividir un proyecto. Somos como un conjunto de jazz.
bit-twiddler
2
El patrón del equipo quirúrgico podría funcionar para uno o dos proyectos, al igual que la microgestión. De hecho, la microgestión es con frecuencia el mejor enfoque si lo que le importa es a corto plazo. Sin embargo, a la larga, eventualmente conduce a trabajadores desmoralizados que no están siendo desafiados a su nivel de habilidad. Entonces, los mejores trabajadores se irán por mejores oportunidades y los flojos y menos competentes se quedarán porque es bastante fácil hacer un trabajo cuando se le dice exactamente qué hacer sin tener que pensar por sí mismo.
Dunk
1
¿Y es justo suponer que te ves como el cirujano jefe?
William Pietri
3

Depende de cómo se distribuyen las responsabilidades. Si se supone que TODOS los Devs Sr. tienen la misma responsabilidad en el diseño del wrt, la revisión del código, etc., entonces podría convertirse en un problema. Si se les asignan diferentes responsabilidades para que puedan trabajar sin luchar por el control de los dominios de los demás, entonces no debería ser un problema; por ejemplo, un Dev Senior tiene la responsabilidad principal del diseño del proyecto, otro se encarga de configurando y manteniendo el repositorio fuente, otro se encarga de las pruebas unitarias, etc.

FrustratedWithFormsDesigner
fuente
2
Todos los profesionales de software de mi equipo tienen la misma responsabilidad y la misma autoridad. Somos un equipo pequeño pero con mucha experiencia que hace el trabajo de un equipo mixto mucho más grande.
bit-twiddler
1
Si los desarrolladores no saben cómo trabajar en colaboración, sin la necesidad de dominios definidos, entonces todavía no son de alto nivel.
William Pietri
3

¿Puede ser malo tener demasiados programadores senior en un equipo?

No necesariamente. He trabajado en pequeños equipos de desarrolladores senior que fueron altamente productivos. El nivel del discurso era muy alto y no había rencor.

Con TDD, hay muy pocos compromisos importantes con la arquitectura de software, por lo que hay poca necesidad de discutir sobre ellos. Las decisiones de diseño se pueden resolver simplemente implementando ambos enfoques y viendo cuál funciona mejor. Como los desarrolladores son muy rápidos, el costo de estas pruebas es muy bajo.

Kevin Cline
fuente
2

Sí, puede haber el problema de tener demasiados cocineros en la cocina para una metáfora que pueda aplicarse. También podría ser bastante costoso si todos esperan salarios altos. Tenga en cuenta que esto solo está verificando la existencia de un mal caso y no dice nada sobre su probabilidad.

Óptimo depende de una serie de variables que no está divulgando. ¿Qué métrica quieres usar para darte cuenta de que hay una buena posibilidad de que algunos jueguen aquí? Del mismo modo, qué restricciones tiene dentro de su mundo que pueden hacer que sea diferente de lo que Google o Microsoft pueden tener en contraste.

Demasiados desarrolladores senior pueden tener el problema de que no hay convenciones o demasiadas convenciones, creo. Si bien algunos desarrolladores senior pueden ser buenos para adaptarse, si ninguno de ellos es probable que presente una convención, ¿dónde comenzaría un equipo? Por el contrario, puede haber algunos desarrolladores senior que son fanáticos de algunas convenciones que pueden requerir resolución de conflictos para resolver.

JB King
fuente
2

Creo que depende de las personalidades de las personas mayores. Si son arrogantes y discutidores, entonces puede ser algo malo. Pero si todos son respetuosos, abiertos a otros puntos de vista y dispuestos a aprender unos de otros, entonces tienes un gran equipo.

Actualmente trabajo en un equipo de 8, donde 5 o 6 son senior, y nos funciona muy bien. Nos llevamos bien, aprendemos unos de otros, y es un excelente entorno de tutoría para los nuevos muchachos que tenemos.

Randy Coulman
fuente
2
En mi humilde opinión, el título "senior" también transmite un nivel de madurez profesional.
bit-twiddler
Si los desarrolladores senior son arrogantes y discutidores, serán malos en cualquier equipo. Es más obvio con otros desarrolladores senior, porque saben que no deben aguantar las tonterías.
William Pietri
1

Trabajé en un equipo donde había 1 desarrollador principal, 4 desarrolladores senior y 1 desarrollador intermedio. Y debido a la razón por la que un miembro "senior" del equipo no era una persona realmente madura (aunque era un buen desarrollador), resultó ser una pesadilla. Intentó demostrar todo el tiempo (implícita o explícitamente) que otros miembros del equipo no son lo suficientemente altos. Tampoco entendió los principios básicos del desarrollo de software y los detalles de nuestro producto y, por lo tanto, arrogante y tercamente trató de demostrar que tenía razón. Como resultado, afectó seriamente la efectividad del equipo. La parte triste es que incluso no era demasiado argumento sobre ideas / soluciones, era un argumento sobre nada . Por ejemplo:

  • quién rompió la construcción (que la mayoría de las veces era verde y, técnicamente, no estaba rota. Fue la IU la que no funcionó correctamente muy a menudo debido a las pobres soluciones arquitectónicas)
  • por qué hay regresiones (los módulos no estaban cubiertos por pruebas unitarias a las que no teníamos acceso para contribuir)
  • discutiendo sobre la solución arquitectónica en el módulo, que es responsabilidad de otra persona sin saber nada sobre los requisitos y detalles del módulo.
  • ...

Pero admito que fue más bien una excepción. Quiero creer que las personas mayores se comportan correctamente la mayor parte del tiempo :)

altern
fuente
La persona que describe no es lo suficientemente madura como para ser considerada senior incluso si tenía ese título de trabajo.
bikeman868