Tečaj "Middle Python Developer" - tečaj 110 000 rub. iz Yandex Workshopa, obuka 6 mjeseci, datum 11. siječnja 2024.
Miscelanea / / November 28, 2023
Slobodno 3 sata. Prijemni test
Ovdje ćete saznati kako obuka funkcionira i riješiti test pitanja o razvoju pozadine.
0 modul 5 sati. Uvodni modul
Niz lekcija o zahtjevima koda, radu s Gitom, procesu učenja tečaja i prvom praktičnom zadatku.
— Mali ukrcaj
— Uvod u Git
- Zahtjevi
1 modul 115 sati. Administratorska ploča + ETL usluge
Izrada i prilagodba administrativne ploče za online kino u Pythonu pomoću Djanga. Detaljna studija najčešće korištenih Django komponenti - admin panel i ORM. Upoznatost s indeksima, migracijama i optimizacijom upita. Dizajn relacijske baze podataka. Docker uređaj i rad Nginxa. Upoznavanje s ETL arhitektonskim uzorkom i stvaranje vlastitog ETL-a za prijenos podataka iz PostgreSQL-a u Elasticsearch.
Sprint 1
— Dizajn baze podataka, upoznavanje s indeksima i potrošnja memorije
— Poznavanje procesa umetanja podataka, klasa podataka i rad s vremenom u bazama podataka
— Uvodne informacije o bazama podataka bez SQL-a, kriterijima za odabir frameworka i detaljnim proučavanjem Djanga: od instalacije do admin panela
Sprint 2
— Duboko proučavanje ORM tehnologije
— Implementacija API-ja u suradnji s Djangom i testiranje rezultata
— Detaljan uvod u Docker
— Obrada zahtjeva u produkcijskom okruženju i konfiguracija Nginxa
Sprint 3
— Detaljno proučavanje Elasticsearcha, pretraživanja cijelog teksta i ETL arhitekture
- Python + UWSGI + Django
- PostgreSQL
- Nginx
- Lučki radnik
- ETL
- Elasticsearch
+ 1 projekt u portfelju
Online kino admin + ETL za prijenos podataka
Modul 2 80 sati. Async API usluga
Zaronite u asinkroni Python i način na koji funkcionira te primijenite Fast API u praksi. Uvod u iteratore, generatore i korutine. Analiza višenitnosti i višeprocesiranja.
Učenici rade u timovima od 2-3 osobe. Razvojni proces oponaša razvoj u pravoj proizvodnoj tvrtki - timovi imaju voditelja tima, preglede koda i tjedne demonstracije s mentorima.
Sprint 4
— Principi rada u zapovjednom modulu i tehničke specifikacije za sprint
— Opis principa rada u Gitu
— Uvod u asinkroni pristup, iteratore, generatore i korutine
— Analiza asinkronih okvira: Twisted, AIOHTTP i FastAPI
— Detaljna studija FastAPI-ja
Sprint 5
— Detaljan opis općih načela pregleda koda
— Razlika između čvrstog i nedostojnog zakonika
— Funkcionalni testovi za servisnu i ispitnu infrastrukturu
— Koncept API-ja i upute za pisanje dokumentacije
- Piton
- ASYNCIO
- FastAPI
- Redis
- Iteratori i generatori
- Korutine
+ 1 projekt u portfelju
API za online kino
Modul 3 80 sati. Usluga autorizacije
Razvoj usluge zadužene za kreiranje, pohranjivanje i evidentiranje korisničkog profila. Korisnicima će omogućiti registraciju u kinu i upravljanje svojim računom. Detaljna analiza kako pravilno pohraniti lozinke i osigurati sigurnost korisničkih podataka.
Studenti samostalno dizajniraju arhitekturu servisa, braneći svoja rješenja u recenziji. Promišljaju sustav interakcije između servisa, obraćajući pažnju na obradu grešaka i moguće gašenje jedne od usluga.
Uranjanje u sinkrone okvire koristeći Flask kao primjer i rad s relacijskim bazama podataka koristeći PostgreSQL kao primjer. Fokus na računalnu sigurnost i pravilnu organizaciju prikupljanja, zaštite i pohrane podataka.
Sprint 6
— Objašnjenje zašto je potrebna usluga Auth
— Analiza i prikupljanje zahtjeva, rad s osjetljivim podacima, sigurnost, enkripcija, hashiranje i upravljanje pristupom resursima
— Proučavanje metoda autorizacije i razvoj zahtjeva za usluge. Nastavak učenja Flaska i Redisa
Sprint 7
— Detaljna priča o radu OAuth 1.0, OAuth 2.0 i openID
— Rad s captcha i dvofaktorskom autentifikacijom
— Proučavanje komunikacije između mikroservisa. Konfiguriranje otpornosti usluge na opterećenja i promjene API-ja, implementacija autorizacije u AsyncAPI-ju, upravljanje razinama opterećenja i brzo pronalaženje problema
- Python + FlaskPython + Flask
- Redis
- PostgreSQL (replike/krhotine)
- OpenID
- oauth2
- jwt
- saptcha + Proof-of-Work
+ 1 projekt u portfelju
Usluga autorizacije korisnika sa zaštitom podataka
Modul 4 80 sati. UGC usluga
Usluga omogućuje korisnicima kreiranje vlastitog sadržaja u vašem kinu - ostavite lajkove, komentare, recenzije filmova. Studenti trebaju organizirati prikupljanje i pohranu podataka o aktivnostima korisnika.
Samostalan odabir asinkronog okvira i pohrane podataka za uslugu. Provođenje vlastitog istraživanja o izvedbi različitih skladišta podataka. Obrana dobivenih rezultata, zaključaka i odluka donesenih u demo s mentorom.
Sprint 8
— Što je UGC i zašto je potreban. Planiranje usluga
— Opis arhitekture i korisni savjeti za njezin dizajn
— Odabir pohrane, rad s podacima temeljen na događajima i rad s Kafkom
— Pristupi pohranjivanju i obradi podataka koji ne stanu na jedan poslužitelj. Lokalni uspon računalnog klastera i rad s podacima unutar njega
Sprint 9
— Još jedna distribuirana pohrana, pohrana podataka i optimizacija pohrane i obrade
— CI/CD: Izgradnja kontinuirane integracije za aplikaciju
— Uvod u logovanje u arhitekturi mikroservisa
- Piton
- Mongo
- ApacheKafka
- Clickhouse
- Apache Spark
- CI/CD
- LOS
+ 1 projekt u portfelju
Organizacija prikupljanja i pohrane podataka o aktivnostima korisnika
Modul 5 60 sati. Usluga obavijesti
Usluga obavijesti odgovorna je za komunikaciju s korisnikom putem e-pošte, mobilnih push obavijesti, websocketa u pregledniku. Ovo je često rješavan poslovni problem u komercijalnom razvoju - poslovni učinak ovisi o pravilnoj komunikaciji s korisnikom.
Proučavanje arhitektonskih problema web razvoja. Samostalno krećite se putem od poslovnog problema do rješenja koje funkcionira. Samostalan izbor tehnološkog skupa i crtanje servisne arhitekture.
Nove tehnologije: brokeri poruka na primjeru RabbitMQ i Websocket.
Sprint 10
— Opis načela rada usluge obavješćivanja
— Mehanizam slanja poruka korisnicima i jedinstvena politika kontakta
— Dizajn komunikacijskog sustava
— Uređaji za e-poštu i predlošci. Učenje koji se protokoli ili tehnologije mogu primijeniti u različitim situacijama kada trebate kontaktirati klijenta
- Korištenje brokera poruka RabbitMQ. Usluge transakcijske pošte i skraćenih poveznica
— Povratak na CI/CD proces
- Piton
- FastAPI
- RabbitMQ
- CI/CD
+ 1 projekt u portfelju
Usluga obavijesti putem e-pošte, mobilnih push obavijesti, web utičnice u pregledniku
Ciljna linija je 80 sati. Diplomski rad
Studenti sami biraju poslovni problem ili ga izmišljaju, planiraju svoje vrijeme, dizajniraju arhitekturu rješenja, odabiru i istražuju tehnologije, zatim brane razvijenu aplikaciju.
Završna točka je obrana diplomskog projekta, gdje diplomanti pokazuju rezultate rada svog tima.
Sprint 11
— Pripreme za završnicu. Organizacija rada u diplomskom modulu
— Ideje za diplomu. Gotove ideje za implementaciju u diplomski projekt
— Rješavanje problema s kupcem. Zahtjevi za razvoj i vrste kupaca. Dekompozicija projekta i samostalna izrada tehničke specifikacije za kupca
— Organizacija radnog vremena. Korisni savjeti kako organizirati radno vrijeme i uspostaviti transparentne procese u timu
— Arhitektura i planiranje. Rizici i planiranje projektnih zadataka
Python + Framework (učenici sami biraju okvir)
Studenti sami biraju tehnologiju pohrane podataka i ostale tehnologije
+ 1 projekt u portfelju
Usluga na izbor
Trajanje karijere 1 tjedan. Program zapošljavanja
Staza karijere podijeljena je u sedam blokova. Najprije učenik razmišlja treba li doista promijeniti svoje mjesto i određuje vlastite kriterije za ugodan rad. Zatim sastavlja životopis zajedno s iskusnim HR konzultantima i pažljivo se priprema za sve vrste intervjua, a mi ćemo ponuditi aktualna slobodna radna mjesta partnera.
J
john smith
05.04.2021 G.
Python-middle - sada definitivno znam više!
Prednosti: širok raspon proučavanih tehnologija, alata, analiza najboljih rješenja iz prakse. Nedostaci: greške u upisu u teoriji Pozdrav svima, radim kao programer za python i u jednom sam trenutku bio zbunjen moju kompetenciju, jer nisam bio siguran u to, te sam odlučio vidjeti što nudi tržište online obrazovanja. Gotovo svi tečajevi nudili su početnu razinu, što nije bilo nimalo zanimljivo...