Adresaci Szkolenia:

Szkolenie adresowane jest zarówno do początkujących programistów Java jak i developerów z większym doświadczeniem, którzy pragną rozbudować swój warsztat pracy poprzez zwiększenie swojej efektywności za pomocą automatyzacji wielu codziennych zadań “okołoprogramistycznych” przy zachowaniu kompleksowego podejścia do wysokiej jakości własnej pracy.

Adresatem szkolenia są również osoby decyzyjne i odpowiedzialne w swoich firmach za organizację pracy w zespołach i wyznaczanie standardów pracy w skali firmy.

Cel szkolenia:

Celem szkolenia jest zdefiniowanie i wdrożenie u siebie dobrego warsztatu pracy programisty znanego z innych zawodów cechujących się wysokim poziomiem wyspecjalizowania.

Warsztat ten wesprze u uczestnika m.in.:

  • jakość pracy
  • optymalizację zadań powtarzalnych poprzez ich automatyzację, np. wyzwolenie się z piekła release’owania
  • produktywność i kreatywność poprzez zmniejszenie obciążenia czynnościami żmudnymi
  • świadomość dobrych praktyk zarówno na poziomie kodu, systemu, pracy zespołu i procesów dostarczania.

Wymagania:

Szkolenie w sposób syntetyczny przedstawia zestaw narzędzi wykorzystywanych w codziennej pracy programisty Java, dlatego wymagana jest podstawowa znajomość programowania w tym języku. Doświadczenie w tworzeniu złożonych systemów w dużych zespołach będzie dodatkowym atutem.

Parametry szkolenia:

3*8 godzin (3*7 godzin netto) w proporcji: 80% warsztaty, 20% dyskusje i wykłady.

Wielkość grupy: maks. 8-10 osób.

Program szkolenia

  1. Wprowadzenie
    1. Czy można mówić o rzemiośle programisty?
    2. Czym charakteryzuje się dobry programista?
  2. Wersjonowanie kodu na przykładzie gita
    1. czemu nie SVN?
    2. lokalne i zdalne repozytoria
    3. branche’owanie i merge’owanie
    4. cherry-picking
  3. Budowanie aplikacji za pomocą Apache Maven
    1. zarządzanie zależnościami
    2. parent POMy i dziedziczenie
    3. pluginy
    4. profile
    5. tworzenie repozytorium bibliotek na przykładzie Sonatype Nexus
      1. instalacja
      2. konfiguracja
      3. integracja z Mavenem w pomie
  4. Praca z IDE - Eclipse lub IntelliJ
    1. najczęściej wykorzystywane funkcje
    2. customizacja środowiska
    3. użyteczne pluginy
    4. skróty klawiszowe
  5. Logowanie zdarzeń i informacji na przykładzie log4j
    1. konfiguracja appenderów, loggerów i layoutów
    2. poprawne korzystanie z poziomów logowania
    3. techniki redukcji narzutu logowania na wydajność
  6. Test-Driven Development jako podejście do tworzenia oprogramowania
    1. idea TDD
    2. JUnit
    3. Mockito
    4. Pokrycie kodu testami, np. EmmaPlugin
  7. Dbanie o jakość kodu
    1. CheckStyle
    2. FindBugs
    3. SonarQube
    4. Integracja w/w z Maven
  8. Code review, czyli wspólne dbanie o jakość kodu
    1. strategie code review
    2. Gerrit
  9. Dbanie o jakość aplikacji z wykorzystaniem testów automatyczych
    1. w zależności od potrzeb grupy: Selenium i/lub Robot Framework i/lub Soap UI
  10. Continuous Integration i Continuous Deployment z wykorzystaniem Jenkins
    1. czemu potrzebujemy CI i CD?
    2. konfiguracja zadań
    3. integracja z git
    4. integracja z maven
    5. pluginy
  11. Praca z zadaniami i błędami na przykładzie Atlassian Jira
    1. typowe workflow
    2. integracja z git
  12. Zorientowanie na zadania z pomocą Mylyn
    1. Zadania jako główna jednostka pracy
    2. Zarządzanie zadaniami Jira
    3. Wykonywanie zadań z jednoczesnym ich rozliczaniem i obsługą (1 komentarz, 1 narzędzie, 3 czynności)
    4. Integracja z Eclipse

Pytania?

* Wymagane.


Konsultant on-line
Skorzystaj z usług naszego konsultanta on-line.
Naciśnij przycisk ‘Skorzystaj’ aby przejść do okienka czatu
Kontakt
ul. Nowogrodzka 62c
02-002 Warszawa
Telefon +48 22 2035600
Fax +48 22 2035601
Email