Soy un líder de equipo con más de 5 desarrolladores. Tengo un desarrollador (llamémoslo A ) que es un buen programador, que escribe un código limpio y fácil de entender. Sin embargo, es algo difícil de manejar y, a veces, me pregunto si realmente tiene un bajo rendimiento o no.
- Nuestra compañía requiere que los desarrolladores indiquen el progreso del trabajo en el rastreador de errores que utilizamos, no tanto para monitorear a los programadores sino para mantener a las partes interesadas informadas del progreso. La cuestión es que A solo actualiza el progreso de una tarea cuando se realiza (tal vez 3 semanas después de que se trabajó por primera vez) y esto hace que todos se pregunten qué está sucediendo a mediados de la semana de desarrollo. No cambiaría su hábito a pesar de los repetidos sondeos. (Está bien, los desarrolladores odian el papeleo, yo también)
- Recientemente, de 2 a 3 meses de licencia con bastante frecuencia debido a varios eventos: o está enfermo o tiene que asistir a muchos eventos personales, etc. (Está bien, suceden cosas malas en una cadena. Es solo una coincidencia)
- Definimos sprints o hojas de ruta para cada mes. Y al comienzo del sprint, discutiremos la cantidad de trabajo que cada uno de los desarrolladores tiene que hacer en un sprint y los desarrolladores pueden establecer la cantidad de tiempo que necesitan para cada tarea . Por lo general, no podrá completarlos todos. (Está bien, los desarrolladores regularmente pierden fechas límite no debido a su culpa).
- Estoy basado en Singapur. No estoy seguro si eso importa. Sí, se sabe que los asiáticos son reticentes, pero ¿eso importa?
Si solo ocurren uno o dos de los eventos anteriores, no sentiré que A tiene un rendimiento inferior, pero todos suceden juntos. Así que tengo la sensación de que A tiene un rendimiento inferior y tal vez ... Dios no lo quiera, aflojando.
Esto es solo un sentimiento basado en mis años de experiencia como programador. Pero podría estar equivocado.
Es notoriamente difícil medir el trabajo de un programador, dado que no todas las dos tareas son iguales, y carece de un objetivo estándar para medir el compromiso de un programador con su empresa. Es francamente imposible saber si el programador está haciendo su trabajo o está aflojando. Todo lo que puede hacer es confiar en ellos: sí, confiar y darles autonomía es la mejor manera para que los programadores trabajen, lo sé, así que no comience una conferencia sobre por qué necesita confiar en sus programadores, gracias a todos mucho , pero si abusan de tu confianza, ¿puedes saberlo?
Salir:
Tengo una conversación directa con él sobre mi percepción sobre su desempeño. Estaba indignado cuando le sugerí que tenía la sensación de que no estaba actuando a su mejor nivel. Sintió que este era un sentimiento completamente injusto. Entonces respondí que este era mi sentimiento y no sabía si mi sentimiento era correcto o no. No quiso nada de esto y terminó la discusión de inmediato.
Antes de irse dijo que "trataría de dar más a la compañía" en un tono muy frío. Me sorprendió su reacción. Estoy seguro de que lo ofendí de alguna manera. Sin embargo, no estoy muy seguro de si eso era lo correcto para que yo fuera tan franco con él.
Mi pregunta es: ¿cómo puede saber si sus programadores tienen un rendimiento bajo? ¿Seguramente hay líderes de equipo de experiencia que saben mejor que yo sobre esto?
Notas adicionales:
- Odio la microgestión. Entonces, todo lo que tenemos para nuestro proceso de software es Sprint (donde las tareas se priorizan y asignan, y al final del mes, una revisión de la cantidad de trabajo realizado). Los desarrolladores requerirían actualizar las tareas a medida que avanzan todos los días.
- No hay reunión de pie, ni nada por el estilo. Principalmente porque tenemos la libertad de trabajar desde casa y todos apreciamos esta libertad.
- Aunque yo soy quien establece la fecha límite, los desarrolladores proporcionarán la estimación para cada tarea y yo decidiré, en base a la estimación, las tareas que van en un sprint particular. Si no pueden terminar las tareas al final del sprint, los empujaré al siguiente. Entonces, en teoría, uno solo puede hacer 1 o 2 tareas durante todo el sprint y luego empujar las 99 tareas restantes al siguiente sprint y aún así estará bien siempre que lo justifique, en forma de actualizaciones diarias del progreso del trabajo