Brakujący plik README Tarnów

Dla inżyniera oprogramowania umiejętność kodowania to zaledwie punkt wyjścia. Większość początkujących programistów przekonuje się o tym już w pierwszych dniach pracy w firmie. Nagle się okazuje, że wielu kluczowych spraw zabrakło w programach nauczania. Mowa tu nie tylko o praktykach związanych z …

od 41,38 Najbliżej: 29 km

Liczba ofert: 3

Oferta sklepu

Opis

Dla inżyniera oprogramowania umiejętność kodowania to zaledwie punkt wyjścia. Większość początkujących programistów przekonuje się o tym już w pierwszych dniach pracy w firmie. Nagle się okazuje, że wielu kluczowych spraw zabrakło w programach nauczania. Mowa tu nie tylko o praktykach związanych z tworzeniem i wdrażaniem kodu, ale także o zachowaniach i metodach współpracy ułatwiających odpowiednie działanie zespołu i w efekcie całego przedsiębiorstwa. To książka przeznaczona dla osób, które chcą rozpocząć karierę inżyniera oprogramowania. Znajdziesz w niej wiele cennych informacji, które zazwyczaj nie są uwzględniane w programach nauczania informatyki na poziomie studiów inżynierskich czy licencjackich, dowiesz się też, czego możesz się spodziewać w pracy. Poszerzysz swoją wiedzę techniczną dotyczącą pisania kodu nadającego się do wdrożenia w środowisku produkcyjnym, opanujesz zagadnienia efektywnego testowania i przeglądów kodu, ciągłej integracji, a także ciągłego wdrażania, dokumentacji projektowej i najlepszych praktyk w zakresie architektury. Zapoznasz się również z informacjami o umiejętnościach miękkich, takich jak techniki zwinnego planowania, efektywna współpraca z kierownictwem i zarządzanie rozwojem własnej kariery. Najciekawsze zagadnienia: oczyszczanie zastanego i tworzenie poprawnie działającego kodu testy deterministyczne i przeglądy kodu proces projektowania technicznego obsługa incydentów produkcyjnych zaawansowane techniki architektoniczne agile w praktyce firmowej Po ukończeniu uczelni czas na prawdziwą szkołę programowania! Spis treści: O AUTORACH PODZIĘKOWANIA WSTĘP 1. PODRÓŻ, KTÓRA CIĘ CZEKA Cel Twojej podróży Mapa Twojej podróży Góra Żółtodzioba Rzeka Szkolenia Przylądek Kontrybutora Ocean Operacyjny Zatoka Kompetencji Pełną parą naprzód! 2. ŚWIADOME DOCHODZENIE DO KOMPETENCJIJak się uczyć, żeby się nauczyć Przygotuj się do nauki Ucz się przez działanie Eksperymentuj z kodem Czytaj Obejrzyj prezentacje Uczestnicz w spotkaniach i konferencjach (z umiarem) Wymiana doświadczeń i współpraca z doświadczonymi inżynierami Eksperymentuj z projektami pobocznymi Zadawanie pytań Zrób research Ramy czasowe Pokaż wykonaną pracę Nie przeszkadzaj Preferuj multicast, komunikację asynchroniczną Zaplanuj żądania synchroniczne Pokonywanie przeszkód w rozwoju Syndrom impostora Efekt Dunninga-Krugera Co należy, a czego nie należy robić Wejdź na wyższy poziom 3. PRACA Z KODEM Entropia oprogramowania Dług technologiczny Rozwiązywanie problemu długu technologicznego Zmienianie kodu Użyj algorytmu zmiany dotychczasowego kodu Pozostaw kod czystszy niż ten, który zastałeś Wprowadzaj zmiany przyrostowo (stopniowo) Bądź pragmatyczny w refaktoryzacji Użyj IDE Stosuj najlepsze praktyki systemu kontroli wersji Unikanie pułapek Użycie nudnych technologii Nie daj się zbałamucić Nie rozwidlaj bez commitowania do źródła Oprzyj się pokusie, by napisać to od nowa Co należy, a czego nie należy robić Wejdź na wyższy poziom 4. PISANIE DZIAŁAJĄCEGO KODU Programowanie defensywne Unikaj wartości zerowych Spraw, aby zmienne były niezmienne Używanie podpowiadania typów i statycznego sprawdzania typów Sprawdzanie poprawności danych wejściowych Korzystaj z wyjątków Precyzyjnie określaj wyjątki Rzucanie wyjątków wcześnie, przechwytywanie wyjątków późno Inteligentne ponawianie prób Stosuj systemy idempotentne Czyszczenie zasobów Rejestrowanie Użyj poziomów dziennika Przechowuj dzienniki atomowe Dbaj o szybkość dzienników Nie rejestruj wrażliwych danych Metryki Wykorzystanie standardowych bibliotek metryk Zmierz wszystko Ślady Konfiguracja Nie kombinuj z konfiguracją Rejestrowanie i sprawdzanie poprawności wszystkich konfiguracji Podaj wartości domyślne Konfiguracja powiązana z grupą Traktuj konfigurację jako kod Utrzymuj porządek w plikach konfiguracyjnych Nie edytuj wdrożonej konfiguracji Narzędzia Co należy, a czego nie należy robić Wejdź na wyższy poziom 5. ZARZĄDZANIE ZALEŻNOŚCIAMI Podstawy zarządzania zależnościami Wersjonowanie semantyczne Zależności przechodnie Piekło zależności Unikanie piekła zależności Wyizoluj zależności Celowe dodawanie zależności Przypinanie wersji Wąski zakres zależności Chroń się przed zależnościami cyklicznymi Co należy, a czego nie należy robić Wejdź na wyższy poziom 6. TESTOWANIE Wielość zastosowań testów Typy testów Narzędzia testowe Biblioteki atrap Frameworki testowe Narzędzia do poprawy jakości kodu Pisanie własnych testów Pisz czyste testy Nie przesadzaj z testowaniem Determinizm w testach Ziarno generatora liczb losowych Nie wywołuj zdalnych systemów w testach jednostkowych Wstrzykiwanie zegarów Unikaj usypiania i przerywania pracy Zamykanie gniazd sieciowych i uchwytów plików Powiązanie z portem 0 Generowanie unikalnych ścieżek do plików i baz danych Wyizoluj i usuń pozostałości stanu testów Nie uzależniaj się od kolejności testów Co należy, a czego nie należy robić Wejdź na wyższy poziom 7. PRZEGLĄDY KODU Dlaczego warto przeglądać kod? Uzyskiwanie przeglądu kodu Przygotuj swój przegląd Zmniejszanie ryzyka dzięki przeglądom projektów Nie wysyłaj recenzji w celu wyzwolenia testów Przechodzenie przez duże zmiany w kodzie Nie przywiązuj się Bądź empatyczny, ale nie toleruj chamstwa Bądź proaktywny Przeglądanie kodu Ocena wniosków o przeprowadzenie przeglądu Zarezerwuj czas na przeglądy Zrozum zmianę Przekaż wyczerpującą informację zwrotną Uznaj to, co dobre Rozróżniaj problemy, sugestie i drobiazgi Nie przybijaj pieczątki na przeglądach Nie ograniczaj się do narzędzi dostępnych na stronach internetowych Nie zapominaj o sprawdzaniu testów Dąż do konkluzji Co należy, a czego nie należy robić Wejdź na wyższy poziom 8. DOSTARCZANIE OPROGRAMOWANIA Fazy dostarczania oprogramowania Strategie rozgałęziania Faza kompilowania Wersja pakietów Oddzielne pakowanie różnych zasobów Faza wydawania Nie rób z wydań kukułczych jaj Publikowanie pakietów w repozytorium wydania Zachowaj niezmienność wydań Częste wydawanie Zachowaj przejrzystość w kwestii harmonogramu wydań Publikowanie dzienników zmian oraz informacji o wydaniu Faza wdrażania Automatyzacja wdrożeń Dokonaj atomizacji wdrożeń Wdrażaj aplikacje w sposób niezależny Faza rozpowszechniania Monitoruj rozpowszechnianie Zwiększanie wydajności dzięki flagom funkcji Zabezpiecz kod za pomocą wyłączników automatycznych Równoległe wersje usług i progi Wdrażaj w trybie ciemnym Co należy, a czego nie należy robić Wejdź na wyższy poziom 9. PEŁNIENIE DYŻURÓW TELEFONICZNYCH Jak działa dyżur telefoniczny? Ważne umiejętności w kontekście dyżurów telefonicznych Bądź dostępny Bądź uważny Ustalaj priorytety pracy Komunikuj się w jasny sposób Śledź swoją pracę Postępowanie w przypadku incydentów Ocena Koordynacja Łagodzenie skutków incydentu Rozwiązanie Dodatkowe zadania Udzielanie wsparcia Nie bądź bohaterem Co należy, a czego nie należy robić Wejdź na wyższy poziom 10. PROCES PROJEKTOWANIA TECHNICZNEGO Stożek procesu projektowania technicznego Myślenie o projektowaniu Zdefiniuj problem Przeprowadź analizę Przeprowadzaj eksperymenty Daj sobie czas Pisanie dokumentacji projektowej Wiedz, po co piszesz Naucz się pisać Aktualizuj dokumentację projektową Korzystanie z szablonu dokumentacji projektowej Wprowadzenie Stan obecny i kontekst Motywacja do zmian Wymagania Potencjalne rozwiązania Proponowane rozwiązanie Projektowanie i architektura Plan testów Plan wprowadzenia Kwestie nierozstrzygnięte Dodatek Współpraca przy projekcie Zrozumienie procesu przeglądu projektu w zespole Nie zaskakuj ludzi Burza mózgów i dyskusje projektowe Udział w projektowaniu Co należy, a czego nie należy robić Wejdź na wyższy poziom 11. TWORZENIE EWOLUUJĄCYCH ARCHITEKTUR Zrozumienie złożoności Projektowanie z myślą o ewolucji Nie będziesz tego potrzebował Zasada najmniejszego zdziwienia Enkapsulacja wiedzy domenowej Ewoluujące API Staraj się, żeby API były małe Udostępnianie dobrze zdefiniowanych API dla usług Zachowaj zgodność zmian API API wersji Ewoluujące dane Wyizoluj bazy danych Używanie schematów Zautomatyzuj migrację schematów Zachowaj zgodność schematów Co należy, a czego nie należy robić Wejdź na wyższy poziom 12. AGILE'OWE PLANOWANIE Manifest Agile Framework planowania zwinnego Scrum Historyjki użytkownika Zadania Szacowanie w punktach Klasyfikacja zadań do zrobienia Planowanie sprintu Stand-upy Przeglądy Retrospektywy Roadmapy Co należy, a czego nie należy robić Wejdź na wyższy poziom 13. PRACA Z MENEDŻERAMI Czym zajmują się menedżerowie Komunikacja, cele i procesy rozwojowe Spotkania 1:1 PPP Cele i kluczowe rezultaty (OKR) Ocena pracownika Zarządzanie w górę Uzyskaj informację zwrotną Przekaż informację zwrotną Omów swoje cele Podejmij działanie, gdy coś nie działa Co należy, a czego nie należy robić Wejdź na wyższy poziom 14. ŚCIEŻKA KARIERY Do poziomu seniora i jeszcze dalej Doradztwo zawodowe Trzymaj się litery T Uczestnictwo w programach inżynierskich Kieruj swoim awansem Ostrożnie zmieniaj miejsca pracy Trzymaj się własnego tempa Refleksje końcowe

Specyfikacja

Podstawowe informacje

Autor
  • Chris Riccomini|Dmitriy Ryaboy
Wybrani autorzy
  • Praca zbiorowa
Wybrane wydawnictwa
  • Onepress
Okładka
  • Broszura
Rok wydania
  • 2022
Ilość stron
  • 248
Tematyka
  • Biznes
  • Programowanie
ISBN
  • 9788328394087