Hej,
Organizuję grupowe korypetycje online z Ruby/RoR dla osób, które chciałyby się przebranżowić lub podszkolić (poziom junior/junior+). Pod moim okiem samodzielnie stworzysz zaawansowany silnik e-commerce, który będzie Twoją miłą wizytówką przed potencjalnym pracodawcą. Zdecydowanie nie jest to kurs (nie będę prowadzić Cię za rączkę!), a bardziej obóz przetrwania w symulowanych warunkach normalnej pracy. Będziesz pracować w oparciu o taski produktowe rozpisane jak w prawdziwym projekcie, pisać dużo specek, czytać dużo dokumentacji oraz kombinować z resztą grupy jak osiągnąć określony efekt.
Nie wierzę w przedstawianie prawd objawionych w programowaniu - aby zrozumieć pewne mechanizmy, wzorce jak i antywzorce trzeba ten kod przepuścić przez palce. Stąd często nad jednym taskiem będziesz pracować kilka razy - używając różnych technik. Niekiedy specjalnie Cię “wpędzę w maliny”, abyś poznał różnice pomiędzy dobrze napisaną klasą, a złą na własnej skórze.
Spotykamy się dwa razy w tygodniu na callu (każde spotkanie trwa dwie - trzy godziny). Na spotkaniu:
- wspólnie przechodzimy przez wiszące pull requesty (robię review - Wy zadajecie pytania - ja wyjaśniam)
- przegadujemy następny/obecny task
- robię wprowadzenie do nowego zagadnienia (np. SOLID). Jest prezka, live coding itd.
Każdy call nagrywam i udostępniam Wam do obejrzenia, więc jeśli nie będziesz mógł być na spotkaniu to nic straconego.
Co powienieneś umieć nim dołączysz do grupy:
- HTML/CSS na poziomie pozwalającym pracować swobodnie z Bootstrapem 4
- podstawy Ruby i Rails 4+. Powinieneś już teraz umieć samodzielnie stworzyć aplikacje typu blog/księgarnia i w miarę rozumieć co się tam dzieje pod spodem
- język angielski na poziomie czytania ze zrozumieniem dokumentacji technicznej
Jeśli jesteś kompletnie zielony to nic straconego. Odezwij się do mnie na PW, podrzucę Ci materiały do przerobienia.
Funkcjonalności jakie stworzysz i czego się nauczysz:
Store front
- wyświetlenie produktów ze zdjęciami
- wyszukiwarka full-text
- przy okazji poznasz spektrum rozwiązań oraz ich wady i zalety
- koszyk produktów
- zakup produktu oraz dokonanie płatność
- zaimplementujesz multi step checkout
- zintegrujesz sklep z bramką płatniczą:
- prostą (Stripe)
- bardziej skomplikowaną - polski provider, gdzie trzeba już samemu zbudować oraz zaszyfrować payload, obsłużyć request oraz callback
- kupony promocyjne
- grupowanie produktów po kategoriach
Admin
- wyszukiwarka rekordów na podstawie zadanych parametrów
- przejdziemy przez dwa popularne rozwiązania oraz ich wady i zalety
- dynamiczne warianty produktów
- zarządzanie stanami magazynowymi
- użytkownicy oraz ich role
- wykorzystasz pundita do autoryzacji użytkownika
- zbudujesz od podstaw ACL, które pozwolą na dawanie bardzo granularnych uprawnień do zasobów sklepu
- obsługa zamówień w aplikacji
- nauczysz się jak zarządzać stanem rekordu w aplikacji tak aby nie stracić głowy
- zaimplementujesz event logger
- zarządzanie produktami
- skonfigurujesz ActiveStorage pod upload zdjęć na S3
- skonfigurujesz ActionText
- zarządzanie kategoriami
- zaimplementujesz bulk update
- asynchroniczna obróbka zdjęć oraz wysyłka e-maili do klientów
API
- stworzysz RESTowe API z autentykacją oraz paginacją
Podczas pracy nad projektem wykorzystasz:
- dekoratory
- dry-rb stack
- service objects
- workery
- serializery
- wzorce projektowe
Skupimy się również na umiejętnościach moim zdaniem kluczowych dla developera:
- testowanie. Co i jak testować? Dobre i złe praktyki przy pisaniu unit/request/integration specek.
- pracy z dokumentacją
- debuggowanie
- SOLID / OOP
- czytanie cudzego kodu (innych kursantów jak i gemów)
- pracy w zespole
- zaradność
- zadawanie pytań
Skończenie aplikacji powinno Ci zająć ~6-9 miesięcy.
Pracujemy w oparciu o kilka zasad:
- W grupie pomagamy sobie nawzajem - tak samo jak w pracy.
- Jesteśmy dla siebie mili, kulturalni i profesjonali - tak samo jak w pracy.
- Zanim zadamy pytanie szukamy odpowiedzi w Google - tak samo jak w pracy.
- Przykuwamy bardzo dużą uwagę do jakości kodu. Każdy Pull Request musi “być na zielono” z rubocopem, posiadać napisane specki oraz przejść code review - tak samo jak w pracy.
Kilka słów o mnie:
- Programuję komercyjnie w Ruby od 7 lat, a od 5 zajmuję się dodatkowo nauczaniem.
- Byłem mentorem na workshopach Netguru, Rails Girls czy Code Sensei.
- Nauczanie i programowanie to moje dwie pasje, a ich połączenie sprawia mi ogromną frajdę :).
- Mój LinkedIn: https://www.linkedin.com/in/oskarlakner/
Koszt to 1250 zł netto / mc (wystawiam FVAT), dla osób, które zdecydują się przed 15.04.2020 - 1000 zł netto / mc. Jeśli masz jakieś pytania to się nie wahaj i pisz do mnie PW.