Me uní a un equipo de alrededor de cinco desarrolladores que construyen un sitio web basado en microservicios, en una tienda que enfatiza la autonomía y el aprendizaje. Sin embargo, resulta que uno de los desarrolladores está escribiendo "sus" partes en su nuevo idioma favorito, X 0000-.
No nombraré X para evitar discusiones religiosas, sino que enumere por qué estoy preocupado:
- X es nuevo, relativamente oscuro y parece más dirigido a escribir utilidades de línea de comandos, no API de servicios web
- está evolucionando rápido, aparentemente Al documentar algún código antiguo, se eliminó alguna funcionalidad básica, no se compilaba en versiones más nuevas, por lo que tardó un par de días en volver a implementarlo.
- Parece que hay poca técnica anterior sobre cómo abordar una tarea determinada en X. Una próxima solicitud es agregar búsquedas a los puntos finales de la API. No tiene idea de cómo hacerlo, admitió felizmente que cada punto final se implementa de manera diferente y "podría volver a escribir todo". Me gusta su actitud positiva, pero ¿es así realmente cómo abordar el código de producción?
- Los otros desarrolladores están claramente incómodos con X a pesar de algunos meses de exposición. He visto problemas en el sitio en vivo al implementar código roto cuando él estaba fuera. Sí, se necesita una conversación sobre las pruebas, pero el hecho de que no puedan detectar errores sorprendentes en X es una señal de alerta.
- Ha comenzado a agregar complementos a otros servicios, "para hacerlos más similares a X". Aún no estoy seguro de lo que eso significa.
- etc. etc.
Es una persona agradable y accesible. No es arrogante ni discutidor ni nada de eso. Él está realmente, realmente en X, incluyéndolo en cada conversación, incluso con personas sin conocimientos técnicos. Es agradable ver que es un apasionado, pero está al borde de la obsesión.
Soy su nuevo gerente de línea, preocupado tanto por el bajo número de autobús como por la claridad del día a día riesgo de bolsas de X quebradizas y difíciles de entender.
Si bien podría pedirle que deje de usar X, claramente no saldría bien, y de todos modos quiero que mi equipo sea autónomo y feliz, construyéndolos, no apagándolos. Y sí, estoy reservando tiempo para aprender todo lo que pueda. Tal vez vea la luz y pueda ayudarlo de esa manera.
¿Cómo puedo manejar el riesgo del proyecto presentado por X? ¿Es X en sí mismo el problema?