¿Cómo se presenta la base de código, que puede ser bastante compleja y enredada con muchas "trampas" para un nuevo miembro de su equipo?
Creo que la forma más fácil sería tener la arquitectura general presentada con diagramas y tomar un par de semanas (o meses) dando a la nueva persona tareas bien definidas (y bien definidas) a medida que se acostumbra al código.
Sin embargo, como consultor (y empleado menor, por cierto), no siempre puedo tener eso debido a limitaciones de tiempo o designaciones de roles de equipo. (He estado en este proyecto en particular el doble de tiempo que cualquier otro, por lo que "junior" de ninguna manera "sabe menos sobre el código / proyecto").
Me han encomendado varias veces presentar un nuevo miembro al proyecto y al código, y lamentablemente cada vez que encuentro que no soy mucho mejor que el anterior. Me encantan los diagramas y las imágenes, pero a menudo siento que no explican adecuadamente la complejidad de un sistema. (¿Qué pasa con todas las "trampas" de los pequeños?)
El proyecto está llegando a un punto en el que se lo entregaremos al cliente, y para hacer las cosas más desafiantes, la persona con la que haré una transferencia de conocimiento está esencialmente fuera de la universidad. (No es que sea mucho mejor al hacer transferencias de conocimiento con desarrolladores senior).
Asisto a un grupo de usuarios una vez al mes y a otras oportunidades a medida que surgen, por lo que no estoy acostumbrado a que me presenten nuevos temas, pero siento que mi capacidad para replicar el intercambio de conocimientos efectivo es lamentablemente inadecuada.
Cualquier consejo sería muy apreciado. Estoy buscando principalmente una guía que pueda seguir. Por ejemplo: ¿Por dónde empiezas? ¿Cómo procedes? ¿Cómo cubre tecnologías o patrones desconocidos por parte del oyente sin tomar todo el día? ¿Dónde se vincula la lógica empresarial con la estructura de código?
¡Gracias!
(Como siempre, no dude en editar la pregunta como mejor le parezca).
# TODO: fix this ugly hack