Nauka backendu-u z Mentorem
Nauka programowania w Pythonie może przysporzyć trudności nawet najbardziej zaangażowanej osobie. W szczególności, gdy naszym celem jest znalezienie pracy w ciągu 12 miesięcy.
Napewno atutem nauki Pythona jest to, że pozwala on szukać swojej ścieżki na wielu obszarach:
- Web Development: Django, Flask, FastAPI
- Data Science & Machine Learning: Pandas, NumPy, TenserFlow
- Automatyzacja: Selenium
- DevOps: Ansible
- Testing: PyThes
- Big Data: Apache Spark
Jednak częstym problemem jest brak osoby tj. mentora, który wskaże Ci drogę, jaką należy podążać i odpowie na nurtujące pytania lub pokaże sprawdzone rozwiązania.
Oczywiście może to być brat, kolega lub szwagier, jednak zastanów się czy będzie miał wystarczającą ilość czasu dla Ciebie kosztem swojego wolnego czasu i/lub rodziny.
Musisz też zastanowić się czy ta osoba ma odpowiednie podejście do przekazywania wiedzy. Chyba zgodzisz się ze mną, że wiedza to jedno, a możliwość jej przekazania to drugie.
Chciałbym również, abyś zastanowił się czy poniższe sformułowania są Ci znane?
- Nie wiesz, jakich zagadnień się uczyć i z jakich materiałów korzystać?
- Przerobiłeś kilka kursów, ale żaden nie przyniósł Ci zadowalających efektów?
- Nie wiesz, czy wykonane przez Ciebie zadanie jest zrobione poprawnie? (wiesz tylko, że działa)
- Nie masz do kogo się zwrócić o pomoc i stoisz w miejscu przez godziny, a nawet dni?
- Nie wiesz, jak zacząć swój własny projekt i jak wykorzystać zdobytą wiedzę?
- Potrzebujesz kogoś, kto Cię zmotywuje do nauki i będzie Cię wspierał w trudnych momentach?
- Chcesz przebrnąć przez proces rekrutacji na stanowisko web developera i cieszyć się pracą w branży IT?
Mentor Python z wieloletnim doświadczeniem
Chciałbym Ci w tym wszystkim pomóc razem z Piotrem, który jest autorem materiałów oraz osobą, z którą będziesz miał kontakt podczas mentoringu (o samym Piotrze znajdziesz dokładne informacje akapit niżej)! Wspólnie oferujemy profesjonalny mentoring Python, tj. naukę programowania, która może obejmować zagadnienia związane również z frameworkiem Django.
Podczas współpracy wykorzystujemy autorskie materiały, zadania, projekty i sprawdzone rozwiązania.
Nie tracisz czasu na szukanie materiałów oraz zastanawianie się, czy podążasz w dobrą stronę. Od razu mentor koryguje Twoje błędy i uczy Cię dobrych praktyk. W ten sposób na naukę programowania przeznaczasz mniej czasu i jest ona efektywniejsza.
Kim jest Backend Mentor?
Piotr Dul od 2016 roku zajmuje się nauczaniem programowania, prowadząc mentoring, konsultacje oraz szkolenia dla osób na różnych poziomach zaawansowania — od początkujących po doświadczonych programistów. Jako programista (ponad 10 lat w roli programisty na różnych szczeblach) posiada bogate doświadczenie w pracy nad różnorodnymi projektami i technologiami.
Jest autorem gry dostępnej na Steam, w której kluczowe funkcje napisane są właśnie w Pythonie. Pracował również jako manager zespołu Data Science w globalnej firmie doradczej, co umożliwiło mu zdobycie praktycznej wiedzy na temat zastosowań Pythona w biznesie. Piotr jest także twórcą kursu programowania dla dzieci, który wykorzystuje mechanizmy z gier komputerowych do nauki Pythona, łącząc edukację z elementami zabawy i angażującej interakcji.
Poza pracą w IT, Piotr regularnie występuje jako prelegent na konferencjach technologicznych, takich jak Code Europe, Meet.js i Data Science Summit. Jest także organizatorem nietypowych wydarzeń, w tym kreatywnego game jamu w skansenie. Obecnie pracuje nad symulatorem operacji laparoskopowej w VR, który łączy jego pasję do innowacji i programowania.
Dzięki swojemu praktycznemu podejściu oraz dużej dawce pozytywnej energii i humoru, Piotr nie tylko pomaga kursantom opanować Pythona, ale także motywuje ich do dalszej pracy i wspiera w wykorzystaniu zdobytej wiedzy w osiąganiu swoich celów.
Nauka Django z mentorem?
Django to narzędzie, które pomaga łatwo i szybko budować strony i aplikacje internetowe. Zamiast pisać wszystko od zera, Django dostarcza gotowe rozwiązania, które można wykorzystać, np. system do zarządzania użytkownikami, formularze, a nawet bazę danych. Django organizuje kod w sposób przejrzysty i ułatwia zarządzanie różnymi elementami aplikacji.
Jest to framework typu "full-stack", co oznacza, że obsługuje zarówno część aplikacji widoczną dla użytkownika (frontend), jak i jej działanie "od kuchni" (backend)
Ile kosztuje mentoring z backend-u (Python)?
Mentoring to coś więcej niż usługa z konkretną ceną. To relacja między dwoma osobami, która ma pozwolić osobie doświadczonej (mentorowi) przekazać wiedzę swojemu uczniowi (mentee).
Aby cały proces był efektywny, mentor powinien poznać potencjalnego ucznia: jego obecne doświadczenia, problemy oraz plany na przyszłość. Dopiero po takim wywiadzie może określić, czy współpraca ma szansę zakończyć się sukcesem.
Dlatego początkowy wywiad (rozmowa lub formularz) jest tak istotny. To dzięki niemu będę wiedział, czy mogę Ci pomóc, i tylko po tym procesie będę w stanie przedstawić Ci ofertę.
Czy powinieneś posiadać już jakąś programistyczną wiedzę?
Jeżeli nie pracujesz i cały swój czas chcesz poświęcić na naukę, nie musisz mieć dużego doświadczenia w programowaniu. Jednak dobrze, żebyś przerobił chociaż darmowy materiał o HTML i CSS, aby upewnić się, że programowanie Cię pociąga 😉
Jeśli jednak chcesz połączyć naukę z innymi obowiązkami, powinieneś znać przynajmniej podstawy HTML i CSS (podstawy Phyton mile widziane). To pozwoli Ci szybko przejść przez pierwsze moduły i utrzymać dobre tempo nauki przez następne 6-8 miesięcy.
Co wchodzi w skład mentoringu Python?
Materiały w formie PDF
Mnóstwo, mnóstwo praktyki!
Pisanie kodu przede wszystkim, więc zapewniam kilkadziesiąt zadań oraz kilkanaście projektów. Wszystko uporządkowane tak, by stale utrwalać zdobytą wiedzę.
Poziom zadań/projektów systematycznie wzrasta, aby odpowiednio przygotować Cię do realizowania bardziej rozbudowanych rozwiązań. Pamiętaj też, że każde zadanie można rozwiązać zarówno na poziomie juniorskim, jak i wyższym – wymagania dostosowuję do Twojego poziomu.
Projektami z powodzeniem uzupełnisz swoje portfolio.
Regularny feedback i code review
Każde zadanie i projekt jest sprawdzane przez mentora, która zostawia informację zwrotną, czyli robi przegląd kodu – tzw. code review (zobacz przykład: devmentor.pl/basics-code-review). W ten sposób nabierasz dobrych praktyk i uczysz się na błędach.
Feedback zazwyczaj przesyłany na drugi dzień, co pozwala Ci do razu – gdy jesteś jeszcze w temacie – nanieść ewentualne poprawki i poszerzyć wiedzę, jeśli zajdzie taka potrzeba.
Wykorzystanie AI w nauce i programowaniu
Uczysz się, w jaki sposób korzystać z dobrodziejstw sztucznej inteligencji, aby była ona dla Ciebie sprzymierzeńcem zarówno podczas nauki, jak i samego programowania.
Tempo dostosowane do Twoich umiejętności
Jeśli dopiero zaczynasz swoją przygodę z nauką programowania, to będziemy dokładnie przerabiać każdy moduł, przeznaczając na niego tydzień czy dwa. Jeżeli jednak masz już pewne doświadczenia z programowaniem, to wystarczy, że wykonasz zadania i projekty, abym był pewny, że Twoje umiejętności są na odpowiednio wysokim poziomie. Wtedy na każdy początkowy moduł poświęcimy dzień lub dwa.
Pamiętaj, że w przypadku mentoringu najważniejsze jest zdobycie wiedzy i jej przepraktykownie, a nie „zaliczenie” danego tematu.
Nieograniczone konsultacje 1:1
Codziennie widzisz się na czacie ze swoim mentorem, gdzie służy wskazówkami, gdy utkniesz z kodem. Partie materiału i bieżące problemy omawiasz średnio dwa razy w tygodniu na spotkaniach 1:1 – online na żywo. Takie spotkania możesz nagrywać i wracać do nich w dowolnym momencie. Dodatkowo podczas spotkania łączysz swoje IDE, dzięki czemu w czasie rzeczywistym wraz z mentorem widzicie swój kod – tak jakbyście siedzieli obok siebie 🙂
Wsparcie w procesie rekrutacyjnym
Mam dla Ciebie nie tylko materiały do nauki programowania, ale także poradniki na temat przygotowania do poszukiwania pracy oraz próbną rekrutację! Dzięki nim zorganizujesz sobie wszystko: od CV po profil na GitHubie. Potem wspólnie je przeanalizujemy.
Zawsze możesz też liczyć na wsparcie mentora i naszej społeczności mentees. Często otrzymuję również zapytania od swoich absolwentów lub firm, które ich zatrudniły, czy nie mam jeszcze kogoś do polecenia. W ten sposób możesz trafić do firmy IT z pominięciem pierwszego etapu rekrutacji.
Certyfikat ukończenia mentoringu
DevMentor znajduje się w Rejestrze Instytucji Szkoleniowych, więc otrzymujesz zaświadczenie, które jest zgodne z wytycznymi MEN. Certyfikat jest również w wersji angielskiej, co pozwala Ci udokumentować swoje umiejętności w państwach, gdzie może to być istotne (np. w Szwecji).
Przerwy podczas nauki
Zdobywanie wiedzy to proces, w którym nie tylko liczy się czas przeznaczony na naukę, ale również czas na odpoczynek. W okresie mentoringu możesz wykorzystać łącznie 20 dni wolnego. Dzięki temu nie odnosisz wrażenia, że tracisz pieniądze. Po prostu o ten czas wydłuża się mentoring.
Harmonogram nauki programowania w Pythonie
Harmonogram jest ciągle dostosowywany do realów rynku oraz zapotrzebowania przez firmy dlatego zastrzegamy sobie możliwość zmiany jego zawartości.
Jest to najszybsza ścieżka do znalezienia prierwszej pracy i zdobycia doświadczenia komercyjnego. Następnie można dalej się rozwijać i podążać ścieżką LLM (sztuczna inteligencja, AI) lub Data Science (analityk dsanych)
- Wprowadzenie do programowania i konfiguracja środowiska
- Instalacja Pythona, virtualenv, edytory kodu (VSCode/PyCharm)
- Git i GitHub – podstawy
- Składnia Pythona, podstawowe struktury danych
- Struktury kontrolne i funkcje w Pythonie
- Pętle, instrukcje warunkowe
- Definiowanie i używanie funkcji
- List comprehension, lambda, map, filter
- Programowanie obiektowe (OOP)
- Klasy, obiekty, metody, dziedziczenie, polimorfizm
- Enkapsulacja, abstrakcja
- Praktyki: DRY, KISS
- Testowanie aplikacji - wprowadzenie
- Testy jednostkowe z wykorzystaniem unittest
- Testowanie kodu obiektowego
- Wprowadzenie do testów integracyjnych i frameworków testowych (pytest)
- Podstawy automatyzacji testów z Selenium (testy funkcjonalne)
- Wprowadzenie do baz danych i SQL
- Podstawowe zapytania SQL (SELECT, INSERT, UPDATE, DELETE)
- Typy danych w bazach relacyjnych
- Operacje CRUD
- Relacje w bazach danych i ORM
- Relacje: jeden do jednego, jeden do wielu, wiele do wielu
- Projektowanie i modelowanie tabel
- ORM (SQLAlchemy)
- Podstawy HTML, CSS i JavaScript
- Struktura HTML, stylowanie CSS
- Manipulacja DOM w JavaScript
- Walidacja formularzy
- Django - wprowadzenie
- Instalacja i konfiguracja projektu Django
- Widoki, szablony i modele
- Podstawowe operacje CRUD
- Django - zaawansowane modele i ORM
- Zaawansowane relacje (ForeignKey, ManyToMany)
- Migracje baz danych
- Polimorfizm w modelach Django
- Django REST Framework - podstawy API
- Konfiguracja DRF
- Tworzenie widoków API i serializerów
- Operacje CRUD w API
- Django REST Framework - autoryzacja i JWT
- Uwierzytelnianie z JWT
- Logowanie i rejestracja użytkowników
- Zabezpieczanie endpointów
- Zaawansowane funkcje Django
- Middleware, sygnały, zaawansowane formularze
- Integracja frontendu z backendem (szablony, API)
- Obsługa i walidacja danych użytkownika
- Wprowadzenie do Dockera i konteneryzacja Django
- Instalacja Dockera, Dockerfile
- Docker Compose (konteneryzacja Django + baza danych)
- Uruchamianie aplikacji Django w Dockerze
- Deployment aplikacji Django
- Wdrożenie aplikacji na serwer z Dockerem
- Konfiguracja środowisk (Dev, Test, Prod)
- Praktyki bezpieczeństwa (SSL, zarządzanie kluczami)
- Projekt końcowy i podsumowanie kursu
- Praca nad projektem końcowym (API, JWT, Docker, deployment)
- Code review i best practices
- Finalizacja i prezentacja projektu
Opinie o mnie i mentoringu
Jeśli zastanawiasz się czy jestem właściwą osobą do nauczenia Cię programowania w języku programowania Python wraz z wykorzystaniem framewokra Django to zapraszam Cię na mój profil FB, LinkedIn lub Google. Możesz tam przeczytać opinie osób, z którymi do tej pory współpracowałem.