el equipo a cargo del producto X no puede entregar algo que ya creé

Durante octubre/noviembre, desarrollé para el equipo con el que trabajaba una herramienta para lograr la funcionalidad "X" en un lenguaje específico. Por lo que sé, esta herramienta es reutilizable por otros equipos y tiene muchas funciones (la diseñé de tal manera que cubre muchos casos). El único inconveniente es que realmente no se integra tan bien en nuestro código base porque no está codificado en el lenguaje más utilizado. Estimo que el tiempo para portarlo a un nuevo idioma es de 1 semana como máximo.

Ahora, en el trabajo también hay un equipo cuyo alcance es, entre otros, trabajar en la característica "X". Durante octubre/noviembre, cuando estaba desarrollando mi herramienta, se suponía que reunirían los requisitos conmigo, pero en realidad nunca lo hicieron. Ahora, desde enero, tienen la tarea "oficial" de proporcionar la biblioteca "oficial" para la característica X. Tuve reuniones en las que hice una demostración de mi código, compartí la fuente, etc. y me puse a disposición si necesitaban mi ayuda para comprender el código. o integrarlo de alguna manera. Ahora que es marzo, deberían haber hecho un progreso significativo en su proyecto, que podría haber sido tan simple como "portar mi código". Sin embargo, revisé hoy y veo que básicamente no progresaron y, lo que es peor, la solución que planean hacer será extremadamente limitada. En pocas palabras, el código I'

En este punto, estoy bastante frustrado con la situación, especialmente dado que necesitamos la función "X" bastante pronto y que otros equipos dependen de que se envíe. Si el otro equipo entrega tarde un producto que es menos bueno que el que he hecho, estaré muy desmotivado.

¿Que debería hacer en esta situación? Mi opción son:

  • no hacer nada y ver en 6 meses que se crea un mal producto
  • intente portar mi código en el otro idioma y anuncie que esto existe
  • escalar esto con el otro equipo
  • escalar esto con mi gerente/el gerente del otro equipo
¿podría resaltar que la característica X es importante para su proyecto? ¿Es cierto que el problema es que no hay un código oficial de función X en este momento?
"Si el otro equipo entrega tarde un producto que es menos bueno que el que he hecho, estaré muy desmotivado": ¿por qué permite que el progreso de otro equipo en comparación con sus entregas influya en su nivel de motivación?
@aaaaaa: es algo importante para nuestro proyecto ahora, pero sobre todo será muy necesario para nosotros y otros equipos en los próximos 2-3 meses. y de hecho no hay forma oficial de ser esto ahora
@dwizum: es bastante desmotivador trabajar en un entorno en el que otros equipos no pueden hacer su trabajo. También somos clientes de lo que producen, así como varios otros equipos.
Un signo de madurez en un profesional de carrera es la capacidad de segregar sus propios resultados y el éxito de los que le rodean. Sí, todos necesitamos trabajar en equipo y depender de los demás, pero si solo puedes mantenerte motivado cuando todos los demás en la empresa tienen un desempeño excelente, te encontrarás constantemente desmotivado, porque en el mundo real, ese lindo muchas cosas nunca suceden. En otras palabras, encuentra tu propia felicidad, incluso en un entorno imperfecto.

Respuestas (3)

Hable con su gerente.

Esto es escalones por encima de ti. Has intentado ayudar al otro equipo. No han aprovechado la ayuda. Su capacidad para hacer cosas a través del otro equipo será limitada, y tratar de hablar con sus gerentes tiene muchas posibilidades de fracasar. No debe simplemente no hacer nada, porque la empresa podría beneficiarse significativamente de su código. Al mismo tiempo, juzgar la productividad del otro equipo (aunque sea con precisión) no es su trabajo. Todo esto se ha elevado a un nivel de política de oficina que está por encima de ti, y eso significa que es hora de pasar la responsabilidad al nivel político por encima de ti en la oficina.

Siéntese uno a uno con su gerente, explique la situación de la manera más simple y directa que pueda y, en la medida de lo posible , omita cualquier juicio sobre el otro equipo o su trabajo que no pueda respaldar directamente. evidencia fáctica. Luego deje que él (o ella) lo maneje (posiblemente escalando a su jefe).

Esto bien puede resultar en una tarea de una semana para convertir su código, y eso es ciertamente algo que puede ofrecer hacer en su conversación con su gerente, pero no es algo que deba hacer sin obtener el visto bueno a menos que generalmente le den una enorme margen de maniobra sobre qué tareas asumir.

No estoy de acuerdo con la respuesta de Ben aquí y digo que este es un problema que debe tratar de resolver acercándose al equipo en cuestión antes de seguir escalando.

Como usted es un usuario clave del código que están (supuestamente) escribiendo, está en condiciones de describir los impactos en cadena en sus entregables. Debe asegurarse de que sean 100% conscientes de estos impactos. En un mundo ideal, estarían de acuerdo en realizar las mejoras que desea, por lo que comenzaría describiendo los problemas por escrito y ofreciendo su ayuda para implementar estas mejoras. Un simple correo electrónico como el siguiente debería ser suficiente.

Hola [MIEMBRO DE OTRO EQUIPO],

Me acabo de enterar de los planes más recientes para implementar 'X' y me preocupan los efectos colaterales de la falta de funcionalidad 'Y'. Planeé usar 'Y' cuando llegue el momento de implementar la función 'Z' en mi final. La falta de esta función provocará retrasos en el producto final, ya que tendré que producir una solución alternativa.

También me preocupa que si 'X' no puede lograr un tiempo de ejecución de menos de 'N' segundos. Nos esforzaremos por alcanzar el objetivo de rendimiento 'T'. La implementación en 'Idioma original' logró un rendimiento de 'Na' segundos. ¿Hay alguna forma de mejorar este rendimiento? Estaría encantado de explicarle algunos de los métodos que utilicé para lograr este nivel de rendimiento en el "idioma original".

Si sería útil, ¿podríamos reunirnos para discutir más a fondo?

los mejores deseos, descartable

Una vez que hayan sido conscientes de las consecuencias de la falta de funciones o el bajo rendimiento, es de esperar que estén abiertos a revisar el plan; si no lo están, debe plantearlos como riesgos del proyecto a través de los canales habituales del proyecto. Si no tiene la autoridad para hacerlo usted mismo, debe escalar a su gerente para que tome medidas en su nombre.

Finalmente me haré eco del consejo de Ben de no juzgar el desempeño del otro equipo.

El otro equipo tiene la responsabilidad de considerar los costos de mantenimiento, así como la implementación inicial. Es posible que hayan considerado que su solución completa es más complicada de lo que realmente se necesita.

Si su objetivo es llegar a la X más simple posible en su idioma preferido, tendrían dos rutas: adaptar y desmontar su código, o construir desde cero. Eligieron el segundo enfoque. Si tenían razón o no, es su decisión, no la tuya.

Dicho esto, puede pedirle a su gerente que realice un seguimiento de las funciones y el estado para asegurarse de que entregarán la funcionalidad requerida en la fecha programada.

Por mucho que me gustaría ser optimista, está bastante claro que nunca deben entregar a tiempo