De sidste otte år har jeg arbejdet som projektleder (jeg skriver ikke kode på jobbet), hvilket naturligvis har en negativ indvirkning på min teknologiske baggrund. Jeg har besluttet at reducere mit teknologiske efterslæb og få en profession som Data engineer. Den primære færdighed som Data engineer er evnen til at udvikle, bygge og vedligeholde datalagre.
Jeg har lavet en læringsplan, som jeg tror vil være nyttig ikke kun for mig. Planen er rettet mod selvstudium af kurser. Der gives prioritet til gratis kurser på russisk.
Sektioner:
- Algoritmer og datastrukturer. Nøglesektion. Hvis du lærer det, vil alt det andet også lykkes. Det er vigtigt at få erfaring med at skrive kode og bruge de grundlæggende strukturer og algoritmer.
- Databaser og datalagre, Business Intelligence. Fra algoritmer går vi over til opbevaring og behandling af data.
- Hadoop og Big Data. Når databasen ikke passer på harddisken, eller når data skal analyseres, men Excel allerede ikke kan indlæse dem, begynder Big Data. Efter min mening bør man kun gå til denne sektion efter en grundig studie af de to foregående.
Algoritmer og datastrukturer
Jeg har inkluderet studiet af Python, repetition af matematikens grundlæggende principper og algoritmer.
Databaser og datalagre, Business Intelligence
- Bogen: Martin Kleppmann — Højtydende applikationer. Programmering, skalering, support. Bogen beskriver, hvordan forskellige datamodeller fungerer, deres interne implementering, begrænsninger og valg afhængigt af opgaven.
Emner relateret til opbygning af datalagre, ETL, OLAP-kuber afhænger stærkt af værktøjerne, så i dette dokument giver jeg ikke links til kurser. Det er hensigtsmæssigt at studere sådanne systemer, mens man arbejder på et specifikt projekt i en konkret virksomhed. For at blive bekendt med ETL kan man prøve eller .
Efter min mening er det vigtigt at studere den moderne metodologi til design af datalagre Data Vault , . Og den bedste måde at lære det på er at tage det og implementere det i et simpelt eksempel. På GitHub er der flere eksempler på implementering af Data Vault. . Moderne bog om datalagre: Modeling the Agile Data Warehouse with Data Vault af Hans Hultgren.
For at lære om Business Intelligence-værktøjer til slutbrugere kan man bruge den gratis rapport-, dashboard- og mini-datalagerbygger Power BI Desktop. Læringsmaterialer: , .
Hadoop og Big Data
- Begynd med at implementere MapReduce selv uden tredjepartsbiblioteker. Det vil i fremtiden give en bedre forståelse for multitrådede implementeringer. Et fremragende eksempel på Python er beskrevet .
Konklusion
Ikke alt, hvad man lærer, kan anvendes i arbejdet. Derfor er et diplomprojekt nødvendigt, hvor man kan prøve at anvende de nye færdigheder.
Planen indeholder ikke emner relateret til dataanalyse og Machine Learning, da dette mere hører til professionen Data Scientist. Der er heller ikke emner relateret til cloud-løsninger såsom AWS eller Azure, da disse emner i høj grad afhænger af valget af platform.
Spørgsmål til samfundet:
Hvor rimelig er min plan for udvikling? Hvad skal jeg fjerne eller tilføje?
Hvilket projekt vil I anbefale som diplomarbejde?
Kilde: habr.com
