Pracuję nad projektem, który ma bardzo napięty harmonogram. Nie mam dużo czasu na kodowanie i testowanie (mimo że codziennie pracuję więcej niż 12 godzin, wciąż jest opóźnione), a wynik jest bardzo kruchy. Jego kod jest również bardzo dylemat.
Z tego programu korzystają wszystkie biura w firmie naszego klienta, która znajduje się w wielu krajach. Regularnie dostaję telefony o północy o błędach od naszego użytkownika / testera lub o tym, że nie wiedzą, jak korzystać z niektórych funkcji.
Po trzech latach pracy nad tym projektem czuję się bardzo zestresowana i nie mogę spać dobrze, ponieważ bardzo martwię się o błędy i połączenia telefoniczne.
Mam kilka pytań:
- Przez trzy lata cały kod, który napisałem, jest idealnym kodem scenariusza użytkowania (więc łatwo się psuje). Jest źle zaprojektowany i nie ma żadnych testów jednostkowych. Mam z tego powodu wiele problemów. Dlatego chcę wiedzieć, czy jest możliwe napisanie kodu, który działa, gdy projekt ma bardzo napięty harmonogram?
- Jak mogę napisać lepszy kod w tym samym czasie?
- Jak mogę oczyścić umysł i nie martwić się pracą, kiedy idę spać?
time-management
Anonimowy
źródło
źródło
Odpowiedzi:
Zakaz połączeń telefonicznych
Jeśli Twoi użytkownicy są na całym świecie, z pewnością nie mogą oczekiwać, że odbierzesz telefon, gdy jest 4 rano i jesteś w łóżku. Zakazałbym połączeń telefonicznych i przestawiłbym się na inne środki komunikacji, które mogą lepiej służyć temu scenariuszowi (e-mail lub baza danych śledzenia problemów). Ale nawet w biurze zaplanuj harmonogram dostępności telefonu. W przeciwnym razie nie możesz nic zrobić, gdy jesteś w biurze.
To zapewni ci cenny sen i odpoczynek.
Napięty terminarz
Jeśli ten projekt został zaplanowany na trzy lata, ktoś musiał podejrzewać, że coś naprawdę nie działa. Może nadszedł czas, aby ktoś powiedział planistom coś, a zwłaszcza użytkownikom / klientowi i menedżerom, że jest to projekt marszu śmierci. Jest rozwijany od trzech lat, jest opóźniony i pełen błędów. Plan powinien zostać całkowicie ponownie oceniony, istniejący kod powinien zostać poddany ponownej analizie, a nowe funkcje nie powinny być rozwijane, dopóki nie zostanie rozwiązanych wiele problemów.
Porządek z chaosu
Ustal metodologię rozwoju, która sprawi, że wszystko będzie przewidywalne i znośne dla Ciebie. Jeśli jesteś programistą, obsługa przychodzących połączeń telefonicznych nie pozwala ci wykonywać żadnej pracy. Każda przerwa zajmuje 15 minut, aby wrócić do miejsca, w którym zostało przerwane. Połączenia telefoniczne powinny być wyłączone . Przynajmniej na twoim biurku, ponieważ jesteś programistą. Jeśli możesz przekierowywać połączenia telefoniczne do kogoś innego, kto nie będzie Ci przeszkadzał po każdym połączeniu, to zrób to.
Utwórz bazę danych incydentów / błędów. Każdego ranka poświęć trochę czasu na ustalenie priorytetów dla nowych incydentów (siebie, swojego zespołu lub klienta / kierownika). Spróbuj rozwiązać je w porządku posortowanym według kolejności priorytetów i nawet nie próbuj myśleć o rozmowach telefonicznych.
Co jeśli
Co jeśli nie możesz wyłączyć telefonu i nie możesz powiedzieć użytkownikom, że nie mogą do ciebie dzwonić, kiedy chcą? Jeśli masz numer telefonu użytkownika, sugeruję, abyś zrobił coś przeciwnego: kiedy do ciebie zadzwonią, zgłoś to i poinformuj, że oddzwoni, gdy zostanie rozwiązany. Następnie oddzwoń, gdy śpią. Jeśli powiedzą ci, że śpią, pamiętaj ich odpowiedź i użyj jej, gdy zadzwonią do ciebie w środku nocy następnym razem. Ludzie zwykle lepiej rozumieją swój język.
Jeśli używają telefonu biurowego, a ty korzystasz z telefonu komórkowego, abyś nie mógł do nich dzwonić poza godzinami pracy, a oni mogą, wtedy zacznij wyłączać swój telefon komórkowy po wyjściu z biura. Jesteś tam od 12 godzin i zasługujesz na zwolnienie z pracy. Jeśli telefon komórkowy jest osobisty, firma powinna otrzymać nowy i poinformować o tym użytkowników / klientów. Jeśli później zaczną do ciebie dzwonić na osobisty numer telefonu (ponieważ nie mogą się z Tobą skontaktować w Twojej firmie, możesz:
Najważniejszą rzeczą
Nie rozwijaj żadnych nowych funkcji, dopóki nie rozwiążesz istniejących problemów. Przynajmniej te o wysokim i średnim priorytecie.
źródło
O ile nie jesteś jedyną osobą w zespole - w takim przypadku prawdopodobnie jesteś w połowie drogi do wypalenia - na zmianę z „pagerem”. To powinno na razie zmniejszyć obciążenie.
Następnie należy powiadomić kierownictwo, że muszą zaplanować fazę spłaty zadłużenia technicznego - co oznacza testowanie, czyszczenie kodu, refaktoryzację. I wkrótce trzeba to zaplanować. Ogólnie oznacza to, że przez pewien czas nie ma nowego kodu, który nie byłby refaktoryzacją ani testem. Jeśli nie, będzie gorzej.
W tej fazie wybierasz najbardziej kłopotliwe sekcje bazy kodu, refaktoryzujesz ją, czyścisz i piszesz testy, aby przetestować to gówno. Gdy rozmowy ustaną lub można je obsłużyć bez szaleństwa deweloperów, jesteś gotowy na kolejną fazę funkcji (jeśli tego właśnie chcą). W tym momencie piszesz testy z nowym kodem i kontynuujesz regresje. W tej chwili oprogramowanie wydaje się być na dobrej drodze do ponownego napisania.
Punkty sprzedaży za rozmowę z szefem:
Bądźmy szczerzy. Do tej pory Twoja firma nie uważała, że jest to wystarczająco duży problem, aby coś z tym zrobić; wypalisz się. Wygląda na to, że nikt w zarządzaniu nie ma żadnego prawdziwego doświadczenia programistycznego. Zacznij szukać.
źródło
Chociaż mogą istnieć pewne techniki, które pozwolą ci osiągnąć niewielki wzrost wydajności, wzrost wydajności pracy o 5% jest teraz gorszy niż bezużyteczny. Prawdziwa umiejętność, której tu brakuje, jest prosta i fundamentalna:
Naucz się mówić „nie”
Powiedz „nie” wszystkim nieuzasadnionym oczekiwaniom, o których wiesz, że powinieneś odmówić. Wiesz jakie one są. To jest oczywiste. Jeśli nie możesz teraz odmówić, znajdź pracę, w której możesz. Inteligentni pracodawcy uznają tę umiejętność za pożądaną.
źródło
Zacznij od zrozumienia, że Twój projekt zawiedzie, jeśli nic się nie zmieni. To najważniejszy krok do zrobienia tego, co musisz zrobić. Deweloper nie jest w stanie wytrzymać 12 godzin dziennie i jest w stanie wygenerować użyteczny kod. Dojdziesz do momentu, w którym popełnisz głupie błędy i faktycznie stracisz postęp, ponieważ musisz zaczynać każdego dnia od naprawy tego, co zrobiłeś dzień wcześniej. Brzmi jakbyś już tam był.
Istnieją dwa główne problemy, którymi należy się zająć, zanim znów będziesz mieć zdrowie psychiczne:
Aby naprawić swoją sytuację, potrzebujesz wpisowego do zarządzania. Problem polega na tym, że nie odczuwają bólu i nie chcesz skończyć w szpitalu z udarem, aby zwrócić ich uwagę. Pierwszym krokiem jest wyjaśnienie swojemu kierownictwu, gdzie jesteś i presji, na którą jesteś. Jeśli tego nie dostaną, przejdź na wyższy poziom zarządzania. Lub ewentualnie opisz swoje warunki pracy działowi HR. Wymaganie, abyś pracował dłużej niż 8 godzin dziennie przez dłuższy czas, może stanowić naruszenie prawa, a dział HR na pewno się o tym dowie.
Zakładając, że kierownictwo usłyszy twoją prośbę, chcesz podjąć następujące działania:
Po zakończeniu aktualizacji krytycznej poprawki czasu nadszedł czas, aby zaplanować następną. Wszystkie funkcje i poprawki błędów muszą być traktowane priorytetowo, a wydania należy zaplanować wokół podzbioru oczekującego obciążenia. Przekonasz się, że wprowadzasz zdrowy rozsądek w życiu zawodowym, poziom stresu spadnie, jakość wzrośnie i ogólnie będziesz bardziej wydajny.
źródło
Wydaje się, że cierpisz z powodu tego, co uważam za przypadek fałszywej gospodarki , a im dłużej będziesz przestrzegać tych rzeczy, które nie działają, tym gorszy będzie twój problem.
Niektóre kluczowe wskaźniki:
Krótka odpowiedź brzmi: tak. Długa odpowiedź jest złożona i będzie wymagała ogromnej zmiany postrzegania w imieniu kierownictwa i ewentualnie również klienta, a także wysiłku Herculean z twojej strony ... ale wrócę do tego za chwilę.
Realistycznie nie możesz, jeśli Twoim założeniem jest, że możesz zrobić wszystko, co pozwoli Ci zaoszczędzić czas i nadal uzyskać doskonały wynik. Musisz zastosować techniki, które zwiększą czas potrzebny na wdrożenie kodu, ponieważ musisz poświęcić trochę czasu, aby skupić się na właściwym ułożeniu szczegółów. To wymaga czasu i właśnie tutaj krzywdzą cię twoje fałszywe gospodarki. Jednakże, robiąc rzeczy w lepszy sposób, poprawiasz jakość swojego kodu, co z kolei spowoduje zmniejszenie kruchości twojego systemu. Ponownie wyjaśnię to dalej.
Lęk powoduje brak snu, a utrata snu powoduje niepokój. To błędne koło, jeśli kiedykolwiek istniało, a pozostawienie go bez kontroli prawdopodobnie doprowadzi do złego bliźniaka lęku, Depresji . Przewlekła utrata snu, która, jak zakładam, jest prawdopodobnie połączona z brakiem ćwiczeń fizycznych, a także prawdopodobnie złymi nawykami żywieniowymi, wszystko to może doprowadzić do chronicznego zmęczenia . Wszystko to jest symptomatyczne dla wszystkich problemów, z którymi borykasz się w miejscu pracy i wynikających z nich problemów, z którymi prawdopodobnie będziesz mieć do czynienia w życiu domowym. To tutaj znajdują się największe dowody fałszywej ekonomii i jest to prawdopodobnie najpoważniejszy problem, z którym musisz się najpierw zmierzyć.
Najpierw powinienem stwierdzić, że nie jestem lekarzem, a przed podjęciem jakichkolwiek działań powinieneś zasięgnąć porady lekarza. Zwrócę jednak uwagę, że przeżyłem doświadczenia, które opisałeś w swoim poście i wiem, jak trudno jest sobie z tym poradzić i jak ważne jest, aby coś z tym zrobić. Przeżyłem depresję, lęk, chroniczne zmęczenie, stres i wszystkie inne towarzyszące im drobne nieprzyjemności, dlatego dam ci kilka porad w oparciu o następujące doświadczenia:
Teraz, gdy przejrzałem wszystkie związane z medycyną rzeczy, przyjrzyjmy się, co możesz zrobić ze swoją pracą:
Jeśli chodzi o rzeczy związane z programowaniem:
Co najważniejsze, musisz zarządzać oczekiwaniami, zaczynając od własnych. Jesteś tylko człowiekiem i możesz tylko tyle zrobić w danym momencie. Musisz zarządzać oczekiwaniami swojego szefa i mieć swojego szefa 9 lub siebie bezpośrednio) zarządzać oczekiwaniami swoich klientów. Oznacza to poważne uszeregowanie pod względem ważności wykonywanej pracy. Przydziel czas na nowe funkcje i czas na błędy, i zakładaj, że terminy się zbliżają. Jeśli chodzi o możliwość przesunięcia terminów dostaw, obiecaj, że dostarczysz tylko zestaw najważniejszych funkcji, a resztę pozostaw jako „miło mieć, jeśli to możliwe”. Następnej daty dostawy, ponownie przechodzisz przez ten proces, zwiększając priorytety „miłych do zrobienia” wcześniejszych dostaw i tak dalej. Wbuduj to w swoją metodologię programowania jako minimalny punkt wyjścia, a następnie dokonaj przeglądu po kilku dostawach, aby zobaczyć, gdzie możesz dostroić swoje procesy i poprawić swoją wydajność. Największa efektywność będzie pochodzić ze zmian stylu życia, jednak zawsze można zrobić niewiele, aby usprawnić pracę, na przykład zmniejszyć koszty związane z dokumentacją i komunikacją między tobą a użytkownikami końcowymi.
Bądź proaktywny w tym wszystkim. Pokaż swojemu szefowi, że oboje możecie pracować razem, aby naprawdę poprawić sprawy, co ostatecznie dobrze odbije się na tobie i całej firmie.
Nie podejmuj teraz żadnych drastycznych decyzji. Poczekaj, aż poradzisz sobie ze swoim zdrowiem i obciążeniem, i zobacz, jak sobie radzisz. Kiedy twój umysł stanie się bardziej przejrzysty i poczujesz, że jesteś w lepszym miejscu, nadejdzie czas, aby zdecydować, czy warto zostać, czy też czas ruszyć dalej. Mówię w zasadzie, aby poradzić sobie z jednym problemem na raz, a resztę pozostawić do duszenia, dopóki nie będą potrzebować twojej uwagi.
źródło
Jeśli twój harmonogram jest napięty, musisz być kompulsywny w stosunku do Don't Repeat Yourself . Zidentyfikuj najczęściej stosowane metody i upewnij się, że są one wielokrotnie używane.
Zaplanuj, nad czym dzisiaj będziesz pracować, zapisz to i trzymaj się tego. Spróbuj ograniczyć to, co musisz zapamiętać, do siedmiu lub mniej przedmiotów.
Zrobiłbym jeszcze jeden krok i unikałbym powtarzania innym pracy. W miarę możliwości korzystaj z bibliotek języka. Jeśli to możliwe, używaj bibliotek stron trzecich.
Może wydawać się, że pisanie zajmuje więcej czasu, ale celuj w metody, które robią tylko jedną rzecz. Ograniczam metodę do podejmowania decyzji lub robienia rzeczy. Spójność kodu powinna wzrosnąć, a sprzężenie maleć. Testowanie powinno być łatwiejsze. To dobrze nadaje się do postępującego rozkładu.
Uprość jak najwięcej. Użyj szablonów, list kontrolnych i dowolnych technik, które pozwolą ci uniknąć myślenia o trywialnościach.
Będziesz musiał unikać przerw. Każda przerwa kosztuje około 15 minut zgodnie z harmonogramem. Chroń swój czas.
Jeśli jest to długoterminowe, idź do domu, gdy zauważysz, że wydajność zaczyna się opóźniać. Jeśli nieprzerwanie pracujesz przez 12 godzin, wydajność prawdopodobnie będzie podobna do tego, co osiągniesz w ciągu 8 godzin. Możesz nie zauważyć, jak bardzo pogorszyła się twoja wydajność. Poświęć dodatkowe cztery godziny na ćwiczenia i odpoczynek. Sprawdź, czy możesz zdrzemnąć się w połowie dnia lub wziąć kilka godzin wolnego po obiedzie.
źródło
Gdybym był tobą, porozmawiałbym z moim przełożonym i wyjaśniłbym, że wyznaczone przez nich terminy są nierealne. Jeśli będziesz tak dalej pracował, będą myśleć, że wszystko jest w porządku, nie będą świadomi problemów, które masz, i będziesz codziennie dodawać coraz więcej słabo napisanego kodu do swojego systemu, co jeszcze bardziej skomplikuje twoją pracę.
Alternatywnie, zawsze możesz przejść do innej pracy :-)
źródło
Śledź wszystko, co robisz
Poświęć czas na śledzenie wszystkiego, co robisz i ile czasu spędzasz na tym razem z zespołem. Skończy się to tym, co wnosisz do zarządzania, aby pokazać im, że musisz robić różne rzeczy. Jeśli nie masz zimnych, twardych faktów na temat tego, co robisz i ile czasu spędzasz na rozwiązywaniu problemów zgłaszanych przez innych, o wiele trudniej będzie ich przekonać, że należy wprowadzić zmiany. Każda godzina musi być śledzona przez wszystkich, aby było to dokładne. Można to powiedzieć, że spędziłeś 80 godzin w ciągu ostatnich 3 tygodni na naprawie systemu, który mógł zostać odbudowany od podstaw w tym samym czasie.
Spróbuj zmienić rzeczy
Użyj zebranych danych śledzenia i wspaniałych sugestii innych osób, aby opracować plan ulepszenia oprogramowania. Wybierz części oprogramowania, które powodują najwięcej problemów. Ułóż plan, który Twoim zdaniem przyniesie rzeczy do normalnego tempa zarządzania. Daj czas na pracę.
Przygotuj się na to, że może być czas na wyjazd
Jeśli kierownictwo nie chce zmieniać rzeczy i współpracować z tobą, być może czas pomyśleć o dalszym rozwoju. Zgadzam się z innymi, że się wypalasz. Zacznij przygotowywać swoje CV i portfolio. Sytuacja może się poprawić i nie będziesz musiał iść do przodu, ale jeśli kierownictwo nie zaakceptuje wprowadzania zmian, przejdź dalej. Twoje zdrowie psychiczne i fizyczne jest ważniejsze niż pozostawanie w pracy, która tak bardzo cię wycenia.
źródło
Na miłość boską, gdzie jest twój kierownik projektu?
Jeśli nie masz kierownika projektu, który pomógłby ci ustalić produktywny czas, potrzebujesz go. Potrzebujesz osoby zaangażowanej w pilnowanie swojego czasu programowania, ograniczanie zakresu, zarządzanie oczekiwaniami itp.
Wykonujesz kreatywną pracę na życie. Jeśli nie masz bariery między Twoimi klientami / użytkownikami, jak możesz skutecznie skoncentrować się na rozwoju?
Dobry PM może być dobry dla wielu rzeczy ...
1. Aby zagrać w kartę „Wyższej mocy”:
Twoi użytkownicy podsłuchują cię za nowe funkcje, ale naprawdę potrzebujesz trochę czasu, aby skupić się na wydaniu poprawki. Kto powiedział, że musisz porozmawiać z użytkownikami? Czy Twoim obowiązkiem jest napisanie umów? Czy Twoim zadaniem jest zarządzanie oczekiwaniami klientów? Czy masz uprawnienia do podjęcia ostatecznej decyzji, aby dyktować warunki umowy?
Nie? Dlaczego zatem ponosisz wyłączną odpowiedzialność za interakcję z klientem? Rozwój jest trudny i wymaga dużej koncentracji. Potrzebujesz możliwości odzyskania czasu na rozwój i możesz to zrobić z dobrym PM i dobrą wymówką.
Niezależnie od tego, co robi twój PM w porównaniu z tobą, jeśli klienci zaczną cię niepokoić o modyfikacje poza specyfikacją, powiedz tylko.
To grzeczny sposób powiedzenia: „Nie daję się jak ***”.
Kontynuuj to, chorując na nich „Scope Creep Dog”.
Teraz zostaw mnie w spokoju. Zdolność użytkownika do bezpośredniej interakcji z programistami jest dozwolona jako przywilej, który można odebrać. Jeśli tak nie jest, Twoje zarządzanie Cię zawodzi.
2. Zarządzanie oczekiwaniami 101
Kto przy zdrowych zmysłach myśli, że możesz pracować tak szalony harmonogram i obsługiwać wsparcie techniczne 24/7. Potrzebujesz kogoś, kto stanie za tobą, ponieważ twój czas jest cenny i powinien być poświęcony twojemu rzemiosłu.
Dotyczy to zarówno klientów, jak i firmy, dla której pracujesz. Jeśli klienci przekraczają granice, zawsze możesz zapytać ...
Jeśli nie, masz prawo odrzucić wnioski. Nie zrozumcie mnie źle, miło jest zrobić wszystko, aby uszczęśliwić swoich klientów, ale równie ważne jest, aby dać im znać różnicę między tym, czego się spodziewają, a tym, co im dajesz jako przysługę.
W firmie, w której pracujesz, potrzebujesz kogoś, kto niesie wiadomość ...
To znaczy, czy płacą ci 60 tys. Rocznie, aby spędzić 50% czasu na pomocy technicznej przez telefon, co jest znacznie niższą pozycją płatniczą. Jest to niebezpieczny temat do poruszenia, więc potrzebujesz premiera, któremu możesz zaufać, aby zrobić dla niego dobrą sprawę. Argument, który powinieneś mu przedstawić, to ...
Albo mnie zatrudniliście i chętnie tracicie pieniądze na tej inwestycji, spędzając połowę mojego czasu na obsadzaniu niskiej pozycji. Wierzcie lub nie, maksymalizując swój potencjał, mogą w dłuższej perspektywie zarobić więcej pieniędzy.
Jeśli chodzi o biznes, o wiele łatwiej jest przekonać firmę do zmiany pozycji, jeśli potrafisz przedstawić sytuację korzystną dla wszystkich. Nie musisz być mistrzem negocjacji, aby ten mógł się trzymać. Oczywiście, jeśli zasoby firmy są ograniczone, może to odbić się na tobie.
3. Każdy mógł czasem użyć cheerleaderki
Dobry premier będzie naturalnie osobą-osobą. Trzon ich działań stanowią relacje międzyludzkie. Dobry premier będzie mógł powiedzieć klientowi, czego nie chce słyszeć, i nadal będzie szczęśliwy.
Mogą być również doskonałym źródłem wsparcia moralnego, gdy nadchodzą ciężkie czasy. Zwykłe zwiększenie morale nie powinno być zbyt duże dla dobrego PM, jeśli o to poprosisz. Potrzebujesz kogoś po swojej stronie, bo inaczej twoje morale spadnie, a praca będzie przytłaczająca.
Jeśli nie ma kogoś wyższego szczebla w organizacji, który byłby odpowiedzialny za zarządzanie oczekiwaniami, kierownictwo ponosi porażkę, a osoby z wyższego szczebla prawdopodobnie nawet nie zdają sobie sprawy z tego, jak źle działa projekt.
To jest główny powód, dla którego unikam pracy dla korporacji takich jak zaraza. Miałem szczęście pracować dla mniejszych firm, w których mam kogoś wyżej. Mogę szczerze omawiać problemy z tym, kto zachowa poufność tego, co mam do powiedzenia, i w razie potrzeby podejmie działania.
Potrzebujesz kogoś po swojej stronie, który pomoże Ci spełnić wymagania biznesowe i zarządzać rozproszeniem uwagi. Jeśli nie masz tego i nie ma nadziei na znalezienie go w przyszłości, powodzenia ...
źródło
Wow wow wow ! Trzymaj swoje konie kowboju !. Wygląda na to, że wszystko tam źle się rozwija. Podczas kodowania brakuje niektórych podstawowych zasad oprogramowania. Tak, odświeżyć swoje podstawy ... życie będzie o wiele łatwiejsze.
Wróć do czasu w szkole
źródło
Lubię tworzyć listę rzeczy do zrobienia, sortować je według konieczności i bezwarunkowo trzymać się tej kolejności - nawet jeśli mam ochotę zwlekać z niektórymi zadaniami.
Zdziwiłbyś się, ile czasu możesz zaoszczędzić, skracając czas na zastanawianie się nad czym dalej pracować.
źródło
W tej chwili możesz to zrobić
Oznacza to, że przynajmniej to, co robisz odtąd, zostało zatwierdzone przez DWIE osoby, które mogą poprawić te fragmenty kodu.
Co jeszcze można zrobić, zależy od zarządzania. Możesz pokazać im to pytanie wraz z odpowiedziami!
źródło
Blokuj połączenia telefoniczne i stosuj ścisłą zasadę „TYLKO błędy idą do narzędzia do śledzenia błędów”. Następnie twoim pierwszym krokiem jest segregowanie nowo wprowadzonych błędów, usuwanie duplikatów, ustalanie priorytetów i rozpoczęcie pracy nad poprawkami błędów. I upewnij się, że poprawki błędów faktycznie naprawiają błąd i nie wprowadzają nowych błędów.
Jak robisz tę ostatnią część? Ponownie instalując przypadki testowe w istniejącym kodzie. Jeśli masz funkcje, sprawdź, czy wprowadzają i wysyłają to, czego oczekujesz, i czy ładnie zawodzą, jeśli dasz im śmieci. Użyj pewnego rodzaju automatycznych testów interfejsu użytkownika, aby przetestować integrację i wydajność od początku do końca.
Tak naprawdę nie wstajesz z łóżka o 3 nad ranem, aby rozwiązać problemy z kodem, prawda? Jeśli tak, zasługujesz na wszystko, co dostajesz.
źródło
Spróbuj użyć techniki pomodoro . Poza tym mam 3 osobiste zasady, aby wiedzieć, czy piszę dobry czy zły kod, który może okazać się przydatny.
źródło
Ty i programiści tacy jak ty, to jedyny powód, dla którego mogę wymyślić licencję na tworzenie oprogramowania, na przykład lekarze i prawnicy. W ten sposób licencja może zostać cofnięta z powodu nieprzestrzegania podstawowych dobrych praktyk programowania. Nie tylko ochroniłoby branżę przed niekompetentnymi, ale także ochroniłoby tych kompetentnych programistów przed menedżerami, którzy nalegają, aby ich programiści nie przestrzegali dobrych praktyk.
Do Twojej wiadomości, praktycznie każdy pracuje w napiętym terminie. Jednak programiści, którzy wiedzą, co robią, przestrzegają najlepszych praktyk, ponieważ w dłuższej perspektywie praca jest wykonywana szybciej. Wtedy nie muszą pracować 12 godzin przez 3 lata z rzędu.
źródło