¿Cómo puedo manejar a alguien de cerca, pero todavía con gracia?

Estoy trabajando para una empresa de consultoría de TI. Mi empleador me emplea para trabajar para su cliente en una posición de líder de equipo.

En mi equipo hay un miembro del equipo ("A") que me reporta. Trabaja para un empleador diferente. El cliente subcontrató el desarrollo de la interfaz específica al empleador de A y A está liderando el desarrollo y la entrega de esa interfaz que se utiliza como interfaz de usuario web para la comunicación del servicio web. El cliente ha posicionado el papel principal para toda la aplicación web. A está liderando a otro miembro que trabaja desde el extranjero (India).

Se le asignó trabajo hace dos semanas y no hay progreso sustancial de su equipo en ese trabajo. Solo nos queda una semana más para completar la pieza, de lo contrario, esta pieza se convertirá en un cuello de botella para otros equipos y causará retrasos en la entrega de mi parte.

Cuando se asignó, como él también es un líder, le di la dirección y luego lo dejé. En la primera semana, sin embargo, no hubo progreso. Mi gerente me alertó sobre esta falta de progreso y ya habló sobre los retrasos y las razones de su parte y me pidió que me enfocara especialmente en este líder y su equipo. Me doy cuenta de que mi gerente no confía en él y siente que este tipo no está haciendo su trabajo correctamente y no está contribuyendo.

En la segunda semana, observé de cerca a A y su trabajo. A continuación están mis observaciones.

  • Asiste a todas las reuniones comerciales y de requisitos, pero no transfiere ese conocimiento al miembro de su equipo que trabaja en el extranjero. Hay muchos vacíos de conocimiento en su equipo sobre los requisitos y el trabajo.
  • Cuando le pido que se asegure de que el componente que desarrolla se adapte a la mayoría de los escenarios comerciales y que haga pruebas básicas de unidad y cordura en esos escenarios, me dijo que su equipo no conoce ningún escenario comercial. Dijo que el equipo de UI o yo mismo o alguien más debería probar esos escenarios comerciales e informarles los problemas, y ellos los solucionarán. La única razón por la que nosotros (mi gerente y yo) participamos en la reunión fue para brindarle conocimientos comerciales. Por lo tanto, me tomé el tiempo y traduje todos los requisitos comerciales en casos de uso que su equipo puede comprender y probar.
  • Después de revisar los entregables de su equipo (él firma y me envía esos entregables), descubrí que la revisión básica no se había realizado.
  • Tenemos una reunión de Scrum todas las mañanas, todas las mañanas solía informar que las entradas del equipo de servicio no eran adecuadas, hay problemas con el servicio y, por lo tanto, envía correos electrónicos a los propietarios del servicio y espera su respuesta. Últimamente observé que no está leyendo a fondo los documentos de entrada enviados por el equipo de servicio. Simplemente navega por las partes requeridas como la URL del servicio, el formato de solicitud de ejemplo e intenta probar el servicio. No está revisando el documento detenidamente ni comprende cada uno de los parámetros necesarios para el servicio. En 2 de cada 3 casos cada pregunta que hizo, el equipo de servicio responde que la respuesta ya está disponible en el documento. Incluso si respondí tarde, descubrí que la respuesta realmente está disponible en el documento mismo.

Al final de la segunda semana, comencé a tener la misma sensación de que él no estaba contribuyendo mucho y simplemente delegando trabajo a su miembro del equipo en el extranjero y luego enviándome los resultados. He discutido esto con mi gerente. Mi gerente me sugirió que lo manejara de cerca.

¿Cómo puedo hacer esto con gracia sin dar lugar a sentimientos negativos en el equipo?

"Dijo que la primera milla se logrará el fin de semana" Esa es una especie de bandera roja en Scrum. Si cree que la primera tarea tardará una semana en completarse, entonces la tarea no se ha descompuesto lo suficiente. Y cuando las tareas no se han desglosado a fondo, la complejidad oculta lo morderá y los plazos no se cumplirán. Debería poder alcanzar un nuevo hito cada día (o dos, como máximo).
Y también, ¿cuál es la relación exacta aquí? Usted dice que el líder del equipo tiene un "contrato de subcontratación con su empleador". ¿Su empleador no es el mismo que su empleador? Parece que tal vez sea el punto de contacto de un subcontratista que su empleador ha contratado, ¿quién ha subcontratado el trabajo a algunos desarrolladores extranjeros? La subcontratación causa sus propios problemas y puede requerir un enfoque diferente que si usted, el líder del equipo y los desarrolladores trabajaran para el mismo empleador.
@aroth, la pregunta ha sido actualizada
@BVR ¿Por qué eliminó la información adicional de su pregunta?
@starsplusplus, después de agregar esa información, recibo votos negativos y votos cerrados. Y los usuarios que votaron ni dejaron el motivo. Supongo que la información adicional no agrega valor y, por lo tanto, he eliminado
¿Qué dice el contrato? Su contrato debe especificar los productos de trabajo que se supone que debe entregar el empleador del miembro del equipo A. ¿Su contrato incluye un plan de prueba? ¿Procedimientos de prueba? ¿Revisiones hechas por colegas? ¿Cronograma? ¿Documentación de requisitos? ¿Quién hace qué pruebas? Proceso de cualquier tipo? Solo puede exigir que el empleador de A haga lo que está en el contrato. Según su descripción, parece que nada de esto se definió específicamente. Lo que sea que te den es lo que obtienes y negocias mejor los detalles del contrato en el próximo proyecto. El postor más barato no suele terminar costando menos.

Respuestas (2)

Parece claro que su equipo necesita una mejor metodología de desarrollo. Sin embargo, es poco probable que la microgestión le proporcione los resultados que desea. Las personas inteligentes (que generalmente son los desarrolladores) odian ser microadministrados y pueden pelear contigo en cada paso del camino.

Sugeriría tomar prestada una página (o dos) de Scrum/prácticas de desarrollo ágil. En particular, hay al menos un par de cosas que parecen ayudar en su situación:

  1. Comience a realizar reuniones diarias de pie con su equipo. Manténgalos relativamente temprano (por ejemplo, a las 9:30 a. m. si la gente suele llegar alrededor de las 9:00) y manténgalos rápidos y enfocados en el tema. Cada miembro del equipo puede decir 1) en qué trabajaron/lograron durante el día anterior, 2) en qué trabajarán hoy y 3) si hay algún obstáculo que les impida realizar sus tareas. Esto no debería tomar más de 10 a 15 minutos cada día, y llevar a cabo estas reuniones le permitirá ver que el progreso se está retrasando antes de que haya transcurrido una semana completa. Y le darán más visibilidad sobre exactamente por qué se está retrasando el progreso.

  2. Haga que todas las partes interesadas/"cerdos" asistan a todas las reuniones relacionadas con el negocio/requisitos. No es suficiente apropiado traer solo al líder del equipo; él no es el único con un interés creado en el proyecto. Y no solo por los problemas que ha resaltado, sino porque cuantos más desarrolladores traiga a estas discusiones, es más probable que 1) obtenga estimaciones precisas sobre el alcance de cada requisito y 2) detecte cualquier problema o trampa en los requisitos antes de que se conviertan en problemas graves. Por supuesto, también resuelve el problema del líder del equipo que no transmite los requisitos al equipo.

En general, también pareces estar descargando cosas sobre el líder del equipo que deberías usar herramientas automatizadas y otros procesos para tratar.

Por ejemplo, ¿por qué es él responsable de revisar personalmente todos los entregables (por lo que supongo que quiere decir "código fuente")? ¿Por qué no hacer que su sistema de control de versiones envíe un correo electrónico de revisión de código automatizado cada vez que se envíe un cambio a todo el equipo y hacer que todo el equipo sea responsable de la revisión y la calidad del código?

¿Y por qué no hay una cartera de proyectos u otra construcción a la que puedan acceder todos los miembros del equipo y que contenga los casos de uso relevantes en un formato claro y fácil de entender? Espera que el líder del equipo entienda, recuerde y comunique todo esto, además de todo lo demás que está tratando de hacer (y si tuviera un depósito central para esta información, tendría una refutación fácil para el equipo). comentario del cliente potencial "¿qué escenarios comerciales?"). Así que realmente solo tienes que culparte a ti mismo si las cosas comienzan a quedarse en el camino. Un cerebro humano es una de las peores soluciones para el problema de almacenar grandes cantidades de información, con precisión, durante mucho tiempo.

¿Y por qué el equipo no tiene una definición clara de "hecho" que incluya "no se realiza ninguna tarea hasta que cualquier código relacionado esté cubierto por la unidad/web/integración/cualquier prueba"?

Entonces, lo que creo que tiene es una serie de problemas de proceso, posiblemente exacerbados por algunas malas decisiones de gestión (poner todo en manos del líder del equipo, no incluir a todo el equipo en las reuniones relevantes para el proyecto, etc.). Es poco probable que una gestión más deficiente, en forma de microgestión del líder del equipo, resuelva el problema. En su lugar, arregle los problemas del proceso.

+1. Dices que estás haciendo stand-ups, pero "estará hecho para el final de la semana" no es lo que hiciste ayer o lo que harás hoy: presiona para obtener más detalles. Suena como un caso de Scrumbut.

Si usted es un líder de equipo o un gerente y no quiere parecer el malo cuando sea necesario, entonces probablemente esté fuera de lugar como líder de equipo o gerente. Repasemos lo que está en juego: si no hace su trabajo, que es transferir el conocimiento a su subordinado en tiempo y forma, y ​​asegurarse de que las tareas asignadas se completen por todos los medios necesarios, un plazo clave está a punto de cumplirse. destrozado: no es bueno para su organización, y tendrá un alto perfil en la organización, será el chivo expiatorio: no es bueno para usted.

Su gerente le asignó la tarea de supervisar a su colega, lo que en este caso significa que su colega entrega los entregables de una manera aceptable para usted. Es su prerrogativa rechazar aquellos de sus entregables que no estén en condiciones aceptables y escalar el problema de su falta de cooperación a su gerente. Le sugiero que haga un uso agresivo de esta prerrogativa, porque cualquier trabajo que él no haga terminará en su regazo. Sin tiempo de sobra.

Aclare a su colega lo que se supone que debe saber. Si no lo sabe, déjele absolutamente claro que lo que sabe o no sabe sobre lo que se supone que debe saber es su problema, no el suyo. Que no te importa cómo y cuándo lo aprende mientras lo sepa, y lo sepa y use lo que sabe en el momento oportuno.

Aclare a su colega lo que se supone que debe hacer. Si se supone que debe probar contra los escenarios comerciales, entonces eso es lo que se supone que debe hacer. Déjale en claro que rechazar la responsabilidad hacia ti NO es una opción.

La gestión es una combinación de suelto y apretado. Quieres estar suelto con las cosas que no importan tanto. Quieres ser estricto con las cosas que importan, y realmente estricto con las cosas que realmente importan. Lo que realmente importa es que la ventana de tiempo se esté cerrando rápidamente y que su colega entregue lo que se supone que debe entregar antes de que se cierre la ventana de tiempo. Lamento decirlo, pero tienes que romper ese marco de referencia cómodo/conveniente en el que está operando y encender una hoguera debajo de su trasero.

Comentario de seguimiento de @HLGEM "Dado que este tipo trabaja para un empleador diferente, me aseguraría de que su jefe en su empleador esté copiado en los correos electrónicos que discuten problemas de rendimiento".

Dado que este tipo trabaja para un empleador diferente, me aseguraría de que su jefe en su empleador esté copiado en los correos electrónicos que discuten problemas de rendimiento.
@HLGEM Incorporé tu comentario en mi respuesta con la atribución completa a ti, por supuesto :)