Masz tutaj do czynienia z wieloma problemami ... Zacznijmy od oczywistych ...
Czy to normalne?
Piekło nie Ale ... czy to jest powszechne? Niestety tak.
Odnośnie frustracji związanej z usuwaniem błędów
Chociaż nie usprawiedliwia to reszty bałaganu, z którym musisz sobie poradzić, i wielu projektów, którymi cię przeciążają, chcę tylko szybko zauważyć, że podejście „naprawiające błędy” zbliża się, jednocześnie frustrując cię jako programistę , może być całkowicie rozsądnym podejściem dla firmy i jej zarządu.
Powierzchnia dla większej liczby błędów i kosztów
Im więcej kodu dotkniesz, tym większe prawdopodobieństwo wprowadzenia błędów, nawet jeśli Twoim celem jest jego poprawienie. Oznacza to wydłużony czas programowania, czas testowania i koszty. A jeśli przejdzie do wersji serwisowej ze średnią do wysokiej wady, to dla nich wielki bałagan.
Hałas / mgła w twoich logach
Z perspektywy SCM ma to również sens, jeśli pracujesz bezpośrednio w gałęzi wydania usługi, ponieważ chcesz mieć czysty widok zmian związanych z naprawą błędów. Jeśli jest 15 zatwierdzeń z tysiącami zmian otaczających poprawkę, które faktycznie wymagały zmiany kodu 1-liniowego, jest to trochę denerwujące.
Będąc nowym pracownikiem, jeszcze bardziej sensowne jest prosić o powstrzymanie się od refaktoryzacji i / lub ulepszania oprogramowania, i całkiem w moim odczuciu, aby być jak najbardziej „chirurgicznym” przy swoich poprawkach błędów. Po prostu powstrzymuje bóle głowy.
Czy możesz zrobić coś na ten temat?
Teraz NIE oznacza to, że istniałyby sposoby na osiągnięcie zarówno rozsądku kodu, jak i rozsądku umysłów zaangażowanych ludzi. Będąc młodsi, powinni poprosić kogoś o sprawdzenie twoich zmian, zwłaszcza poprawek błędów, i upewnienie się, że są zatwierdzone przed przejściem do kompilacji wersji serwisowej. Pozwoliłoby to zapobiec radykalnym zmianom lub je ograniczyć i byłoby bezpieczniejsze.
Projekt z piekła rodem
Kod bzdury, stado programistów, powielanie, architektura bzdur
Ponownie, adwokat diabła tutaj, ale tylko pokazując, że twoje początkowe żądanie zawiera kilka nieistotnych bitów.
Chodzi mi o to: naprawdę naprawdę bardzo rzadko przejmowałem bazę kodów, która nie była w tym stanie. I przy okazji, że to zrobiłem, były to ostatnio projekty lub prototypy, które zostały zapoczątkowane przez dość gwiezdnych programistów. Ale zadziwiająca większość z nich wyglądała jak bzdury, a przerażająca ich liczba to bzdury. Nawet te założone przez dobrych lub świetnych programistów mogą być bzdurami, terminami i innymi zadaniami pomagającymi ...
Witamy w prawdziwej inżynierii oprogramowania przemysłowego!
I wiesz co jest fajne? Często jest gorzej w świecie tworzenia stron internetowych. Cieszyć się! :)
Zbyt wiele projektów i próśb, za mało rąk i czasu
Problem leży prawdopodobnie tutaj:
- twoje kierownictwo (być może nieświadomie) znęcało się nad tobą ,
- twoi koledzy (być może nieświadomie) znęcają się nad tobą ,
- twoje (być może nieświadomie) niewystarczające zasłonięcie się w tyłek i wystarczające stoczenie bitew .
Menedżerowie powinni mieć świadomość, że pracujesz nad zbyt wieloma projektami do zarządzania. Jeśli nie są, upewnij się, że są jak najszybciej. Upewnij się także, że wiedzą, że w parku nie było nic złego, że poczułeś presję i że to musi się skończyć.
Spróbuj się rozejrzeć i upewnij się, że twoi koledzy nie odbijają na tobie więcej zadań i projektów, bezpośrednio (mówiąc naprawdę „X będzie mógł się tym zająć”) lub pośrednio („Nie jestem odpowiednią osobą do znajdź kogoś innego ”-> kończy się to, że jesteś tobą).
Osobista anegdota tutaj: odbyłem staż kilka lat temu i właśnie ostatniego dnia, kiedy dostałem ocenę, mój szef powiedział mi, pomimo ogólnego zadowolenia z mojej pracy, że jeden z kierowników miał wrażenie, że ja rozładowywał niektóre „niezbyt zabawne zadania” na innym stażyście, kiedy spodziewali się, że je podniosę. Byłem przerażony tym, że czuję się zawiedziony, i na pomysł, że będę wyglądać, jakbym się rozluźnił, kiedy mój zamiar był dokładnie odwrotny: starałem się podjąć trudniejsze zadania i sprawić, by inny młodszy stażysta miał mniej włosów problemy z pompowaniem. Nie zdawałem sobie sprawy, że gdybym był na jego miejscu, nudziłby mnie brak wyzwań i prawdopodobnie czułbym się tak, jak on. Chodzi o to, że musisz się komunikować, aby upewnić się, że nikt nie przyjmuje fałszywych założeń dotyczących 3 bardzo różnych rzeczy:
- co można zrobić ,
- co chcesz zrobić ,
- i co chcesz zrobić .
Więc to częściowo twoja wina, że tak się stało. Ale to normalne, to lekcja, której wszyscy muszą się nauczyć. Posiada w dwóch liter: N - O .
Zwykle używasz go jako prefiksu dla dłuższej, ale nie o wiele bardziej obciążonej odpowiedzi: Nie, nie mogę tego zrobić. Nie, nie wiem jak to zrobić. Nie, nie jestem pewien, czy jestem odpowiednią osobą do tego. Nie, nigdy tego nie robiłem.
Na początku bardzo łatwo jest poczuć, że można po prostu powiedzieć „tak, ja (w końcu) to zrobię” i ułożyć rzeczy w stos i załatwić je, może przez poświęcenie dodatkowych godzin. To wszystko źle. Musisz zrozumieć, że Twój czas, po Twoich umiejętnościach, jest najcenniejszym zasobem dla Ciebie i Twojej firmy. Jeśli jest niewłaściwie wykorzystywany, wpływa na projekty, terminy i budżety . Tak proste jak to.
Wygląda na nieco niepokojące, że miałbyś zbyt wiele osób do zgłoszenia. Można mieć do czynienia z wieloma klientami i wieloma właścicielami projektów, a nawet głównymi interesariuszami, z którymi musisz się komunikować. Ale ogólnie rzecz biorąc, zwłaszcza, że jesteś nowym pracownikiem, powinieneś głównie zgłosić się tylko do kilku menedżerów (i najprawdopodobniej tylko do bezpośredniego kierownika, a być może do głównego lub starszego programisty). Jak to się stało? Nie wiem Może to być problem organizacyjny w Twojej firmie lub wynikać z tego, że wyświadczysz przysługę, a następnie skontaktujesz się bezpośrednio i nie powiesz „nie”. Lub może być tak, że twój bezpośredni menedżer ma problemy z wysyłaniem zadań, o ile wiem (naprawdę zgaduję, ale wzór jest rozpoznawalny i dobrze znany).
Radzę raczej szybko wykonać następujące czynności: porozmawiaj osobiście ze swoim bezpośrednim menedżerem, wyjaśnij, że inni menedżerowie mogą być nieco nachalni lub (prawdopodobnie mniej marudny), że masz zbyt wiele rzeczy gromadzących się od zbyt wielu osób, i że potrzebujesz jego wkładu (i być może również ich), aby wiedzieć, które z nich należy traktować priorytetowo.
Żądania zmiany o 180 stopni
To kolejny duży problem. Prawdopodobnie to nie twoja wina, ale możesz spróbować pomóc im to rozwiązać.
„Prośby o zmianę o 180 stopni”, jak je pięknie i dokładnie nazywasz, są wyraźnym znakiem, że wymagania są od samego początku niewyraźne i że nikt nie stara się wystarczająco, by je wykuć i wyjaśnić z czasem.
Zwykle wtedy ktoś musi zadzwonić (lub lepiej, stanąć na nogi), złapać interesariuszy za rękę i powiedzieć im jasno: „tam jesteśmy, tam, gdzie chcesz, abyśmy poszli, czy potwierdzasz, że jesteśmy zmierza we właściwym kierunku? ”. Nie można uzyskać jasnych odpowiedzi na początku, ale im więcej czasu mija, tym wyraźniej powinni się stać, lub ten projekt jest katastrofą, która czeka.
Zwykle powiedziałbym, aby złapać wszystkich interesariuszy w zasięgu ręki, umieścić ich w pokoju, poprowadzić przez sporne problemy i stopniowo próbować je rozwiązać - i uzyskać priorytety, gdy jesteś przy tym. Jednak w Twoim przypadku może to już nie być Twój telefon. Ale wspominasz, że naprawdę powierzyli ci odpowiedzialność za projekty; więc jeśli tak jest naprawdę, weź na siebie odpowiedzialność i zrób to. I NIE wahaj się powiedzieć „nie możemy tego zrobić” , a nawet „nie zrobimy tego” . Naprawdę ważne jest ograniczenie zakresu projektu.
Jeśli nie ma zakresu, nie ma wyraźnych wymagań na końcu dyskusji.
Przeciążenie e-mail
Ludzie zachowują się inaczej w zależności od używanego medium komunikacyjnego. Osobiście, chociaż jestem raczej łagodną osobą (i pracuję głównie w obcych krajach, więc nie lubię też zbytnio rozmawiać przez telefon), wolałbym w kolejności preferencji opartej na wydajności:
- rozmawiać z ludźmi twarzą w twarz ,
- rozmawiać z ludźmi przez telefon,
- rozmawiać z ludźmi przez komunikator internetowy,
- rozmawiać z ludźmi przez e-mail.
E-maile są przydatne do śledzenia, uzyskiwania potwierdzeń, wysyłania notatek.
Do planowania, planowania i omawiania problematycznych punktów są prawie bezużyteczne. Idź pukać do drzwi faceta, aż on je otworzy, i usiądź z notatnikiem i kopią dokumentacji, aby wyjaśnić wszystko. Po zakończeniu wyślij wiadomość e-mail i poproś o potwierdzenie. Jeśli wróci z negatywną odpowiedzią lub nieco ukrytą próbą wykradnięcia czegoś innego z koperty, idź ponownie oblegać biuro swojego rozmówcy.
To jest inżynieria oprogramowania. Często jest bardziej produktywny, gdy nie piszesz na klawiaturze i może faktycznie wyciąć z góry bzdury, z którymi musisz sobie poradzić.
Wykonywanie pracy zespołowej
Czy wykonujesz ekwiwalent pracy zespołu? Może.
Czy wykonujesz równowartość pracy swojego zespołu? Prawdopodobnie nie.
Mam na myśli to, że Twój zespół jest prawdopodobnie zajęty pracą i jesteś przepracowany. I na tym polega problem: jesteś przeciążony rzeczami, które należy wypchnąć z obecnych ram czasowych projektu lub przekazać komuś z czasem na rękach.
Czy byłem idiotą, kiedy początkowo spodziewałem się, że będzie inaczej?
Nie; po prostu nowość na imprezie. To jak pierwszy kac lub związek. Przeżyjesz to.
Wydaje mi się, że ten post zmienił się w wielki rant, ale proszę, powiedz mi, że nie jest tak samo dla każdego programisty.
To samo dotyczy każdego dewelopera w chaotycznych organizacjach, bez względu na to, czy są to start-upy czy ugruntowani giganci, i bez doświadczenia lub pewności siebie, aby coś się poruszyło, aby zwiększyć szanse na przetrwanie po prawej stronie skali.
PS Moja pensja jest prawie równa, jeśli nie niższa niż w kasie w supermarkecie.
Zrobiłem przyzwoite wynagrodzenie za pracę, która wydawałaby się kiepska. Liczy się nie liczba na czeku, to kontekst. Co robisz, twój wiek, gdzie mieszkasz i pracujesz itp.
Biorąc to pod uwagę, jeśli jesteś rażąco niedostatecznie wynagradzany, pracujesz za dużo i nie jesteś całkowicie młodszy, poproś o podwyżkę lub znajdź nową pracę!
To proste:
- jeśli cenią to, co robisz, chętnie zgodzą się na podwyżkę,
- jeśli nie, przyszłość w tej firmie nie wygląda bardzo różowo (przynajmniej dla ciebie, co się liczy), więc nie przejmuj się odejściem.
Pamiętaj, że prośba o podwyżkę jest dobrą rzeczą, nawet jeśli na początku nie będziesz skłonny tak myśleć. Dowodzi to, że śledzisz swoje działania, i daje do zrozumienia, że pilnujesz innej opcji, a jednocześnie chcesz pozostać na pokładzie. Dobrze jest przyzwyczaić się do proszenia o nie, ponieważ są one jak rozmowy kwalifikacyjne lub negocjacje w ogóle: jest to coś, co wymaga praktyki i nie spadają z nieba, jeśli sam nie sięgniesz po nie. Niektóre firmy będą regularnie dystrybuować podwyżki, ale nie są o to proszone, ale tylko dlatego, że są wystarczająco sprytne, aby wiedzieć, że to sprawia, że jesteś w połowie szczęśliwy i mniej chętny do zmiany, i chcą ścinać trawę pod twoją stopą (większość ludzi czułaby nieco niespokojne o podniesienie oferty przebicia, którą zaoferowano bezpośrednio).
Sposób realizacji tego żądania jest nieco poza zakresem tego projektu, więc nie będę wchodził w szczegóły. Ale zalecam, abyś przygotował rejestr identyfikatorów zatwierdzenia SCM, naprawionych błędów i osiągnięć oraz abyś przygotował raporty porównujące je z ogólnym wysiłkiem zespołu. Tą drogą:
- możesz sam sprawdzić, czy skutecznie zrobiłeś znacznie więcej niż inni,
- możesz wytrzymać, jeśli powiedzą, że twoja prośba jest nieuzasadniona.