He trabajado para una gran empresa (más de 8000 empleados) durante casi 2 años y me contrataron justo después de terminar mi curso de estudio.
Todos aquí tienen que lidiar diariamente con el código heredado, que a menudo está muy mal diseñado y lleno de hacks. Al principio, mantuve un perfil bajo, tratando de no criticar demasiado las cosas. Pero la situación, tal como está, se ha vuelto muy difícil de vivir y parece que nadie está dispuesto a mejorar / reemplazar las herramientas que utilizamos.
Para ser más explícitos tenemos:
- Una herramienta de control de fuente obsoleta (Visual SourceSafe)
- Makefiles viejos y simples que solo admiten la reconstrucción completa
.def
archivos que deben mantenerse manualmente y por separado para todas las arquitecturas existentes- archivos de encabezados monolíticos y proyectos con muy pocos archivos diferentes (pero cada uno tiene alrededor de 3000 líneas de código, que a veces se ocupa de tareas muy diferentes)
- no se utilizan las instalaciones de idiomas "nuevos" (bueno,
std::string
no es tan nuevo, pero nadie excepto yo lo usa)
Hace unos meses decidí hacer algo al respecto, diseñando un nuevo entorno de compilación. Podría obtener compilaciones incrementales para trabajar de manera confiable, tiempos de compilación más rápidos, proyectos mejor estructurados, .def
generación automática de archivos. Incluso creé un puente de / a Git a / de Visual SourceSafe.
Mostré mis logros a varios colegas y a nuestro jefe, pero fue como si a nadie le importara. Todos decían "Bueno ... la gente está acostumbrada a hacerlo así ahora. ¿Por qué cambiaríamos las cosas?
Los cambios que sugerí fueron diseñados para que pudiéramos tener una transición suave del sistema antiguo al nuevo. Cada mejora podría aplicarse por separado y de forma segura.
Incluso intenté involucrar a algunos de mis compañeros de trabajo en los cambios. Pero hasta ahora, no hay éxito.
¿Ya te has enfrentado a una situación similar? ¿Qué se puede hacer cuando "liderar con el ejemplo" no funciona?