Informacje

Wszystkie szkolenia, jako serie wpisów na blogu, możecie znaleźć pod linkiem szkolenia.

Cały kod, oczywiście znajduje się na githubie. Wszystkie moje projekty oparte są na licencji GPL3.

Jeśli bardzo zależy Wam na jakimś szkoleni, możecie śmiało do mnie pisać. Zobacz zakładkę kontakt.

Ukończone szkolenia

Lista ukończonych szkoleń wraz z linkami:

  •  

Oferta płatnych szkoleń

Dla firm, które pragną podnosić umiejętności swoich pracowników, przygotowałem specjalną ofertę szkoleń. Szkolenia odbywają się tylko zdalnie, ponieważ potrzebuję mieć dostęp do swojego komputera i kodu. Szkolenia można bez problemu nagrywać. Cena szkolenia jest ustalana indywidualnie.

Oto lista przygotowanych szkoleń:

Jest to cały pakiet szkoleń obejmujący:

  • Dokładne omówienie mechanizmów języka C (np. niejawne rzutowanie typów) jak i wszystkich przydatnych słów kluczowych (np. const register, restrict)
  • Przegląd przydatnych funkcjonalności językowych (FAM, Compund Literals, Generic, constexpr, auto)
  • Wprowadzenie do GNU C jako świetnego dialektu języka wykorzystywanego w Linux Kernel
  • Przegląd różnych stylów programowania wraz z ich omówieniem (MISRA, Linux Kernel)
  • Pisanie kodu w sposób czytelny: zasady KISS i DRY
  • Pisanie kodu w stylu obiektowym z zachowaniem zasady SOLID
  • Wprowadzenie hermetyzacji do kodu C (prywatne pola struktury)
  • Tworzenie API w myśl zasady: zero abstraction cost (wymagane w Embedded C)
  • Sposoby na testowanie oprogramowania napisanego w C (również z mockami)
  • Przegląd przydatnych narzędzi do weryfikacji programu (valgrind, fsanitizer, gcov)

Całość trwa około 40h. Każdy punkt jest dokładnie omawiany na podstawie licznych przykładów. Większość kodu, która wymaga benchmarków, posiada rozbudowane zestawy testowe, pokazujące wpływ mechanizmu na szybkość naszego kodu.

Ze względu na tak obszerny zakres szkolenia, umożliwiam wybranie dowolnego podzbioru punktów, które przygotuję. 

Niestety, ale to szkolenie wymaga podstawowej (no może trochę większej niż podstawowa) wiedzy na temat języka C. Jeśli posiadasz sporo Juniorów w swoim zespole, rozważ wykupienie szkolenia Fundamenty C.

Jest to szkolenie dedykowane tym zespołom, które podczas code review, mają 90% komentarzy stylistycznych (np. usuń spację, zmień nazwę, dodaj wcięcia).

Podczas szkolenia odpowiemy sobie na pytania:

  • Jak wygląda hierarchia elementów code review?
  • Jak podejść do tematu code review?
  • Dlaczego Junior MUSI uczestniczyć w code review?
  • Jak poprawnie pisać komentarze podczas code review?
  • Dlaczego code review powinno zajmować sporo czasu?
  • Jak postawić dobry proces code review?
Szkolenie trwa około 3h (jedno spotkanie).

Jest to szkolenie w pełni poświęcone testowaniu kodu napisanego w języku C. Do pełnego zrozumienia tego szkolenia, wymagana jest bardzo dobra znajomość języka C. Jeśli Twój zespół jej nie posiada, rozważ wykupienie szkolenia Nowoczesne C lub chociaż Fundamenty C.

Szkolenie zawiera:

  • Wprowadzenie do testowania oprogramowania
  • Testy jednostkowe
  • Testowanie funkcji statycznych
  • Mockowanie funkcji, w tym systemowych
  • Odwrócone zależności w naszym kodzie
  • Omówienie narzędzia gcov do sprawdzania pokrycia naszego kodu testami
Szkolenie trwa około 4h (jedno spotkanie).

Standard C99 jest najczęściej używanym standardem języka C (również w Embedded). Zatem jego znajomość jest kluczowa. Jeśli zawsze zastanawiałeś się jak wyglądają etapy kompilacji, jak  działa VLA oraz dlaczego nie można porównywać liczb ze znakiem (int) z tymi bez znaku (unsigned) to znaczy, że szkolenie jest dla Ciebie.

Szkolenie obejmuje:

  • Omówienie preprocesora
  • Omówienie etapów kompilacji
  • Przegląd wszystkich słów kluczowych
  • Omówienie mechanizmów języka C (np. rzutowania)
  • Wprowadzenie zasad KISS i czytelnego stylu pisania kodu
  • Omówienie standardowej biblioteki
  • Wyjaśnienie modelu pamięci i pracy z nią (stos vs sterta, padding)
Szkolenie trwa 8h (4 spotkania).

 

Zostałem SCRUM Masterem podczas pandemii, w czasach gdy nagle z biur wszyscy zaczęliśmy pracować z domów. Był to dość trudny okres, każdy to wie. Mnie czekało wtedy kolejne zawodowe wyzwanie. Jako nowy SCRUM Master, musiałem na nowo postawić proces. Oczywiście koła na nowo nie wymyśliłem, ale tak zaimplementowałem framework SCRUM, że nie odczuliśmy w ogóle tego, że pracujemy w domach. Zaledwie kilka elementów pozwoliło doprowadzić do aż 88% przewidywalności estymat i do stałego zwiększenia produktywności zespołu o całe 12%.

Cały proces prześmiewczo nazwano w firmie KScrumem, czyli implementacją frameworka SCRUM przeze mnie (Kukosa). Miałem przyjemność wprowadzić moje metody w kolejnych zespołach, efekty zawsze były pozytywne.

Podczas szkolenia przedstawię mój sposób na implementację SCRUMa. Również pokażę jak w łatwy sposób gromadzić KPIs.

Szkolenie trwa około 3h (jedno spotkanie).

Szkolenie z nazwy przypomina kurs, który każdy musi zaliczyć na studiach informatycznych lub pokrewnych. Jest to tylko zbieżność nazw. Oczywiście szkolenie nie będzie skupiać się na teoretycznej wyższości sortowania szybkiego nad bąbelkowym, czy na sposobie znajdowania ścieżki w grafie. Moje szkolenie skupia się w 100% na przydatnych algorytmach i strukturach danych potrzebnych w życiu Embedded C Developera.

Szkolenie obejmuje:

  • Wstęp do notacji asymptotycznej i jej zastosowania w praktyce
  • Omówienie narzędzi do profilowania kodu
  • Algorytmy wyszukiwania (liniowy i binarny)
  • Algorytmy sortowania (insort, mergesort, quicksort, countsort)
  • Algorytmy mnożenia macierzy
  • Struktura wektor vs lista
  • Struktura BST vs RBT
  • Struktura RBT vs B+
  • Struktura LSM vs B+
  • Struktura HashMap

Szkolenie trwa 10h (5 spotkań). Każdy punkt zawiera dokładne omówienie teoretyczne jak i praktyczne (np. cache i pipeline) wraz z benchmarkami.

Jeśli oferta Cię zaciekawiła skontaktuj się ze mną. Kontakt.