Zmieniłem projekt wewnątrz firmy, trafiłem do projektu rozwijanego od kilku lat, który niestety nigdy nie cieszył się dobrą opinią. Bez zbędnych szczegółów, od samego początku był zaciągany dług technologiczny, bo ASAP, bo na wczoraj, bo klient wymaga, bo kiedyś się go spłaci. Niestety, w projekcie nadal jest kilkadziesiąt miejsc oznaczonych TODO z dopiskiem że to tymczasowe rozwiązanie. Z całego zespołu który kiedyś rozwijał ten projekt została jedna osoba, która została przeniesiona do innego projektu na swoje życzenie i nawet on nie potrafi odpowiedzieć na większość pytań czemu dany kawałek kodu to jedno wielkie WTF. No i taki projekt trafił do całkowicie nowego zespołu, w tym do mnie. Z zaplanowanym wdrożeniem na produkcje nowych funkcjonalności, za 2 tygodnie. Oczywiście nie wyrobiliśmy się na czas, a to co oddaliśmy i tak siedząc po godzinach było kontynuacją poprzednich błędów. W efekcie, nieświadomie stworzyliśmy nowe błędy, nie chcę tutaj twierdzić że jesteśmy całkowicie bez winy, ale po zmianie czegoś w klasie A, zepsuliśmy coś w klasie Z, która teoretycznie nie powinna mieć nic wspólnego z naszą zmianą. Po prostu stare hacki które ktoś założył przestały działać, a istniejące testy (których wiele nie ma i pozostawiają wiele do życzenia) tego nie wyłapały.
Co gorsza, akurat były prowadzone rozmowy o podwyżce w naszej firmie, a w moim przypadku o jej braku. Ostatni rok mojej "kariery" to ponad 10 miesięcy w projekcie który zdobywał bardzo dobry feedback od klienta, który dojeżdżał na czas i generował bardzo mało błędów, które dodatkowo były szybko naprawiane. Reszta roku to nowy projekt o którym wspomniałem wyżej, to on przesądził o tym że nie zasługuje na podwyżkę.
Co robić w takiej sytuacji? Uciekać, szukać nowej pracy? Czy może to standard w większości firm i po prostu powinienem się bardziej przyłożyć? Jak w ogóle pracować z takim kodem, gdzie każda zmiana to potencjalna mina która może wybuchnąć bez ostrzeżenia, a terminy na wczoraj?