código vaquero en el equipo

15

¿Cómo lidias con un miembro del equipo que es senior para ti y siempre salta a los proyectos de otras personas y los completa durante la noche o durante el fin de semana? Parece que trabaja 80 horas a la semana, ya sea que haya una emergencia o no, y es algo difícil predecir qué parte de su lista de tareas pendientes atacará a continuación. A veces se desperdician días de su trabajo porque el lunes por la mañana encuentra un registro que completa el proyecto en el que ha pasado la mayor parte de la semana anterior trabajando.

Para las personas que preguntan por la calidad: por lo general, es bastante buena, pero: también existe una gran refactorización del código, incluido el código 'propiedad' de otros miembros del equipo, sin tener en cuenta la cobertura de la prueba, con los resultados obvios.

MK01
fuente
51
¿Qué tal si me das sus detalles y veré qué puedo hacer para que mi compañía la saquee?
Kevin D
77
@ MK01, ¿Qué tal algo así como: "Nos encantan las contribuciones que ha estado haciendo, pero nos gustaría discutir formas en que podamos segmentar claramente el trabajo. Si podemos aprovechar su codificación con la del resto del equipo, probablemente pueda hacer esto aún más rápido de lo que estamos ahora ". Una gran clave es esta: hacerla sentir que fue ella quien tuvo la idea.
riwalk
77
Relájate y espera hasta que se quemen.
Steven Evers
99
Parece que puedes planear más tiempo SO los lunes por la mañana.
JeffO
3
Lo que no nos ha dicho es la calidad de su código. ¿Se está adelantando a otras personas con soluciones de la misma calidad, mayor o menor?
David Thornley

Respuestas:

17

Este es probablemente en parte un problema de transparencia; Es probable que no intente perder el tiempo. Hablaría con la gerencia para que las tareas en las que las personas están trabajando sean más claras, para que pueda darse cuenta más fácilmente de que alguien ya ha invertido tiempo en esa tarea y pueda ver qué tareas no se reclaman, enfocando sus esfuerzos en ellas.

No la confrontaría directamente sobre esto. Hablaría con su gerente, para que se pueda implementar algún proceso. Si bien el problema probablemente sea más visible con ella, apuesto a que hay otros compañeros de equipo que están haciendo lo mismo (comenzando accidentalmente en proyectos en los que alguien más ya está trabajando) en menor escala. Creo que su gerente está en la mejor posición para guiar este nuevo proceso, aunque probablemente debería darle algunas ideas para trabajar. Si trabajar con su gerente no funciona, entonces debería pasar a hablar con ella directamente, pero yo comenzaría con el gerente.

Nuestro equipo se ocupó de este problema colocando notas adhesivas con todo el trabajo que había que hacer en una pizarra blanca. Cada miembro del equipo tenía una etiqueta con su nombre, y movía la nota adhesiva que estaban trabajando a la columna "en progreso" y la etiquetaba con su nombre. Si otra persona quería ayudar con esa tarea, se esperaba que discutieran y negociaran con la persona que había reclamado la tarea. Un sistema similar podría ayudar mucho con sus problemas.

Ethel Evans
fuente
17

Asumiendo que ella es realmente eficiente, y "el gato de todos los oficios" ...

Abraza su estilo. Destrabarla . Y - aislarla.

También...

Sea explícito con las responsabilidades que confía.
Asegúrese de que su equipo aprenda de ella (por ejemplo, la programación en pareja funciona excelente).
No vaya "all-in" - pruébela y asegúrese de tener un plan de respaldo si las cosas empeoran.

Lo peor que puedes hacer es arruinar su motivación.


Lo digo desde mi propia experiencia. Puede que no sea tan eficiente como me gustaría, pero ciertamente puedo ir desde la interfaz de usuario hasta la persistencia y ciertamente estoy practicando la codificación de vaquero (que seguramente es una espada de doble filo).

Me lancé a un proyecto bastante desesperado solo (hice las cosas aún más divertidas, propuse reescribirlo todo y obtuve una aceptación de eso), las cosas van bien y me encanta. No hay nadie a quien culpar por los errores excepto a mí mismo. No hay nadie a quien quejarse cuando espontáneamente decido refactorizar un poco de todo.

En realidad, esta libertad es como la única razón por la que todavía estoy trabajando aquí.

Arnis Lapsa
fuente
9

Creo que hay peores problemas que tener. Sin embargo, el trabajo que usted (u otros miembros de su equipo) deben tener en cuenta, y parece que los resultados de su trabajo eliminan efectivamente una contribución que una persona hizo al equipo.

Supongo que no se da cuenta del efecto que está teniendo en el equipo; más bien, las contribuciones que está haciendo probablemente la hacen sentir valiosa para el equipo.

La solución (en mi humilde opinión): confrontarla directamente. Por supuesto, sé diplomática y aprecia las contribuciones y los sacrificios que hace (80 horas es una semana de trabajo más que loca, y no podría suceder sin un sacrificio escandaloso en su vida personal).

Pero es su responsabilidad comportarse de una manera que no aleje a sus compañeros de trabajo, junior o de otra manera. Y todos en el equipo merecen sentir que sus esfuerzos son significativos, después de todo, ¿por qué alguien querría ir a trabajar todos los días si su presencia no tiene sentido?

Tim Claason
fuente
Después de mirar el perfil de OP en SO / SE, me veo obligado a mirar el otro lado de la moneda. Si fue el senior haciendo esto intencionalmente o no, definitivamente es malo por las razones que Tim mencionó. También debido al punto básico de no dejar que los junior crezcan / se desarrollen. Solo cuando los junior se vuelven lo suficientemente mejores como para reemplazarlo, el espectáculo puede continuar incluso sin su presencia. Entonces +1
Aditya P
9

¡Considera darle mucho más trabajo para que no tenga que buscar el tuyo!


fuente
6

¿Es posible que esté "entrando y terminando" porque el resto del equipo se mueve demasiado lento o porque el jefe se lo pidió?

¿Cuánto de esto es molestia por ser ignorado, y cuánto es simplemente "mostrarse" por un codificador más prolífico (no necesariamente mejor)?

Steven A. Lowe
fuente
4

¿Sabe ella que otras personas encuentran esto molesto? Sugeriría con tacto mencionarlo con ella, diciendo que preferirías terminar tus proyectos. Si esto no funciona, o si se siente incómodo hablar con alguien de alto nivel, es un caso de gestión. Si no está completando proyectos porque ella lo está, puede parecer que está disminuyendo si el gerente no conoce la situación.

Además, como otros han dicho también, mira cómo ella trabaja para mejorarte. Mire sus registros para ver cómo resolvió su problema; tal vez fue una solución inteligente que no habría pensado en usted. Tenga en cuenta que los desarrolladores senior conocen la base de código mucho más íntimamente que usted. Las cosas que les parecen triviales en realidad pueden ser difíciles de descubrir para los desarrolladores más nuevos.

Michael K
fuente
77
Cualquiera que trabaje 80 horas a la semana en programación es probable que tenga un poco de habilidades sociales.
David Thornley
4

¿Cómo lidias con un miembro del equipo que es senior para ti y siempre salta a los proyectos de otras personas y los completa durante la noche o durante el fin de semana?

¿Trabaja mas rápido?

Parece que trabaja 80 horas a la semana, ya sea que haya una emergencia o no, y es algo difícil predecir qué parte de su lista de tareas pendientes atacará a continuación.

Por definición, si está en su lista de tareas pendientes, no está hecho. Si ella lo completa, tache de su lista de tareas pendientes.

A veces se desperdician días de su trabajo porque el lunes por la mañana encuentra un registro que completa el proyecto en el que ha pasado la mayor parte de la semana anterior trabajando.

Eso normalmente se llama trabajo en equipo: a menos que no te guste la dirección que tomó, ¿cuál es el problema?

Para las personas que preguntan por la calidad: por lo general, es bastante buena, pero: también existe una gran refactorización del código, incluido el código 'propiedad' de otros miembros del equipo, sin tener en cuenta la cobertura de la prueba, con los resultados obvios.

"Propiedad" y el código no van juntos. Si tiene problemas para mantenerse al día, pídale que se lo explique. Pídele que te guíe, ya que parece que es bastante productiva. Aproveche la relación y trabajen juntos.

En cuanto a la cobertura de la prueba, si ese es un estándar en su organización, mencione a su líder / gerente. Rápido, pero de mala calidad, el trabajo no sirve a nadie. Sin embargo, si ella es 10 veces más productiva que usted, puede terminar haciendo el trabajo duro de limpiar después de ella. Si ese es el caso, invierta aún más en una relación con ella.

Mark Brackett
fuente
Suena como el miembro del equipo ideal ... Ella está dejando claro lo que ella ha trabajado en / acabado, que está ayudando a cada miembro del equipo, etc ..
Augurio
3
  • Aprende de ella y trata de mejorar tu velocidad de trabajo.
  • Puede existir la posibilidad de que su trabajo esté retrasado.
  • Podría haber más cosas detrás de escena o por encima de su conocimiento sobre la base de las expectativas de la gerencia de ella, ya que ella es mayor.
  • Podrías pensar que ella podría no tener nada mejor que hacer, a menudo esto es poco probable.
  • Es posible que no esté al tanto de una emergencia.
  • Puede ser un indicio de su desempeño, ya sea por parte de la gerencia o del personal directivo.

De cualquier manera, es mejor que comience a evaluarse a sí mismo primero. Como sus esfuerzos para "tratar" con ella podrían no funcionar bien con la gerencia.

Aditya P
fuente
3

Claramente obtiene su satisfacción de resolver problemas y ser el héroe, lo cual está bien, pero usted necesita (bueno, el liderazgo de su equipo, pero mientras tanto) encontrar una manera de aprovechar eso.

Las cosas clave me saltan a la vista:

  • Ella tiene el talento para hacer el trabajo más rápido que otros (no implicas nada acerca de que su código sea malo)

Así que aprovéchalo. En su próximo proyecto, ofrézcale un trabajo por adelantado. De esa manera sabes lo que está planeando hacer. Si su satisfacción proviene de resolver problemas, es probable que esté tan feliz si se la ofreces como si lo hiciera en el fondo.

Tal vez vaya uno mejor, formalícelo, ya que un equipo realiza un trabajo que está en juego para cualquiera que quiera hacer más, de esa manera el elemento de robo desaparece y todos ganan.

Stephen Bailey
fuente
1
Si lees los libros de DeMarco, verás que hay una relación de 10: 1 entre la cantidad que los desarrolladores buenos y los no tan buenos pueden producir. Lo último que quiere hacer es paralizar al atípico que hace más que otros, necesita aprovechar esa energía y dirigirla hacia donde sea más beneficioso.
rápidamente_abr
2

Comience el equipo haciendo programación de pares.

En primer lugar, la programación de pares es agotadora, especialmente para los desarrolladores introvertidos que les gusta trabajar todo el fin de semana solos. Sus fines de semana serán valiosos para la relajación, como deberían ser.

En segundo lugar, transmitirá conocimientos (siempre y cuando más desarrolladores novatos estén conduciendo) y, por lo tanto, extienda sus asombrosas habilidades al resto del equipo.

En tercer lugar, estará reduciendo el riesgo masivo que actualmente lleva en su nombre, de modo que más de un miembro del equipo sepa lo que sabe.

Cuarto, ella y el resto del equipo tendrán una mejor idea de en qué se está trabajando. Si puede combinar esto con completar funciones completas como equipo, habrá menos trabajo en progreso y menos posibilidades de que el trabajo se duplique antes del check-in.

Quinto, ella aprenderá a jugar como parte de un equipo . Es completamente posible que la desmotivación que provoca, junto con la duplicación del trabajo de otros miembros del equipo, esté costando más de lo que ella está produciendo. Productividad! = Efectividad.

Sexto, la calidad del código generalmente aumenta cuando los desarrolladores se emparejan. Un buen efecto secundario.

Lunivore
fuente
1

¿Sabe ella qué trabajo están haciendo las personas y su progreso? ¿Podría la gerencia proporcionarle dirección para que no esté duplicando el trabajo de otras personas? Me sentiría tentado a sugerirle tener una conversación 1: 1 antes de incorporar a la gerencia, ya que tal vez ella es solo una adicta al trabajo que podría usar la dirección de saber qué cosas podrían ser importantes que otros no están haciendo y que podrían ser muy útiles para ella. hacer.

En cuanto a su trabajo desperdiciado, mírelo desde otras perspectivas. ¿Qué podrías aprender de lo que hiciste? ¿Qué partes no hiciste y cómo las hizo? Solo porque alguien más pueda tomar el crédito por hacer algo, no piense que toda la sangre, el sudor y las lágrimas son en vano.

JB King
fuente
0

El vaquero parece entusiasmado. Me acercaría a la gerencia para que puedan darle un montón de trabajo y dejar que ustedes hagan sus propias cosas. Sin embargo, tal vez puedas aprender una o dos cosas del vaquero. No digo que 80 horas de trabajo por semana sean la norma (obviamente, esto es una exageración), pero poner horas extra en el trabajo es bastante normal en un entorno corporativo grande.

Brian
fuente
55
Poner largas horas de programación es generalmente contraproducente a largo plazo.
David Thornley
@David: No si te entregan cada dos viernes :)
Brian
2
@ 0A0D: Eso es flexible, no "poner horas extra en el trabajo"
Carson63000
3
@OAOD: Cualquier tienda en la que las personas trabajan horas extras regulares no compensadas es una tienda de sudor.
bit-twiddler
@ bit-twiddler: ¿Nunca has oído hablar de empleados asalariados?
Brian