Online course
in data science

Want to launch a future-proof career? Data science is the right direction. Build expertise in areas like data visualization, predictive analytics, machine learning, and data science. Learn online under the guidance of our data science experts.
nie musisz mieć doświadczenia – uczymy od podstaw

Kurs Python

Zalety Pythona to prosta składnia i niezrównane możliwości. Od tworzenia stron internetowych po analizę danych i sztuczną inteligencję – Python to narzędzie wszechstronne. Jego ogromna społeczność programistów stale rozwija setki bibliotek i narzędzi, co ułatwi Ci pracę przy różnorodnych projektach. Dołącz do nas i odkryj pełen potencjał Pythona!

Nasi absolwenci rozwijają karierę u największych marek

DLACZEGO
warto wybrać ten kurs

Tworzenie oprogramowania to obecnie najbardziej innowacyjny i praktycznie najlepszy wybór kariery. Jak powiedział Marc Andreessen, amerykański przedsiębiorca, współtwórca przeglądarek Mosaic i Netscape Navigator: „Software zjada świat”. Udowodniono, że miał rację!

Python to język programowania, który przez stałą potrzebę coraz to nowszych aplikacji, cieszy się dziś dużym zainteresowanie. Ale to nie wszystko! Firmy generują obecnie coraz więcej danych, a ich objętość wymaga ludzi, którzy potrafią z tymi danymi efektywnie pracować.

Żyjemy w świecie, w którym technologie władają tym, jak funkcjonują całe gałęzie przemysłu i napędzają innowacje w sektorach – od opieki zdrowotnej po edukację. Wpływ programowania wykracza poza komputery – rozwój technologii pomaga ludziom w prawdziwym życiu.

Wyraź siebie i buduj swoją karierę w stale rozwijającej się branży technologicznej, dzięki Pythonowi.

Pewność zatrudnienia

Rynek potrzebuje utalentowanych programistów. Pożądane dziś umiejętności mogą zapewnić Ci miejsce u wielu pracodawców – od lokalnych przedsiębiorstw po najbardziej znane firmy technologiczne. 

Wysokie zarobki

W zależności od Twoich obowiązków i umiejętności, praca programisty zwykle oznacza dobrą pensję. Firmy są skłonne wydawać duże pieniądze na talenty, więc będziesz mieć szansę na wysokie zarobki.

Dostęp do innowacji

Dzięki technologicznym kompetencjom nie jesteś tylko biernym obserwatorem cyfrowej rewolucji – aktywnie w niej uczestniczysz. Jako programista będziesz w centrum innowacyjnych projektów.

Elastyczność

Praca zdalna to dodatek, który w ofertach dla osób z branży technologicznej jest raczej regułą niż przywilejem. Dla Twojego pracodawcy najważniejsze będzie to, jak, a nie skąd pracujesz.

Czego
nauczysz się w trakcie kursu

W tym bloku kursu skupimy się na nauce programowania w Pythonie od podstaw. Bez względu na Twój poziom wiedzy, zaczniemy od prostych kroków i wprowadzimy Cię w świat programowania.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku:

  1. Zrozumiesz podstawy Pythona.
    Nauczysz się składni Pythona, będziesz tworzyć zmienne, operacje matematyczne oraz logiczne. To jak nauka od podstaw nowego języka – zaczynasz od alfabetu i prostych zdań, a następnie stopniowo budujesz bardziej zaawansowane umiejętności językowe. Na przykład, będziesz w stanie tworzyć zmienne, które przechowują różne typy danych (liczby, tekst), wykonywać operacje matematyczne (dodawanie, odejmowanie) oraz logiczne (porównania, operatory logiczne). Dzięki tym umiejętnościom, napiszesz  podstawowe programy w Pythonie, co stanowi kluczowy krok w nauce programowania.

  2. Będziesz kontrolować przepływ programu. 
    Zrozumiesz instrukcje warunkowe (if-else) oraz pętle, które pozwalają kontrolować przepływ programu. Będziesz po prostu decydować o tym, co robi program. Zrozumiesz jak napisać komendy, które wydają polecania programowi. Na przykład, jeśli piszesz program, który ma sterować temperaturą w mieszkaniu, komendy sprawią, że gdy będzie zimno, włączy się ogrzewanie, a gdy będzie gorąco, włączy się wentylator. 

  3. Pracować z listami i pętlami.
    Nauczysz się operować na listach przy użyciu pętli, dzięki czemu będziesz wykonywać powtarzalne operacje na danych. To jak sortowanie kart. Wyobraź sobie, że masz karty z różnymi imionami. Chcesz je przeglądać i czytać. Operowanie na listach i pętle to tak, jakby przeglądać każdą kartę po kolei i odczytywać z ich imiona.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Automatyzacja zadań: możesz napisać skrypty, które automatyzują powtarzalne zadania. Na przykład, jeśli masz dużą kolekcję plików tekstowych i chcesz znaleźć konkretne słowo lub frazę we wszystkich plikach, napiszesz skrypt, który zrobi to za Ciebie.

  • Prognoza pogody: Python jest doskonały do analizy danych. Możesz nauczyć się, jak przetwarzać i analizować dane w różnych formatach. Na przykład, możesz napisać skrypt, który oblicza średnią temperaturę z zestawu danych o temperaturach z różnych dni.

  • Rozrywka: stworzysz proste gry w konsoli. Możesz stworzyć zgadywankę, w której komputer losuje liczbę, a Ty próbujesz ją odgadnąć, lub grę w wisielca, gdzie musisz zgadnąć ukryte słowo.

  • Finanse: Pythona używamy do pobierania danych ze stron internetowych. Na przykład, jeśli interesuje Cię kurs walut, możesz napisać skrypt, który automatycznie pobierze aktualne dane z witryny internetowej banku.

  • Administracja: skrypty Pythona mogą pomóc Ci w automatyzacji zadań administracyjnych na komputerze lub serwerze. Na przykład, możesz napisać skrypt, który regularnie archiwizuje ważne pliki na Twoim komputerze lub automatycznie przenosi pliki z jednego folderu do drugiego.

W tym bloku nauczysz się jak wygodnie zarządzać projektem przy użyciu popularnego systemu kontroli wersji Git. Opanujesz kluczowe aspekty, które pomogą Ci skutecznie współpracować z innymi programistami i śledzić historię zmian w Twoim kodzie.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku:

  1. Będziesz obsługiwać podstawowe polecenia linii komend.
    Nauczysz się podstawowych komend Git w wierszu poleceń. Będziesz rozpoczynać nowe projekty, dodawać zmiany oraz śledzić ich historię.

  2. Będziesz zarządzać repozytorium Git.
    Nauczysz się obsługiwać Git. Poznasz podstawowe czynności, takie jak rozpoczęcie nowego projektu, dodawanie zmian, zapisywanie postępów, tworzenie różnych wersji projektu oraz współpracę z innymi programistami.

  3. Będziesz korzystać z interfejsów graficznych.
    Dowiesz się, jak korzystać z różnych interfejsów graficznych, takich jak SourceTree, GitHub Desktop czy PyCharm, do zarządzania projektem. Te narzędzia oferują bardziej intuicyjny sposób pracy z Git, zwłaszcza jeśli wolisz graficzny interfejs.

  4. Wykonasz ćwiczenia na platformach GitHub/BitBucket/GitLab.
    Przećwiczysz zdobytą wiedzę podczas pracy na rzeczywistych projektach na popularnych platformach hostingowych. 

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Współpraca z zespołem: dzięki Gitowi, możesz pracować nad projektem zespołowym i śledzić oraz łączyć zmiany innych członków zespołu.

  • Kontrola historii zmian: możesz śledzić historię zmian w projekcie, co ułatwia identyfikację błędów i powrót do wcześniejszych wersji kodu.

  • Praca z otwartym źródłem: Git jest nieodzowny w pracy z projektami open source, gdzie wielu programistów łączy wysiłki nad jednym projektem.

  • Zarządzanie wersjami aplikacji: przy użyciu Gita można skutecznie zarządzać różnymi wersjami swojej aplikacji, co ułatwia utrzymanie i rozwijanie oprogramowania.

W tym bloku zanurzymy się głębiej w technologiczny świat Pythona. Poznasz kluczowe narzędzia i środowiska, które umożliwią Ci skuteczną pracę z tym językiem programowania.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku:

  1. Będziesz konfigurować środowisko Pythona.
    W trakcie kursu nauczysz się, jak skonfigurować swoje środowisko programistyczne tak, aby móc wygodnie pracować z Pythonem na Twoim komputerze. Pomożemy Ci zainstalować Python oraz przygotować środowisko do tego, aby tworzyć i uruchamiać skrypty.

  2. Będziesz korzystać z interpretera Pythona. 
    Zdobędziesz umiejętność obsługi interpretera Pythona. Dzięki temu będziesz szybko pisać i testować skrypty Pythona, co jest kluczowe w eksperymentowaniu z językiem i rozwijaniu własnych rozwiązań.

  3. Stworzysz wirtualne środowisko.
    Poznasz technikę tworzenia odizolowanych środowisk Pythona. Pozwoli Ci to na pracę nad różnymi projektami, które mogą wymagać wielu wersji bibliotek czy modułów. Dzięki temu unikniesz konfliktów w zależnościach.

  4. Zarządzisz paczkami z pip. 
    Dowiesz się, jak instalować i zarządzać różnymi bibliotekami i narzędziami Pythona za pomocą systemu pip. To kluczowa umiejętność, która umożliwi Ci wykorzystanie gotowych rozwiązań w swoich projektach.

  5. Będziesz pracować z IDE PyCharm.
    Poznasz popularne środowisko programistyczne PyCharm, które oferuje wygodne narzędzia do pracy z Pythonem. Dzięki temu będziesz efektywniej programować, debugować i zarządzać swoimi projektami.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Tworzenie aplikacji webowych: gdy wykorzystasz frameworki takie jak Django czy Flask, stworzysz dynamiczne strony internetowe. Na przykład, jeśli chcesz stworzyć stronę, na której użytkownicy mogą dodawać i edytować swoje ogłoszenia, frameworki te pozwolą Ci szybko zbudować taką funkcjonalność.

  • Analiza danych i sztuczna inteligencja: Python jest popularny w dziedzinie analizy danych, uczenia maszynowego oraz sztucznej inteligencji. Dzięki bibliotekom takim jak Pandas, NumPy, TensorFlow czy PyTorch, możesz przetwarzać dane, tworzyć modele predykcyjne i rozwiązywać zaawansowane problemy. Na przykład, jeśli masz zbiór danych, który zawiera informacje o klientach i chcesz przewidzieć ich preferencje zakupowe, Python z bibliotekami do uczenia maszynowego pozwoli Ci stworzyć taki model.

  • Automatyzacja zadań: Python doskonale sprawdza się w automatyzacji powtarzalnych zadań. Na przykład, jeśli co tydzień otrzymujesz raporty w formie plików tekstowych i musisz je przetwarzać, Python pozwoli Ci napisać skrypt, który automatycznie dokona analizy tych raportów i wygeneruje potrzebne dane.
  • Rozwój gier: dzięki bibliotece Pygame, Python może być używany do tworzenia prostych gier komputerowych. Możesz stworzyć grę, w której postać unika przeszkód lub zbiera punkty.

  • Tworzenie aplikacji desktopowych: za pomocą narzędzi takich jak Tkinter lub Kivy, możesz tworzyć aplikacje z graficznym interfejsem użytkownika. Na przykład, jeśli chcesz stworzyć prosty program do obsługi listy zadań, Python z Tkinter pozwoli Ci stworzyć taką aplikację.

W tym module poszerzymy Twoją wiedzę o testowaniu i praktykach związanych z Test-Driven Development (TDD). Dowiesz się, jak pisać testy, które pomogą Ci weryfikować poprawności Twojego kodu i utrzymywać go w dobrej kondycji przez cały czas.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku:

  1. Będziesz znać zasady i techniki testowania. 
    Głębiej zrozumiesz zasady testowania, w tym jednostkowego, integracyjnego i akceptacyjnego, oraz nauczysz się, jak pisać testy, które sprawdzą poprawność Twojego kodu. Na przykład, jeśli piszesz program, który oblicza wyniki matematyczne, aby go przetestować, musisz wprowadzić różne dane wyjściowe i sprawdzić, czy otrzymujesz właściwe wyniki.

  2. Wykorzystasz TDD w praktyce.
    Nauczysz się metodyki TDD, która polega na pisaniu testów przed napisaniem właściwej implementacji. To podejście pozwoli Ci lepiej rozumieć wymagania i łatwiej utrzymywać wysokiej jakości kod. To jak konstrukcja budynku. Zanim zaczniesz wznosić ściany, musisz mieć precyzyjne plany i sprawdzić, czy znajdują się na nim wszystkie elementy. W programowaniu, TDD to proces, który wymusza na Tobie, aby stworzyć testy, które opisują oczekiwane zachowania Twojego kodu, jeszcze zanim przystąpisz do jego implementacji.

  3. Będziesz korzystać z bibliotek do testowania.
    Poznasz popularne biblioteki takie jak unittest, pytest i nose2, które ułatwią Ci pisanie i uruchamianie testów w Pythonie. Możemy to porównać do korzystania ze specjalistycznego sprzętu lub narzędzi w pracy. Biblioteki do testowania są zestawami gotowych rozwiązań, które oferują Ci różnorodne funkcje do tego, aby tworzyć i wykonywać testy.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Testy jednostkowe: stworzysz testy, które sprawdzą poprawność pojedynczych fragmentów kodu i upewnisz się, że działają zgodnie z oczekiwaniami. Na przykład, jeśli masz funkcję, która dodaje dwie liczby, napiszesz test jednostkowy, który sprawdzi, czy funkcja zwraca prawidłowy wynik dla różnych zestawów liczb.

  • Testy integracyjne: napiszesz testy, które sprawdzą, czy różne komponenty Twojej aplikacji współpracują ze sobą poprawnie. Na przykład, jeśli masz część aplikacji, która pobiera dane z bazy danych i inny fragment, który je przetwarza, test integracyjny upewni się, że te dwie części działają razem poprawnie.

  • Testy akceptacyjne: skonfigurujesz testy, które sprawdzą, czy cała aplikacja spełnia założone wymagania i działa zgodnie z oczekiwaniami użytkowników. To może dotyczyć scenariuszy użytkowania, takich jak testowanie procesu rejestracji na stronie internetowej, aby upewnić się, że nowy użytkownik może utworzyć konto.

  • Rozwijanie aplikacji z TDD: będziesz tworzyć kod, który spełnia określone wymagania od samego początku. Na przykład, jeśli tworzysz aplikację do zarządzania zadaniami, zaczniesz od napisania testu, który sprawdza, czy możesz dodać nowe zadanie, a następnie zaimplementujesz kod, który to umożliwia. Dzięki temu unikniesz błędów i utrzymasz stabilną aplikację.

W tym bloku posuniemy się jeszcze dalej i nauczymy Cię zaawansowanych konceptów i technik. Pozwolą Ci one pisać bardziej skomplikowane i efektywne programy.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku:

  1. Wykorzystasz wyrażenia regularne. 
    Będziesz przetwarzać i manipulować tekstem za pomocą wyrażeń regularnych. To niezwykle przydatne w analizie i przetwarzaniu danych tekstowych. Dzięki wyrażeniom regularnym, możesz szybko wyciągnąć tylko te fragmenty, które Cię interesują, bez konieczności ręcznego przeszukiwania całego tekstu.
  2. Będziesz tworzyć wyrażenia lambda. 
    Nauczysz się, jak tworzyć funkcje lambda, które są małymi, jednorazowymi funkcjami, użytecznymi w wielu różnych kontekstach. Możesz szybko i łatwo je zdefiniować. Nie musisz nadawać im specjalnej nazwy. Są użyteczne w wielu różnych sytuacjach, gdy musisz szybko wykonać jakąś operację, która nie wymaga pełnej funkcji. Dzięki nim możesz skrócić i uprościć swój kod, co sprawia, że jest bardziej czytelny i zwięzły. Na przykład, jeśli potrzebujesz przekształcić elementy w liście w inny sposób, funkcje lambda są do tego doskonałym narzędziem.

  3. Będziesz obsługiwać wyjątki.
    Nauczysz się, jak obsługiwać sytuacje, które mogą spowodować błędy lub problemy w Twoim programie. Te sytuacje nazywamy wyjątkami. Umiejętność obsługi wyjątków jest niezwykle ważna, ponieważ dzięki temu łatwo poradzisz sobie z ewentualnymi problemami w Twoim kodzie.

  4. Przeprowadzisz operacje na plikach.
    Nauczysz się jak czytać i zapisywać dane do plików, co jest kluczowe w pracy z danymi na dłuższą metę. Pomyśl o plikach jak o kontenerach, w których możesz przechowywać różnego rodzaju informacje, takie jak tekst, obrazy, czy nawet dane w formie tabelarycznej. Dzięki umiejętności pracy z plikami, będziesz w stanie tworzyć programy, które mogą przechowywać i analizować dane w sposób bardziej trwały i zorganizowany.

  5. Zrozumiesz wielowątkowość. 
    Poznasz podstawy wielowątkowości, co pozwoli Ci na to, aby wykonywać zadania równolegle i zwiększać wydajność aplikacji. Aby zobaczyć, jak działa wielowątkowość, możemy porównać to do pracy w zespole. Wyobraź sobie, że masz zespół ludzi, z którymi możesz równocześnie pracować nad różnymi aspektami projektu. Zespołowość przyspiesza wykonanie zadania, tak samo jak wielowątkowość przyspiesza wykonywanie zadań w Twoim programie.

  6. Zaimplementujesz dekoratory. 
    Stworzysz dekoratory, które pozwalają na modyfikację funkcji w przejrzysty i elastyczny sposób. Na przykład, jeśli masz bazową funkcję, to dekoratory pozwalają na dodać dodatkowe akcje lub właściwości do tej funkcji bez konieczności ingerencji w jej podstawowy kod. Załóżmy że masz funkcję, która zwraca wynik pewnej operacji matematycznej. Chcesz jednak, aby wynik tej funkcji był zawsze dodatkowo zaokrąglany w górę. Dekorator pozwoli Ci to zrobić bez konieczności zmiany samej funkcji.

  7. Będziesz pracować ze strumieniami. 
    Nauczysz się korzystać z operacji na strumieniach, dzięki czemu będziesz efektywniej przetwarzać duże ilości danych. Możemy to porównać do płynącej rzeki danych, gdzie informacje płyną przez Twój program jedna po drugiej. Dzięki temu, nawet jeśli masz do czynienia z ogromną ilością danych, nie musisz trzymać ich wszystkich w pamięci komputera na raz. A to zwiększa efektywność i wydajność Twojego programu.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Marketing: wyobraź sobie, że musisz wysłać mejling do dużej grupy odbiorców. Masz listę adresów mejlowych i chcesz wyłuskać z nich tylko te, które kończą się na „@gmail.com”. Wyrażenia regularne pozwolą Ci zrobić to szybko i precyzyjnie.

  • Finanse: funkcje lambda są przydatne w wielu sytuacjach, na przykład w sortowaniu, filtrowaniu czy mapowaniu danych. Załóżmy, że masz listę liczb i chcesz stworzyć nową listę, która zawiera tylko parzyste liczby. Funkcje lambda pozwolą Ci to zrobić w prosty i zwięzły sposób.

  • Rozwój oprogramowania: aby stworzyć stabilne i niezawodne oprogramowanie, musisz umieć obsługiwać wyjątki. Jeśli piszesz program, który pobiera dane od użytkownika, warto mieć zabezpieczenie na wypadek, gdyby użytkownik wprowadził coś nieoczekiwanego. Obsługa wyjątków pozwoli Ci elegancko zareagować na takie sytuacje.

  • Logistyka: skrypty do przetwarzania plików mogą być używane do efektywnego zarządzania danymi o dostawach i magazynowaniu. Na przykład, jeśli masz plik z zamówieniami, możesz go przetworzyć, aby zaktualizować stan magazynu.

  • IT: wielowątkowość jest ważna w aplikacjach sieciowych, gdzie jednocześnie może być obsługiwanych wielu klientów. Jeśli pracujesz nad aplikacją internetową, musisz umieć obsłużyć równoczesne żądania od wielu klientów.

  • Analityka danych: strumienie są przyda Ci się w pracy z dużymi danymi, gdzie wczytywanie całego zbioru danych do pamięci nie jest wydajne. Jeśli pracujesz z bardzo dużą ilością danych, które nie mieszczą się w pamięci komputera, strumienie pozwolą Ci na efektywne przetwarzanie tych danych, dzięki temu, że będziesz wczytywać je fragmentami.

W tym bloku poznasz narzędzia, które sprawią, że Twoje programy będą działały szybciej i sprawniej. Zrozumiesz, jak używać różnych struktur danych i jak planować różne sposoby działania (algorytmy) w Twoim programie.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Zrozumiesz i będziesz implementować podstawowe struktury danych. 
    Będziesz przechowywać i organizować różne rodzaje informacji w swoim programie. Nauczysz się jak tworzyć i manipulować strukturami takimi jak listy, stosy, kolejki, drzewa, grafy i wiele innych. Porównajmy to do organizowania rzeczy w różnych skrzynkach i szufladach. Na przykład, jeśli masz listę zadań do wykonania, możesz użyć listy do ich przechowywania. Jeśli potrzebujesz przechować dane w sposób, który pozwoli na szybkie dodawanie i usuwanie elementów na początku, stos będzie odpowiednią strukturą. Jeśli natomiast masz do czynienia z danymi, które mają skomplikowane powiązania między sobą, bardzo docenisz drzewa i grafy.

  2. Będziesz rozwiązywać problemy algorytmiczne. 
    Dzięki temu, że będziesz wiedzieć, jak rozwiązywać problemy algorytmiczne, podejdziesz do różnych wyzwań programistycznych w sposób zorganizowany i skuteczny. To jak rozwiązywanie łamigłówek logicznych lub układanie klocków w odpowiedni sposób. Załóżmy, że masz listę słów i chcesz je uporządkować alfabetycznie – użyjesz algorytmów sortowania. Jeśli musisz znaleźć najkrótszą trasę do celu na mapie, skorzystasz z algorytmu do szukania ścieżki.

  3. Będziesz analizować złożoność czasową i pamięciową. 
    Nauczysz się, jak sprawdzić, czy Twój program nie zużywa zbyt dużo pamięci. To jak kontrolowanie, czy masz odpowiednie narzędzia i surowce do wykonania zadania. W programowaniu, złożoność czasowa i pamięciowa to miary, które pozwalają Ci oszacować, jak szybko i wydajnie działa Twój program.

  4. Będziesz wybierać odpowiednie struktury danych. 
    Dowiesz się, jak dobrać odpowiednią strukturę danych do konkretnego problemu, przez co stworzysz programy szybciej. Możemy to porównać do wyboru odpowiedniego narzędzia do konkretnej pracy. Jeśli masz do wykonania zadanie, które wymaga precyzyjnego sortowania danych, wybór właściwej struktury danych pozwoli Ci to zrobić szybciej i z większą dokładnością.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Sortowanie i wyszukiwanie: to jak uporządkować rzeczy lub znaleźć dokładnie to, czego szukasz w programach, tak jak rozmieszczenie słów w słowniku lub szukanie ulicy w książce adresowej.

  • Grafy i najkrótsze ścieżki: struktury danych i algorytmy grafowe są wykorzystywane w nawigacji, sieciach społecznościowych i analizie sieci. Prościej? Praktyczniej? Możesz wykorzystać tę wiedzę prywatnie, na przykład gdy planujesz trasę na wakacje i chcesz znaleźć najkrótszą drogę!

  • Drzewa i struktury hierarchiczne: wyobraź sobie, że tworzysz bazę danych dla szkoły. Możesz utworzyć drzewo hierarchiczne, gdzie dyrektor to główny korzeń tego drzewa, a każda klasa to gałąź. W klasach mogą być uczniowie, a uczniowie mogą mieć oceny. Dzięki temu drzewu możesz łatwo znaleźć informacje o dowolnym uczniu lub klasie.

  • Dynamiczne programowanie: to podejście, które pomaga Ci rozwiązywać problemy, które możesz podzielić na mniejsze części. To jak układanie puzzli, gdzie skupiamy się na jednym kawałku naraz, zamiast patrzeć na całość od razu.

  • Kolejki priorytetowe: to jak obsługa w sklepie, gdzie osoba z bardziej pilnymi potrzebami zostaje obsłużona wcześniej. W programowaniu, kolejki priorytetowe pomagają w wykonywaniu najważniejszych zadań w pierwszej kolejności. Przykład? W grze komputerowej, AI (sztuczna inteligencja) może używać kolejki priorytetowej do podjęcia decyzji o najważniejszych ruchach, tak aby gra była interesująca i wymagająca.

  • Algorytmy grafowe: to jak znalezienie najlepszej drogi, aby dostać się z punktu A do punktu B w skomplikowanym układzie dróg. W programowaniu, algorytmy grafowe pomagają w rozwiązywaniu problemów, które dotyczą trasa i połączeń między różnymi punktami. Na przykład w nawigacji samochodowej, algorytmów grafowych użyjesz do tego, aby obliczyć najkrótszą trasę z uwzględnieniem różnych nawierzchni i ograniczeń. 

W tym bloku zajmiemy się kluczowymi wzorcami projektowymi oraz praktykami, które są nieodzowne w profesjonalnym programowaniu. Zdobędziesz wiedzę, która pozwoli Ci tworzyć rozwiązania, które są nie tylko wydajne, ale także łatwe w utrzymaniu i rozbudowie.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Zastosujesz najważniejsze wzorce projektowe.
    Nauczysz się, jak wykorzystać uznane wzorce projektowe, takie jak między innymi Singleton, Fabryka, Obserwator i wiele, zgodnie z zasadami opisanymi w książce „Design Patterns: Elements of Reusable Object-Oriented Software” (GoF). Przyjrzymy się sytuacjom, w których można zastosować te wzorce w praktyce. Na przykład, gdy tworzysz system obsługi zamówień online, wzorzec Singleton pozwoli Ci utrzymać jedną instancję koszyka zakupowego, dzięki czemu unikniesz nieporozumień związanych z liczbą towarów w koszyku. Co to oznacza w praktyce? Jeśli dwóch klientów dodaje produkty do swoich koszyków w tym samym czasie, obie te akcje będą operować na jednej i tej samej instancji koszyka. Dzięki temu unikasz sytuacji, w której jeden klient mógłby widzieć zmiany wprowadzane przez drugiego klienta w swoim koszyku.

  2. Stworzysz własne wzorce projektowe. 
    Opanujesz sztukę tworzenia własnych wzorców projektowych, które będą idealnie dopasowane do specyfiki Twojego projektu. Przyjrzymy się sytuacjom, w których to, że stworzysz własny wzorzec, znacząco usprawni strukturę i organizację kodu. Na przykład, gdy tworzysz system zarządzania treścią, możesz stworzyć wzorzec „Moduł treści”, przez który będziesz elastycznie dodawać, edytować i usuwać różne typy treści na stronie.

  3. Zastosujesz Python Style Guide. 
    Poznasz wytyczne formatowania kodu w Pythonie, które sprawią, że Twój kod będzie czytelny i spójny. Gdy zastosujesz te wytyczne, ułatwisz pracę zespołowi programistów nad projektem. Co to oznacza? Gdy będziesz konsekwentnie formatować kod, inni członkowie zespołu z łatwością zrozumieją i będą z Tobą lepiej współpracować nad funkcjonalnościami projektu.

  4. Wdrożysz dobre praktyki kodowania.
    Zrozumiesz i nauczysz się stosować zasady takie jak clean code, S.O.L.I.D., GRASP, KISS, DRY, YAGNI oraz Prawo Demeter. Te praktyki pomogą Ci tworzyć czytelny, elastyczny i łatwy do rozbudowania kod. Gdy zastosujesz zasady „Single Responsibility Principle” (S.O.L.I.D.), każda klasa lub funkcja będzie odpowiedzialna tylko za jedną konkretną rzecz, co pomoże Ci utrzymać i testować kod.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Strona z przepisami kulinarnymi: za pomocą Django lub Flask możesz stworzyć stronę, na której użytkownicy dodają i przeglądają różne przepisy kulinarne. Frameworki te ułatwią Ci to, aby stworzyć funkcje takie jak dodawanie, edytowanie i wyświetlanie przepisów.

  • Sklep internetowy z wieloma funkcjonalnościami: jeśli chcesz stworzyć sklep internetowy, zamiast jednej dużej aplikacji, możesz użyć mikrousług. Każda z nich może obsługiwać różne funkcje, takie jak płatności czy zarządzanie koszykiem. To sprawi, że cały system będzie bardziej elastyczny i łatwiejszy do rozbudowy.

  • Aplikacja do zarządzania zadaniami: jeśli tworzysz aplikację, w której użytkownicy mogą dodawać i przeglądać różne zadania, ważne jest, aby każda strona miała aktualne informacje. System zarządzania pozwoli śledzić i aktualizować dane w różnych częściach aplikacji.

  • Gra z postaciami, które mogą się rozwijać: wyobraź sobie, że projektujesz grę, w której gracze kontrolują postacie. Zdobywają one umiejętności i przedmioty w trakcie rozgrywki. W takiej grze, system zarządzania będzie śledził zmiany i synchronizował informacje o postaciach i ich zdolnościach.

W tym bloku nauczysz się korzystać z baz danych i języka SQL. To bardzo ważne, jeśli chcesz tworzyć aplikacje, które przechowują i manipulują danymi. Będziesz także poznawać zaawansowane sposoby pracy z zapytaniami, czyli poleceniami, które wysyłasz do baz danych. 

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Zaprojektujesz struktury bazy danych.
    To proces, w którym ustalasz, jak będą przechowywane i zorganizowane dane w bazie danych. To jak projektowanie szafek i półek, aby rzeczy były poukładane w idealnym porządku. W przypadku sklepu internetowego, musisz zdecydować, jakie informacje o produktach będą przechowywane, takie jak nazwa, cena, opis, i jak będą ze sobą powiązane.

  2. Będziesz manipulować danymi przy użyciu SQL.
    Poznasz metodę, dzięki której możesz dodawać, usuwać, aktualizować i wybierać dane za pomocą języka nazywanego SQL (Structured Query Language). Można to porównać do zarządzania produktami w sklepie – dodajesz nowe, zmieniasz ceny lub usuwasz te, które nie są już dostępne.

  3. Stworzysz skomplikowane zapytania.
    To umiejętność zadawania bardziej skomplikowanych pytań do bazy danych, po to, aby uzyskać konkretne informacje. To jak pytanie do pracownika sklepu o rekomendację produktów, które spełniają określone kryteria, na przykład produkty tańsze niż 50 złotych.

  4. Będziesz pracować z transakcjami.
    Transakcje są grupami operacji na danych, które muszą być wykonane razem lub w ogóle. To jak kupowanie wielu produktów w sklepie – albo wszystkie trafiają do koszyka, albo żaden. Na przykład, kupujesz trzy różne produkty w sklepie. W ramach transakcji musisz dodać trzy produkty do koszyka i sfinalizować zakup. Jeśli któraś z tych operacji nie powiedzie się, cała transakcja zostanie cofnięta.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Sklep internetowy: wyobraź sobie, że przeglądasz sklep internetowy w poszukiwaniu idealnej pary butów sportowych. Kiedy klikasz przycisk „Dodaj do koszyka”, za kulisami dzieje się coś magicznego. Informacje o tych butach zapisują się w bazie danych sklepu. Dzięki temu, kiedy wrócisz do sklepu później, Twoje buty wciąż będą w koszyku, nawet jeśli zamkniesz stronę i wrócisz na nią później.

  • Aplikacja społecznościowa: korzystasz z aplikacji społecznościowej, na której dzielisz się zdjęciami z wakacji. Kiedy dodajesz nowego znajomego, aplikacja musi zapamiętać, że teraz jesteście ze sobą połączeni. Informacje o tej relacji zostają zapisane w bazie danych, dzięki czemu aplikacja wie, że ta osoba, może teraz zobaczyć Twoje zdjęcia.

  • System rezerwacji: planujesz wakacje i chcesz zarezerwować pokój w hotelu. Kiedy robisz rezerwację,  system musi sprawdzić, czy pokój jest dostępny w wybranym przez Ciebie terminie. Jeśli tak, system zapisuje w bazie danych informacje o Twojej rezerwacji i rezerwuje dla Ciebie pokój.

W tym bloku zajmiemy się bazami danych w Pythonie, co jest kluczowe, aby tworzyć aplikacje, które przechowują, organizują i manipulują danymi w sposób efektywny i niezawodny.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Będziesz obsługiwać oprogramowanie baz danych SQL. 
    Będziesz tworzyć i zarządzać bazami danych, co jest niezbędne, aby budować różnego rodzaju aplikacje. Na przykład, stworzysz tabelę w bazie danych, która będzie przechowywać informacje o produktach w sklepie internetowym.

  2. Poznasz narzędzie AQL Alchemy.
    SQL Alchemy to narzędzie, które sprawia, że Twoja praca z bazami danych w Pythonie jest znacznie prostsze. Dzięki niemu, możesz szybko tworzyć modele danych – czyli szablony, jak mają wyglądać dane – i wykonywać różne operacje na bazie danych, takie jak dodawanie, usuwanie czy odczytywanie informacji. Na przykład, jeśli tworzysz aplikację do przechowywania danych o użytkownikach, SQL Alchemy pozwoli Ci zdefiniować, jakie informacje będą przechowywane – na przykład imię, wiek, adres mejlowy. Później, kiedy będziesz dodawać nowego użytkownika lub pobierać dane o konkretnym użytkowniku z bazy danych, z pomocą SQL Alchemy będzie to łatwiejsze.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Aplikacją z bazami danych: wyobraź sobie, że tworzysz aplikację do zarządzania biblioteką. Baza danych przechowuje informacje o książkach, ich autorach oraz dostępności. Możesz szybko znaleźć konkretną książkę lub sprawdzić, czy jakiś autor ma więcej tytułów w kolekcji.

  • Analiza danych: załóżmy, że masz dostęp do danych, które dotyczą sprzedaży w sklepie od lat. Chcesz dowiedzieć się, które produkty cieszą się największą popularnością w określonym sezonie. Dzięki bazie danych i umiejętności analizy danych, w łatwy sposób wygenerujesz raporty, które zawierają potrzebne informacje.

  • Aplikacje webowe: wyobraź sobie stronę internetową z ogłoszeniami o wynajmie mieszkań. Dzięki bazie danych, użytkownicy mogą dodawać ogłoszenia, a inni mogą wyszukiwać oferty według różnych kryteriów, takich jak lokalizacja, cena czy liczba pokoi. To wszystko jest przechowywane i aktualizowane w bazie danych.

W tym module nauczysz podstaw protokołu HTTP, który jest fundamentem komunikacji w Internecie. Zdobędziesz wiedzę, która pozwoli Ci zrozumieć, jak przeglądarki i serwery wymieniają się informacjami, a także jakie informacje są przekazywane podczas przeglądania stron internetowych.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Zrozumiesz komunikację sieciową.
    Nauczysz się podstawowych pojęć, które dotyczą komunikacji w sieci, takich jak protokół HTTP, TCP/IP, DNS, URL, URI. Będziesz wiedzieć, jakie informacje przekazywane są między Twoją przeglądarką a serwerem. Na przykład, kiedy wpisujesz adres strony internetowej w przeglądarce i naciskasz Enter, to przeglądarka wysyła zapytanie HTTP do serwera z prośbą o przesłanie treści strony.

  2. Będziesz obsługiwać komendy i kody odpowiedzi.
    Poznasz różne komendy i kody odpowiedzi, które są używane w protokole HTTP. Na przykład, gdy odwiedzasz stronę internetową, a serwer udziela odpowiedzi, kod 200 oznacza sukces – strona została znaleziona i przesłana poprawnie, a kod 404 oznacza błąd – strona nie została znaleziona.

  3. Przetestujesz i przeanalizujesz komunikację.
    Skorzystasz z narzędzi takich jak curl, wget, ping, telnet, ssh, wireshark, http live headers, postman, aby zobaczyć, jak działa komunikacja między Twoją przeglądarką a serwerem. Wyobraź sobie, że chcesz sprawdzić, jakie informacje otrzymasz, gdy odwiedzisz stronę internetową z wiadomościami o aktualnościach sportowych. Narzędzie curl wysyła zapytanie HTTP na tę stronę. W odpowiedzi otrzymujesz listę najnowszych artykułów sportowych wraz z ich opisami, autorami i datami publikacji. Dzięki temu, możesz szybko przeglądnąć najnowsze informacje, nie musisz nawet otwierać przeglądarki.

  4. Zrozumiesz strukturę zapytań i odpowiedzi.
    Gdy wchodzisz na stronę internetową, Twoja przeglądarka wysyła zapytanie HTTP do serwera, prosząc o dostarczenie treści strony. W tym zapytaniu znajdują się różne informacje, w tym nagłówek accept-language, który zawiera preferowany przez Ciebie język. Na przykład, jeśli Twoja przeglądarka jest skonfigurowana na język polski, nagłówek accept-language będzie zawierał tę informację. Serwer może odczytać ten nagłówek i dostarczyć treść strony w języku polskim, aby zapewnić Ci najlepsze doświadczenie użytkownika.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Strony internetowe: rozważ sytuację, w której tworzysz stronę sklepu internetowego. Gdy klient dodaje produkt do koszyka, przeglądarka wysyła zapytanie HTTP do serwera z prośbą o aktualizację zawartości koszyka. Dzięki znajomości podstaw HTTP, będziesz w stanie zrozumieć, jak to dokładnie działa i jak zoptymalizować ten proces.

  • Testowanie aplikacji webowych: wyobraź sobie, że tworzysz aplikację społecznościową. Chcesz sprawdzić, czy system rejestracji nowego użytkownika działa poprawnie. Z narzędziem takim jak Postman, możesz wysłać zapytanie HTTP z danymi testowego użytkownika do swojej aplikacji. Następnie analizujesz odpowiedź, aby upewnić się, że nowy użytkownik został dodany do bazy danych.

  • Konfiguracja serwera: załóż, że decydujesz się na hostowanie swojej strony internetowej na własnym serwerze. Gdy znasz podstawy protokołu HTTP, będziesz w stanie lepiej zrozumieć i skonfigurować serwer HTTP, aby prawidłowo obsługiwał żądania klientów. To może być szczególnie istotne, gdy strona zaczyna przyciągać większą liczbę użytkowników.

W tym bloku będziesz tworzyć interfejsy użytkownika. Nauczysz się projektować strony internetowe i nadawać im atrakcyjny i funkcjonalny wygląd, a przy tym umożliwiać interakcje z użytkownikiem. Poznasz podstawy trzech kluczowych technologii: HTML, CSS i JavaScript.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Stworzysz struktury strony, dzięki HTML.
    Wyobraź sobie, że budujesz dom z klocków. Każdy klocek to element na stronie internetowej. HTML to język, który mówi przeglądarce, jak ułożyć te klocki. Jeśli chcesz umieścić ważny napis na górze strony, używasz klocka oznaczonego jako

  2. Zadbasz o stylizację i wygląd strony.
    Wyobraź sobie, że projektujesz pokój. Masz różne elementy do ustawienia, takie jak ściany, meble, dekoracje. CSS pozwala Ci dobrać kolory, rozmiary i układy tych elementów, aby tworzyć przyjemne wrażenia. Na przykład, jeśli chcesz, aby ściana była zielona, użyjesz właśnie CSS, aby zrealizować ten pomysł.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Strony internetowe: wyobraź sobie, że chcesz stworzyć swój własny wirtualny sklep z rękodziełem. HTML pomoże Ci zbudować strukturę strony, na której będą wyświetlane produkty – każdy produkt będzie miał swój tytuł, opis i cenę. CSS pozwoli Ci nadać stronie odpowiedni wygląd, dobrać kolory, fonty i układ, co sprawi, że Twoje wyroby będą prezentować się profesjonalnie i atrakcyjnie dla klientów.

  • Interaktywne elementy na stronie: przyjmijmy, że chcesz stworzyć stronę, na której użytkownicy mogą się zarejestrować, aby otrzymywać newsletter od Twojego sklepu. Za pomocą HTML stworzysz formularz, w którym użytkownicy wpiszą swój adres mejlowy. CSS pozwoli Ci dostosować wygląd tego formularza, aby pasował do reszty strony. Dodatkowo, jeśli chcesz, aby po wciśnięciu przycisku „Zapisz się” pojawiła się animacja, która potwierdza wysłanie formularza, to również zrealizujesz dzięki CSS.

W tym bloku zagłębimy się w technologie backendowe, które stanowią fundament funkcjonalności aplikacji. Zrozumiesz, jak obsługiwać serwer i zarządzać danymi, co pozwoli Ci tworzyć zaawansowane aplikacje internetowe.

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Poznasz popularny framework Django do tworzenia aplikacji internetowych.
    Django oferuje szereg narzędzi i funkcji, które ułatwią Ci proces tworzenia aplikacji, takie jak panel administracyjny, formularze, sesje, autoryzacja, bezpieczeństwo. Przeanalizujemy, jak wykorzystać te możliwości do budowy funkcjonalnych i bezpiecznych aplikacji.

  2. Dowiesz się czym jest MVC (Model-View-Controller).
    Zrozumiesz architekturę, która stanowi podstawę większości nowoczesnych aplikacji internetowych. Pozwala ona na wyraźne oddzielenie logiki biznesowej (modelu), warstwy prezentacji (widoku) oraz mechanizmu interakcji (kontrolera), dzięki czemu będzie Ci łatwiej zarządzać projektem i go rozwijać.

  3. Dowiesz się czym jest Representational  State Transfer (REST).
    Będziesz projektować interfejsy programistyczne (API) w sposób, który umożliwia łatwą komunikację między różnymi komponentami aplikacji. Restful API jest powszechnie stosowanym podejściem w budowie nowoczesnych aplikacji internetowych.

  4. Poznasz podstawy Flask.
    Wykorzystasz lekki framework, który pozwoli Ci szybko stworzyć aplikację internetową w Pythonie. Flask jest prosty w użyciu, ale jednocześnie potężny, co sprawia, że jest popularnym wyborem wśród programistów.

Jak możesz wykorzystać tę wiedzę w praktyce?

  • Panel sklepu internetowego: wyobraź sobie, że prowadzisz sklep internetowy z ubraniami. Panel administracyjny pozwala Ci szybko dodać nowe ubrania, sprawdzić, które produkty cieszą się największym zainteresowaniem i śledzić zamówienia klientów.

  • Komunikacja z aplikacją mobilną: tworzysz aplikację mobilną do zamawiania jedzenia. Dzięki technologii, której się nauczysz, zamówienia zostaną przekazane na serwer, a następnie do kuchni, tak szybko, jak klient naciśnie przycisk „Zamów”.

  • Zarządzanie treścią na stronie: wyobraź sobie, że prowadzisz stronę z artykułami o podróżach. Dzięki systemowi zarządzania treścią, możesz łatwo dodawać nowe artykuły, aktualizować opisy i zamieszczać zdjęcia z ostatnich podróży.

W tym bloku przyjrzymy się elastycznym podejściom w tworzeniu oprogramowania oraz metodyce Scrum, która pomoże Ci sprawnie zarządzać projektami. 

Czego nauczysz się podczas tego bloku?

Po ukończeniu tego bloku: 

  1. Poznasz założenia Agile.
    Poznasz fundamenty podejścia Agile, które stawia na adaptacyjność, współpracę i reaktywność na zmiany w trakcie projektu. Jak działa to w praktyce? Zamiast opracowywać szczegółowy plan na cały projekt na samym początku, zespół programistów i klient mogą pracować w krótkich okresach, nazywanych iteracjami. Na przykład, zamiast próbować ustalić wszystkie szczegóły na początku, zespół może tworzyć i udoskonalać jedną funkcjonalność w pierwszej iteracji, a potem przechodzić do kolejnych. Dzięki temu podejściu, projekt może być bardziej elastyczny i dostosowany do bieżących potrzeb klienta.

  2. Dowiesz się na czym polega metodyka Scrum, Kanban.
    Scrum to konkretna metodyka Agile, która oferuje wypracowany sposób organizacji pracy zespołu. Kanban natomiast to inna metoda w zarządzaniu pracą, która opiera się na wizualnej tablicy z zadaniami. Na przykład, jeśli masz zespół, który pracuje nad aplikacją, Scrum pomoże ustalić krótkie cykle pracy (np. tygodniowe) i zdefiniuje konkretne cele do osiągnięcia w każdym cyklu. Kanban z kolei pozwoli wizualnie śledzić postęp tych prac, na przykład przez przenoszenie karteczek z zadaniami po tablicy.

  3. Poznasz różnice podejścia Agile i Waterfall. 
    Porównamy podejście Agile z tradycyjnym modelem Waterfall, który zakłada linearny proces rozwoju oprogramowania. Wyobraź sobie, że masz zespół, który pracuje nad projektem budowy mostu. W podejściu Waterfall, każdy etap – projektowanie, budowa, testowanie – musi być zakończony zanim rozpocznie się następny. W Agile, prace nad różnymi elementami projektu mogą być prowadzone równolegle, co pozwala na szybszy postęp.

jak
uczymy

Wdrażamy autorską metodę TechCollege in IT®. Opracowaliśmy ją w ciągu kilku lat nauczania osób, które  zdecydowały się zmienić swoją karierę. Wiemy, że wsparcie doświadczonego programisty jest kluczowe podczas nauki. Dlatego 90% czasu, który spędzisz na naszym kursie, będzie bazować na zajęciach z trenerem-praktykiem.

2x w tygodniu

Zajęcia prowadzimy w trybie weekendowym: w soboty i w niedziele

+250 godzin zajęć z trenerem

Trener pełni rolę Twojego mentora podczas całego kursu

Kim są trenerzy

Roman Dryndik
Roman jest inżynierem Big Data w SoftServe Polska. Ma ogromne doświadczenie w Pythonie. Matematyka i uczenie maszynowe to jego hobby. Ukończył Doniecki Narodowy Uniwersytet Techniczny z tytułem magistra informatyki. Stawia na samodoskonalenie, dlatego studiował również na Politechnice Warszawskiej.
Łukasz Paluch
Big Data Technical Team Lead w IG Group. Jego zespół buduje i utrzymuje systemy, które przetwarzają i gromadzą danych. Jako koordynator merytoryczny kursu, tworzy jego program i materiały dla studentów. W wolnych chwilach grywa w szachy, uczestniczy w seansach saunowych lub skacze na trampolinach.
Bartosz Chojnacki
Programista i trener języka Python z wieloletnim doświadczeniem w branży IT. Posiada także doświadczenie jako DevOps oraz automatyk testów. Certyfikowany developer Chmury Azure w zakresie Artificial Intelligence. Poza Pythonem programuje w JavaScript. Entuzjasta narzędzi do generowania grafiki z wykorzystaniem algorytmów sztucznej inteligencji – Midjourney, czy DALL-E oraz wszelkich narzędzi z zakresu sztucznej inteligencji, które wspomagają codzienną pracę (nie tylko programistyczną). Wierzy, że współpraca i wymiana wiedzy pozwala tworzyć innowacyjne rozwiązania i wspiera wspólny rozwój. Prowadzenie szkoleń to dla niego źródło niegasnącej radości i inspiracji.
Maciej Biesek
Programuje w Pythonie i Javie, specjalizuje się w rozwiązaniach chmurowych. Maciej to data scientist z wieloletnim doświadczeniem w dziedzinie przetwarzania języka naturalnego, uczenia maszynowego i uczenia głębokiego. Doświadczenie zdobywał w projektach dla branż FCMG, z zakresu cyberbezpieczeństwa i nowych technologii. Jest mentorem i nauczycielem — czerpie ogromną satysfakcję z uczenia technik programowania i wykorzystywania uczenia maszynowego do rozwiązywania realnych problemów.
Previous
Next

5 powodów,
żeby wybrać TechCollege

1. Dwie specjalizacje

Nie proponujemy Ci szerokiego wachlarza kursów. Obserwujemy trendy i stawiamy na konkretne specjalizacje. Czas przed podjęciem decyzji jest kluczowy, spędźmy go wspólnie i sprawdźmy czy IT jest dla Ciebie. Jeżeli będziemy widzieli, że to jeszcze nie jest Twój moment na zmianę, nie zawahamy się, aby Ci o tym powiedzieć.

2. Praktyczne usługi

Oprócz kursu możesz wybrać dodatkowe usługi, których naprawdę potrzebujesz – na przykład dostęp do nagrań z zajęć, konsultacje z doradcami kariery, audyt CV czy przerwę od nauki.

3. Społeczność

Podczas kursu poznasz inne osoby, tak samo ambitne i zdeterminowane, jak Ty. Wymieniaj się wiedzą i zawieraj przyjaźnie przez dostęp do społeczności w zamkniętej grupie na Slacku.

4. Swobodny kontakt

Jako nasz główny kanał komunikacji wybraliśmy WhatsApp. Chcesz zacząć kurs? Rozmawiajmy wygodnie, ale tylko wtedy, kiedy chcesz i akurat masz czas na dyskusję z nami.

Projektuj swoją karierę

Co mówią absolwenci

Ile kosztuje kurs

8 900 zł albo od 250 zł mies.
8 miesięcy | tryb weekendowy

Start kursu:

25.11.23

Kroki do decyzji

Wysyłasz zgłoszenie
Łączymy Cię z doradcą kariery
Badamy Twoje predyspozycje i znajomość angielskiego
Umawiamy Cię na lekcję próbną z trenerem
Podejmujesz decyzję
Rozpoczynasz kurs

Potrzebujesz więcej szczegółów?

JAKIE
dodatkowe usługi warto wybrać?

W cenie podstawowej otrzymujesz kurs, czyli najlepszą wiedzą od trenerów-praktyków. Jeśli wiesz, że będziesz potrzebować dodatkowych usług, możesz je u nas dostać. To Ty decydujesz, czego potrzebujesz i za co chcesz dodatkowo zapłacić. Nie sprzedamy Ci pakietu, który będzie wypełniony czymś, z czego realnie nigdy nie skorzystasz.

Przed Tobą wiele miesięcy nauki. Jeśli nie chcesz planować tego czasu z góry, z dostępem do nagrań z zajęć, możesz łatwo nadrobić lekcję lub wrócić do niej zawsze, gdy tego potrzebujesz.

Cena usługi: 1 500 zł | do 6 miesięcy po kursie

Jak wyróżnić się z tłumu kandydatów? Doradca kariery zdradzi Ci wszystkie triki. Nauczysz się w jaki sposób skuteczne szukać pracy w nowej dziedzinie, jak rozmawiać z rekruterem  oraz gdzie wypatrywać najważniejszych dla Ciebie wydarzeń branżowych. Przeanalizujemy też Twoje CV i podpowiemy Ci, jak skutecznie budować swoją markę na LinkedInie.

Cena usługi: 500 zł | dwa spotkania po 1,5 godziny

Na samą myśl o rozmowie rekrutacyjnej trzęsą Ci się dłonie i czujesz ścisk w żołądku? Spokojnie! We wszystkim Ci pomożemy. Wiesz, że największy stres wywołuje brak doświadczenia i niedostateczne przygotowanie? Z pomocą naszego trenera nauczysz się, w jaki sposób rozmawiać w trakcie rozmowy o pracę i jak bez stresu dać z siebie 100%. Zobaczysz, po kilku próbach poczujesz się lekko, a Twoja pewność siebie skoczy do góry.

Cena usługi: 500 zł | dwa spotkania po 1,5 godziny

Wiemy że decyzja o kursie to poważny krok i równie poważna inwestycja. Jeżeli w Twoim życiu wydarzy się coś, co nie pozwoli Ci kontynuować nauki, możesz go przerwać i rozpocząć zajęcia z nową grupą w innym terminie.

Cena usługi: 2 000 zł | do 6 miesięcy

Twoje CV będzie ważne dla Twojego przyszłego pracodawcy. Często ważniejsze będzie jednak portfolio, które pokaże Twoje konkretne projekty. To praktyczny dowód Twoich umiejętności. Dzięki różnorodności projektów w portfolio, wykażesz się szerokim zakresem doświadczeń i umiejętności w wielu obszarach.

Cena usługi: 500 zł | dwa projekty

Pierwsza praca w IT to cel, o który walczysz od pierwszego dnia kursu. Z doświadczenia wiemy, że tym bardziej, gdy będziesz na okresie próbnym w nowej pracy, będziesz chcieć się tam wykazać. Maksymalnie! Kontynuuj współpracę z naszymi ekspertami po kursie. Trenerzy staną się Twoimi sparring partnerami w tematach, które na początku nowej kariery mogą być dla Ciebie wciąż wymagające. 

Cena usługi: 1 500 zł | 5 spotkań jednogodzinnych

Potrzebujesz więcej szczegółów?

SDA sp. z o.o.
al. Zwycięstwa 96/98
81-451 Gdynia