Otros comentaristas ya han cubierto algunos puntos importantes: estoy hablando desde la posición de alguien que trabajó durante un tiempo en un equipo de desarrollo específicamente encargado del mantenimiento del código enviado. Casi todas sus preguntas surgieron una y otra vez.
Hay muchas cosas que podrían estar sucediendo. Usted señaló uno: el desarrollador original puede haber dejado la empresa. Otra posibilidad es que, mientras el desarrollador original todavía está en la empresa, hace mucho tiempo que pasó a otras cosas, y ya no tiene esas cosas en la memoria de trabajo (especialmente si el código ha cambiado bastante desde que estaban trabajando en eso).
Lo que tuvimos que enfrentar, por ejemplo, es que el equipo del producto tenía horarios muy agresivos para entregar las próximas versiones del producto. Si también tuvieran que trabajar en errores en las versiones existentes, al menos así fue el razonamiento, no habrían podido cumplir con sus horarios. Supongo que este punto podría discutirse, pero la realidad del mundo del software corporativo es que sacar las cosas por la puerta supera todo lo demás, incluida la observación de todas las mejores prácticas de ingeniería de software en todo momento. "Compromisos" es el término vago bajo el cual caen todos los compromisos desagradables que los desarrolladores tenemos que hacer tarde o temprano en esos entornos.
Por otro lado, sin embargo, corregir errores no triviales requiere que realmente aprendas mucho sobre la base de código. Es doloroso, a veces desmoralizante, y muchas veces abrumador. Pero, ¿cómo cree exactamente que se convertirá en un experto en la materia en un proyecto de software? Puede pasar días leyendo el código para su edificación, pero ese tipo de lectura del código realmente no se adhiere tan bien como haber tenido que "luchar" con el código para solucionar un problema. Las investigaciones continuamente prevalecen sobre el lema que aprendemos haciendo. Lamentablemente, a menos que esté en una startup o en un nuevo equipo, esto significa que generalmente se está uniendo a un proyecto de software que ha estado presente durante varios lanzamientos y tiene clientes reales con quejas reales que deben abordarse. Esto implica que primero corregirá los errores antes de '
Lo que es realmente importante es comunicarse regularmente con su gerente y expresar lo que desea obtener del trabajo, y ver si la empresa puede adaptarse a sus objetivos en este momento. Con suerte, la respuesta será sí. Quédate un rato y reúne toda la experiencia que puedas de tu equipo actual. Si la respuesta es no, y eres un buen desarrollador, tendrás muchas opciones. Pero no descarte la experiencia que obtiene al corregir errores: ahora estoy en mi tercer trabajo de software y tengo que escribir toneladas de código. Afortunadamente, mucho funciona desde el principio porque he pasado mucho tiempo identificando, reparando e intentando evitar errores.