¿Cómo manejo a un compañero de trabajo senior que rompe cosas en mi parte del proyecto y me culpan a mí?

Uno de mis colegas, que es desarrollador senior con 5 años en la empresa, trabaja en cosas de las que soy responsable, pero generalmente termina rompiendo cosas. Me culpan porque soy responsable de esta área.

Recientemente, negó totalmente nuestra reunión 1-1 sobre los temas que le planteé. Después de 2 días de espera, pensando que me notificarían, me dijeron que consultara a nuestro gerente, quien me dijo que esos problemas son suyos y no míos.

Él escribe en su ticket de JIRA, "las pruebas de regresión introdujeron un error/problema, si está ocupado, puedo solucionarlo". Romperá cosas mientras le doy el código en condiciones de trabajo, sin consultarme ni preguntarme. Los temas que presenta son auditados antes de que yo pueda verlos.

¿Cómo puedo asegurarme de que este desarrollador senior no siga rompiendo cosas, que terminan convirtiéndose en mi responsabilidad?

¿Para qué FUERON contratados? Esta pregunta parece carecer de roles/responsabilidades para los involucrados, lo que dificulta entender de qué se trata. Por favor proporcione un poco más de contexto.
Parece que tenía prisa al publicar esto y su pregunta es difícil de analizar y parece inconclusa. ¿Puede editar esto para mejorar el texto, identificar una sola pregunta central y aclarar la dinámica del equipo? ¿Quién es esta persona para ti? ¿Cuáles son sus respectivos trabajos?
¿Las pruebas de regresión descubrieron problemas en los cambios de Tarzán? Si es así, comience diciendo "sus últimos cambios rompieron esta prueba de regresión; ¿podría echarle un vistazo?".
¿Tiene un control de versiones para que cualquiera pueda ver quién registró las cosas? Me importa menos si alguien rompió mi código si a) puedo revertirlo fácilmente yb) todos pueden ver que otra persona rompió ese código.
@Lilienthal Edité la Q ahora.
@Nebr Sí Fue verificado por el Sr. Tarzán que quiere ser.
Sugiero ajustar su tono aquí. Insultar a los compañeros de trabajo está mal visto en todas partes, incluido este sitio. Cíñete a los hechos si puedes y trata de evitar los juicios personales, incluso si no lo soportas. /// Tu publicación aún no está clara para mí. ¿Seguramente las pruebas de regresión están destinadas a encontrar errores que el control de calidad o el uso productivo no han descubierto (todavía)? Debido al tono utilizado, no puedo decir si este tipo realmente está introduciendo errores en su propio código y rompiendo cosas que solían funcionar, o si simplemente está molesto porque está obteniendo trabajo extra porque está encontrando cosas rotas que simplemente no se han derrumbado todavía.
@Lilienthal Creo que lo que frustra al OP es que el Sr. Tarzán está realizando cambios en el código frontal sin preguntar y, por lo tanto, presenta errores. Luego, estos errores se fijan en el OP y OP quiere saber una forma educada de pedirle al Sr. Tarzán que no lo haga.
Esa es una interpretación e incluso entonces necesitaríamos averiguar qué tipo de relación tienen estas personas y si se supone que "Tarzán" está haciendo cambios. El hecho de que necesitemos un escenario claro es la razón por la que generalmente cerramos preguntas como esta como poco claras antes de que lleguen las respuestas, ya que las personas generalmente terminan respondiendo cosas muy diferentes, lo que va en contra de la filosofía de preguntas y respuestas.

Respuestas (2)

Para el tema de que él niegue lo que acordaste, hazlo por escrito :

  • Ponga cualquier reunión en sus dos calendarios o prográmelas por correo electrónico
  • Tome notas durante la reunión y envíele un resumen de la reunión, por ejemplo:

    Como se discutió en nuestra reunión de hoy...

    Por favor, señale cualquiera de estos detalles que sean incorrectos.

Tanto para lo anterior como para lo siguiente, no confíe en la comunicación verbal, ya que es fácil de negar; es un buen punto de partida (ya que es más fácil aclarar las cosas rápidamente), pero debe hacerlo por escrito después.

Para el tema de él rompiendo cosas:

  • Use el control de fuente : esto debería darle un registro de papel adecuado para respaldar su caso.

    • ... con pruebas automatizadas : las pruebas se realizan después de cada confirmación y se envían correos notificando a todos sobre las pruebas fallidas. Va a ser difícil para él echar la culpa si la prueba falla después de su compromiso. Si dice que "las pruebas introducen errores", esto es algo que deberías hacer retroceder, por ejemplo:

      ¿Puedes explicar qué quieres decir con esto? Las pruebas no cambian el código y, por lo tanto, no pueden introducir errores.

  • Revertir sus cambios (si no lo arregla o al menos lo reconoce):

    Revertí el cambio X que comprometiste, ya que rompe Y, asegúrate de que las pruebas pasen antes de enviar cambios a nuestro control de código fuente.

  • Señala sus errores graves : si no te consulta o no sigue lo que dijiste, envíale un correo como:

    Acabo de ver su cambio X. Esto no sigue lo que acordamos en nuestra reunión en la fecha Y debido a la razón Z. [Lo revertí / Lo arreglé / Por favor arréglenlo.] Por favor consulte nuestras notas de la reunión antes de hacer cambios en futuro.

  • Gestión de CC en su caso.

  • Si estos pasos no ayudan, hable con la gerencia para señalar instancias problemáticas específicas (con pruebas que lo respalden), mencione cómo ha tratado de resolver esto con su compañero de trabajo hasta el momento y pregúntele cómo le gustaría que lo manejara. este.

+1 solo por este " consíguelo por escrito ". Esto es bueno para todos los involucrados en una situación como esta, no solo para cubrir el botín.
Así que haré lo que dijiste. Tengo una reunión con él, que es más o menos lo mismo que le dije otro día. ¿Debería hacerle saber que estas son las mismas cosas que te dije antes y que no recuerdas o algo que lo avergüence?
@Nofel Si tiene las instancias anteriores por escrito o hizo un gran alboroto al respecto antes, puede mencionarlo (una forma de intensificar, preguntarle cómo hará las cosas de manera diferente esta vez, no para avergonzarlo). Si no es así, podría ser mejor empezar de cero (es decir, no mencionar que le dijiste eso antes).
@Nofel Si tiene las instancias anteriores por escrito o hizo un gran alboroto al respecto antes, puede mencionarlo (una forma de intensificar, preguntarle cómo hará las cosas de manera diferente esta vez, no para avergonzarlo). Si no es así, podría ser mejor empezar de cero (es decir, no mencionar que le dijiste eso antes).
Él lo ha escrito, no yo. Pero quiero recordarle que discutimos y seguramente esta tarea podría ser pequeña pero le dio una mala imagen a mi nombre. (Literalmente, el gerente me preguntó por qué no funciona y le dije que fue cuando se lo di). Sé cómo solucionarlo, pero quiero que recuerde que, una y otra vez, no perdonaré su error.
@Nofel, nunca lo arregles. Revertirlo y hacer que él lo arregle o seguirá cometiendo los mismos errores.

Recientemente, las cosas se han acelerado un poco cuando negó totalmente nuestra reunión 1-1 sobre los problemas que le planteé.

Una de las cosas que he aprendido de la manera difícil (y este es mi primer trabajo) es que las personas pueden y hacen flip-flop cuando están bajo presión. Así que es imperativo que te asegures de tener las cosas por escrito. Por ejemplo: envíele un correo electrónico solicitando una hora para programar una reunión en la que discuta los problemas y luego actualice los boletos de JIRA para reflejar lo mismo.

Por ejemplo,

Después de discutir el PROBLEMA-003 en nuestra reunión, decidimos manejarlo cambiando los datos enviados al backend. Anteriormente enviamos a fulano de tal y ahora estamos planeando enviar a fulano de tal.

Ahora lo que entiendo es:

  1. Ha estado en la empresa más tiempo que tú.
  2. No es un "tipo de front-end" y quiere entrometerse con el código.

Con este fin, lo que sugiero es tener un proceso en el lugar donde todo el código de interfaz que entra en la rama maestra se prueba por regresión antes del lanzamiento del cliente. Si aún no está allí, tendrá que implementar al menos un proceso muy rudimentario para su seguridad. Si se cambió el código y no lo hiciste tú, las confirmaciones de Git te salvarán. Ellos nunca mienten.

Además, debe asegurarse de que el error no esté en la parte delantera. ¿No se adhirió al contrato de la API, por ejemplo, o cambió sin que usted lo supiera? Asegúrese de que todo esto esté bien documentado y sin ambigüedades.