Kurz "Middle Python Developer" - kurz 110 000 rub. z Yandex Workshop, školenie 6 mesiacov, dátum 11. januára 2024.
Rôzne / / November 28, 2023
Zadarmo 3 hodiny. Vstupná skúška
Tu sa dozviete, ako školenie prebieha a otestujete si otázky o vývoji backendu.
0 modul 5 hodín. Úvodný modul
Séria lekcií o požiadavkách na kód, práci s Git, procese učenia sa kurzu a prvej praktickej úlohe.
— Malý nástup
— Úvod do Git
- Požiadavky
1 modul 115 hodín. Admin Panel + ETL služby
Vytvorenie a prispôsobenie administračného panela pre online kino v Pythone pomocou Django. Podrobná štúdia najpoužívanejších komponentov Django - admin panel a ORM. Oboznámenie sa s indexmi, migráciami a optimalizáciou dotazov. Návrh relačnej databázy. Docker zariadenie a prevádzka Nginx. Zoznámenie sa s architektonickým vzorom ETL a vytvorenie vlastného ETL na prenos údajov z PostgreSQL do Elasticsearch.
Šprint 1
— Návrh databázy, oboznámenie sa s indexmi a spotrebou pamäte
— Oboznámenie sa s procesom vkladania dát, dátových tried a práce s časom v databázach
— Úvodné informácie o databázach bez SQL, kritériá pre výber frameworku a podrobná štúdia Django: od inštalácie po administračný panel
šprint 2
— Hlboké štúdium technológie ORM
— Implementácia API v spolupráci s Django a testovanie výsledku
— Podrobný úvod do Dockera
— Spracovanie požiadaviek v produkčnom prostredí a konfigurácia Nginx
šprint 3
— Hĺbková štúdia Elasticsearch, fulltextového vyhľadávania a architektúry ETL
- Python + UWSGI + Django
- PostgreSQL
- Nginx
- Docker
- ETL
- Elasticsearch
+ 1 projekt v portfóliu
Online kino admin + ETL na prenos dát
Modul 2 80 hodín. Služba Async API
Ponorte sa do asynchrónneho Pythonu a jeho fungovania a zaveďte do praxe rýchle API. Úvod do iterátorov, generátorov a korutínov. Analýza multithreadingu a multiprocessingu.
Študenti pracujú v tímoch 2-3 ľudí. Proces vývoja napodobňuje vývoj v skutočnej produktovej spoločnosti – tímy majú vedenie tímu, kontroly kódu a týždenné ukážky s mentormi.
šprint 4
— Zásady práce vo veliteľskom module a technické špecifikácie pre šprint
— Opis princípu práce v Git
— Úvod do asynchrónneho prístupu, iterátorov, generátorov a korutínov
— Analýza asynchrónnych rámcov: Twisted, AIOHTTP a FastAPI
— Podrobná štúdia FastAPI
šprint 5
— Podrobný opis všeobecných zásad preskúmania kódexu
— Rozdiel medzi pevným a nedôstojným kódom
— Funkčné testy pre službu a testovaciu infraštruktúru
— Koncepcia API a pokyny na písanie dokumentácie
- Python
- ASYNCIO
- FastAPI
- Redis
- Iterátory a generátory
- Korutíny
+ 1 projekt v portfóliu
Online kino API
Modul 3 80 hodín. Autorizačná služba
Vývoj služby zodpovednej za vytváranie, ukladanie a prihlasovanie užívateľského profilu. Umožní používateľom zaregistrovať sa v kine a spravovať svoj účet. Podrobná analýza toho, ako správne ukladať heslá a zaistiť bezpečnosť používateľských údajov.
Študenti samostatne navrhujú architektúru služby a svoje riešenia obhajujú v recenzii. Premýšľajú cez systém interakcie medzi službami, pričom dbajú na riešenie chýb a možné vypnutie jednej zo služieb.
Ponorenie sa do synchrónnych rámcov pomocou Flask ako príklad a práca s relačnými databázami s použitím PostgreSQL ako príkladu. Zamerajte sa na počítačovú bezpečnosť a správnu organizáciu zberu, ochrany a ukladania údajov.
šprint 6
— Vysvetlenie, prečo je potrebná služba Auth
— Analýza a zber požiadaviek, práca s citlivými údajmi, bezpečnosť, šifrovanie, hashovanie a riadenie prístupu k zdrojom
— Štúdium autorizačných metód a vývoj požiadaviek na služby. Pokračovanie v učení Flaska a Redisa
šprint 7
— Podrobný príbeh o práci OAuth 1.0, OAuth 2.0 a openID
— Práca s captcha a dvojfaktorovou autentifikáciou
— Štúdium komunikácie medzi mikroslužbami. Konfigurácia odolnosti služby voči zaťaženiam a zmenám API, implementácia autorizácie v AsyncAPI, správa úrovní zaťaženia a rýchle vyhľadávanie problémov
- Python + FlaskPython + Flask
- Redis
- PostgreSQL (repliky/úlomky)
- OpenID
- oauth2
- jwt
- сaptcha + doklad o práci
+ 1 projekt v portfóliu
Služba autorizácie používateľov s ochranou údajov
Modul 4 80 hodín. služba UGC
Služba umožňuje používateľom vytvárať si vlastný obsah vo vašom kine – zanechávať lajky, komentáre, recenzie filmov. Študenti musia organizovať zhromažďovanie a ukladanie údajov o aktivite používateľov.
Nezávislý výber asynchrónneho rámca a dátového úložiska pre službu. Vykonávanie vlastného výskumu výkonnosti rôznych dátových skladov. Obhajoba získaných výsledkov, záverov a rozhodnutí v deme s mentorom.
šprint 8
— Čo je UGC a prečo je to potrebné. Plánovanie služieb
— Opis architektúry a užitočné tipy na jej dizajn
— Výber úložiska, eventová práca s dátami a práca s Kafkom
— Prístupy k ukladaniu a spracovaniu údajov, ktoré sa nezmestia na jeden server. Lokálny vznik výpočtového klastra a práca s dátami v ňom
šprint 9
— Ďalšie distribuované úložisko, ukladanie dát a optimalizácia skladovania a spracovania
— CI/CD: Budovanie nepretržitej integrácie pre aplikáciu
— Úvod do logovania v architektúre mikroslužieb
- Python
- Mongo
- ApacheKafka
- Clickhouse
- Apache Spark
- CI/CD
- ELK
+ 1 projekt v portfóliu
Organizácia zberu a uchovávania údajov o aktivite používateľa
Modul 5 60 hodín. Notifikačná služba
Notifikačná služba je zodpovedná za komunikáciu s používateľom prostredníctvom e-mailu, mobilné push notifikácie, websocket v prehliadači. Toto je často riešený obchodný problém v komerčnom vývoji – výkonnosť podniku závisí od správnej komunikácie s používateľom.
Štúdium architektonických problémov vývoja webu. Nezávisle navigujte cestu od obchodného problému k funkčnému riešeniu. Nezávislý výber technologického zásobníka a výkres architektúry služby.
Nové technológie: sprostredkovatelia správ na príklade RabbitMQ a Websocket.
šprint 10
— Opis princípu fungovania oznamovacej služby
— Mechanizmus odosielania správ používateľom a jednotná politika kontaktovania
— Návrh komunikačného systému
— E-mailové zariadenia a nástroje šablón. Naučte sa, ktoré protokoly alebo technológie možno použiť v rôznych situáciách, keď potrebujete kontaktovať klienta
- Používanie sprostredkovateľa správ RabbitMQ. Transakčné poštové služby a skrátené odkazy
— Návrat k procesu CI/CD
- Python
- FastAPI
- RabbitMQ
- CI/CD
+ 1 projekt v portfóliu
Notifikačná služba cez e-mail, mobilné push notifikácie, websocket v prehliadači
Cieľová čiara je 80 hodín. Absolventský projekt
Študenti si sami vyberú podnikateľský problém alebo si ho vymyslia, naplánujú si čas, navrhnú architektúru riešenia, vyberú a skúmajú technológie, potom obhajujú vyvinutú aplikáciu.
Záverečným bodom je obhajoba diplomového projektu, kde absolventi ukážu výsledky práce svojho tímu.
šprint 11
— Príprava na záverečnú rovinku. Organizácia práce v diplomovom module
— Nápady na diplom. Hotové nápady na realizáciu v diplomovom projekte
— Riešenie problému so zákazníkom. Požiadavky na vývoj a typy zákazníkov. Dekompozícia projektu a samostatná príprava technických špecifikácií pre zákazníka
— Organizácia pracovného času. Užitočné tipy, ako si organizovať pracovný čas a zaviesť transparentné procesy v tíme
— Architektúra a plánovanie. Riziká a plánovanie projektových úloh
Python + Framework (študenti si sami vyberajú rámec)
Úložisko dát a ďalšie technológie si študenti vyberajú sami
+ 1 projekt v portfóliu
Služba na výber
Kariéra 1 týždeň. Program zamestnanosti
Trať kariéry je rozdelená do siedmich blokov. Najprv sa študent zamyslí, či naozaj potrebuje zmeniť svoje miesto, a určí si vlastné kritériá pre pohodlnú prácu. Ďalej zostaví životopis spolu so skúsenými HR konzultantmi a starostlivo sa pripraví na všetky typy pohovorov a ponúkneme aktuálne voľné pozície partnerov.
J
John Smith
05.04.2021 G.
Python-middle - teraz určite viem viac!
Výhody: široká škála študovaných technológií, nástrojov, analýza osvedčených riešení. Nevýhody: preklepy v teórii Ahoj všetci, pracujem ako python programátor a v určitom okamihu som bol zmätený moje kompetencie, pretože som si tým nebol istý, a rozhodol som sa zistiť, čo ponúka trh online vzdelávania. Takmer všetky kurzy ponúkali vstupnú úroveň, ktorá nebola vôbec zaujímavá...