- Intervistat teknike në adtech përqendrohen në SQL të nivelit të ndërmjetëm, Python me panda dhe aftësi analitike.
- Është thelbësore të zotëroni JOIN, GROUP BY, nënpyetjet dhe funksionet e dritares si në SQL ashtu edhe në ekuivalentët e tyre në pandas.
- Të kuptuarit e metrikave të vlerësimit të modelit, të tilla si saktësia, F1 ose ROC-AUC, shton vlerë në rolet e analizave të avancuara.
- Përgatitja efektive kombinon teorinë, shumë ushtrime praktike dhe të mësuarit për të shpjeguar arsyetimin me zë të lartë.
Nëse po përgatiteni për një intervistë në teknologjinë e reklamave , analizat dixhitale ose analizën e të dhënave , herët a vonë do t'ju duhet të përballeni me provën e frikshme teknike. Këtu kompanitë kontrollojnë nëse i zotëroni vërtet ato që shkruani në CV-në tuaj: SQL për të nxjerrë të dhëna, Python për t'i përpunuar dhe analizuar ato, dhe disa aftësi të të menduarit analitik për të shmangur humbjen midis të gjitha tabelave dhe skripteve.
Lajmi i mirë është se intervistat teknike nuk janë magjike: ato zakonisht sillen rreth të njëjtave blloqe SQL, Python dhe vlerësimit të modelit . Nëse i kuptoni plotësisht bazat, praktikoni me ushtrime nga bota reale dhe mësoni të shpjegoni arsyetimin tuaj, do të keni një avantazh të konsiderueshëm ndaj kandidatëve të tjerë.
Pse intervistat teknike janë të frikshme (dhe si t'i lehtësojmë ato)
Në rolet e analistëve të të dhënave ose produkteve në teknologjinë reklamuese, intervistat teknike zakonisht kombinojnë pyetje konceptuale me ushtrime të drejtpërdrejta dhe praktike . Mund t'ju kërkohet të shpjegoni funksionin e një klauzole SQL ose të zgjidhni një rast biznesi që përfshin të dhëna të fushatës programatike të reklamimit.
Zakonisht do të vlerësoheni në tre fronte: SQL i nivelit të ndërmjetëm (JOIN, GROUP BY, nënpyetje, funksione dritaresh), Python i orientuar drejt të dhënave (panda, pastrim, grumbullime, bashkime) dhe aftësia juaj për të interpretuar rezultatet dhe për të komunikuar gjetjet . Ata nuk po kërkojnë një shkencëtar të dhënash të nivelit të lartë, por dikë që mund të punojë me të dhëna në një mënyrë të fuqishme dhe të besueshme.
Gabimi tipik që bëjnë shumë kandidatë është përqendrimi në memorizimin e sintaksës dhe harrimi i praktikimit të ushtrimeve të plota , të ngjashme me ato që do të hasni në platforma si HackerRank, StrataScratch ose në testet e brendshme të vetë kompanive. Qëllimi juaj duhet të jetë të arrini në intervistë duke zgjidhur tashmë dhjetëra pyetje dhe skripte shumë të ngjashme.
Niveli SQL zakonisht kërkohet në intervistat e teknologjisë së reklamave dhe analistëve të të dhënave
Për një rol analisti në mjediset e teknologjisë reklamuese ose të marketingut dixhital, kompanitë presin që ju të jeni të aftë në SQL klasike relacionale : nxjerrjen e të dhënave nga tabela të shumta, kombinimin, grupimin, filtrimin dhe krijimin e metrikave të dobishme. Ato nuk do të kërkojnë aftësi në administrimin e bazës së të dhënave, por duhet të ndiheni rehat me pyetje mesatarisht komplekse.
Zakonisht, testi do të përfshijë pyetje që kombinojnë INNER JOIN, LEFT JOIN, filtra me klauzolat WHERE, agregime me GROUP BY dhe disa kushte në agregime që përdorin klauzolat HAVING. Nga aty, në pozicione pak më të avancuara, është shumë e zakonshme të shohësh nënpyetje dhe funksione dritareje për renditje, totale kumulative dhe krahasime rreshtash.
Në teknologjinë e reklamave, ka të ngjarë t'u përgjigjeni pyetjeve të biznesit si "Cilat fushata kanë një CTR më të mirë se mesatarja për industrinë e tyre?" ose "Cilët botues po humbasin përshtypje krahasuar me muajin e kaluar?" Zgjidhja e këtyre pyetjeve në mënyrë efikase zakonisht kërkon një kuptim bazë të nënpyetjeve të lidhura dhe funksioneve të dritares.
Pyetjet bazë SQL që shfaqen zakonisht (dhe si t'u përgjigjeni atyre)
Pothuajse çdo intervistë teknike e orientuar drejt të dhënave përfshin një sërë pyetjesh bazë të teorisë SQL . Ato nuk po përpiqen t'ju bëjnë të zbuloni, por përkundrazi të sigurohen që keni një themel të fortë.
Një nga pyetjet më të shpeshta është ndryshimi midis WHERE dhe HAVING . Mënyra më e qartë për ta shpjeguar është se WHERE filtron rreshtat individualë para grupimit , ndërsa HAVING filtron grupet që janë tashmë të agreguara . Gjithashtu mund të përmendni se kushtet që përfshijnë funksionet e agregimit (COUNT, SUM, AVG, etj.) duhet të vendosen në HAVING, jo në WHERE.
Një pyetje tjetër klasike është se çfarë llojesh të JOIN ekzistojnë dhe kur duhet të përdoret secili prej tyre: INNER JOIN, LEFT JOIN, RIGHT JOIN, FULL OUTER JOIN dhe, në disa raste, CROSS JOIN ose self-join. Në analizën e të dhënave, LEFT JOIN përdoret gjerësisht kur dëshironi të ruani të gjithë të dhënat primare (për shembull, të gjithë përdoruesit) edhe nëse nuk ka të dhëna të shoqëruara në tabelën sekondare (për shembull, blerjet).
Shembuj të pyetjeve themelore SQL dhe logjikës së tyre
Për t'ju dhënë një ide mbi nivelin "minimum të arsyeshëm", duhet të jeni në gjendje të shkruani pyetje nga kujtesa, të tilla si zgjedhja e kolonave specifike, filtrimi i rreshtave dhe renditja e rezultateve . Në një nivel shumë bazë, pyetjet tipike përfshijnë: si të nxirren të gjitha kolonat nga një tabelë, si të zgjidhen vetëm disa kolona ose si të aplikohen pseudonime të lexueshme me AS.
Është gjithashtu e zakonshme të pyeteni në lidhje me klauzolën WHERE me kushte të shumëfishta që kombinojnë AND, OR dhe NOT, ose si të përdorni operatorët e krahasimit (<, <=, >, >=, =) si për vlerat numerike ashtu edhe për datat. Shumë kompani theksojnë filtrat NULL , ku përdorimi i thjeshtë i shenjës së barazimit nuk është i mjaftueshëm; duhet të përdorni IS NULL ose IS NOT NULL.
Një tjetër klasik është filtrimi i bazuar në tekst me LIKE dhe modelet duke përdorur wildcards % dhe _. Për shembull, mund të gjeni fushata emrat e të cilave përmbajnë një fjalë specifike ose përdorues adresat e email-it të të cilëve mbarojnë në një domen të caktuar. Është e rëndësishme të shpjegohet se LIKE '%text%' kërkon modelin kudo në varg.
Së fundmi, ky seksion bazë zakonisht mbulon mënyrën e përditësimit të të dhënave me UPDATE dhe filtrimin e rreshtave që modifikohen me WHERE, si dhe mënyrën e fshirjes së rreshtave me DELETE FROM duke përdorur kushte të qarta. Është thelbësore që gjithmonë të theksoni rëndësinë e përdorimit të një klauzole specifike WHERE për të shmangur fshirjen aksidentale të gjysmës së tabelës.
Pyetje të ndërmjetme: GROUP BY, HAVING, nënpyetje dhe UNION
Pasi të kaloni nivelin e ulët, pothuajse çdo kompani fillon të vlerësojë zotërimin tuaj të kombinimit të GROUP BY, funksioneve agregate dhe filtrave në agregate me HAVING . Kjo është ajo që do të përdorni çdo ditë për të gjeneruar raporte të performancës për fushatat, audiencat dhe krijimet.
Funksionon kështu: GROUP BY grupon rreshtat sipas një ose më shumë kolonave dhe mund të aplikoni SUM, COUNT, AVG, MIN dhe MAX në këto grupe për të llogaritur metrikat. Më pas vjen HAVING, për të mbajtur vetëm grupet që plotësojnë një kusht, për shembull, klientët me shitje mbi një prag të caktuar.
Një temë tjetër që përsëritet janë nënpyetjet : një pyetje brenda një pyetjeje tjetër. Ato përdoren shpesh për të filtruar sipas vlerave të llogaritura në një hap të mëparshëm, siç është zgjedhja e klientëve me shitje mbi mesataren globale ose fushatat me përshtypje mbi përqindjen e 90-të.
Gjithashtu, shpesh ju pyesin për ndryshimin midis UNION dhe UNION ALL . UNION kombinon dy grupe rezultatesh me të njëjtën skemë dhe heq dublikatat; UNION ALL bën të njëjtën gjë, por i mban të gjitha rreshtat, edhe nëse ato përsëriten. Në analizën e të dhënave, shpesh do të preferoni UNION ALL për arsye performance dhe sepse doni të ruani të gjitha të dhënat origjinale.
Funksionet e dritares: hapi tjetër në SQL
Funksionet e dritareve janë bërë një standard në testimin teknik në një nivel të caktuar, veçanërisht për rolet që lidhen me teknologjinë e reklamave ku duhet të analizohen trendet me kalimin e kohës, renditja e fushatave ose totalet e investimeve.
Ideja kryesore është që një funksion dritareje llogarit një vlerë mbi një grup rreshtash që lidhen me rreshtin aktual , por pa e palosur rezultatin siç bën GROUP BY. Me fjalë të tjera, ju ende shihni çdo rresht individual, por të shoqëruar nga një përmbledhje e llogaritur mbi një "dritare" të dhënash.
Sintaksa tipike është përdorimi i funksionit (SUM, AVG, RANK, etj.) i ndjekur nga OVER, dhe brenda OVER të përcaktohet ndarja (PARTITION BY) dhe renditja (ORDER BY). Për shembull, llogaritja e renditjes së shitjeve sipas shitësit ose numrit kumulativ të përshtypjeve në ditë.
Nëse doni të tregoni aftësi, duhet të njiheni me funksione si RANK, DENSE_RANK, ROW_NUMBER, LAG dhe LEAD . Ato janë shumë të dobishme për renditjen e fushatave bazuar në performancën e tyre, duke krahasuar çdo periudhë me atë të mëparshmen ose duke identifikuar ndryshimet vit pas viti në metrikat kryesore.
CTE, totalet kumulative dhe mesataret lëvizëse
Në intervistat moderne të punës, lexueshmëria e kodit tuaj SQL vlerësohet shumë. Kjo është arsyeja pse shpesh do t'ju pyesin për Shprehjet e Zakonshme të Tabelës (CTE) . Një CTE është në thelb një lloj tabele e përkohshme e emërtuar, e përcaktuar me klauzolat WITH, që ekziston vetëm gjatë ekzekutimit të pyetjes.
CTE-të përdoren për të ndarë pyetjet komplekse në blloqe logjike dhe për të ripërdorur rezultatet e ndërmjetme. Për shembull, së pari llogaritni metrikat ditore për fushatë në një CTE, dhe më pas, në pyetjen kryesore, kryeni grumbullime ose filtrime shtesë mbi atë rezultat.
Një ushtrim tjetër shumë i zakonshëm është llogaritja e një totali rrjedhës duke përdorur SUM si një funksion dritareje. Në mjediset e teknologjisë reklamuese, është normale të kërkohet numri i përgjithshëm i përshtypjeve, klikimeve ose shpenzimeve për të parë se si performon një fushatë me kalimin e kohës.
Lidhur me këtë janë mesataret lëvizëse , në të cilat AVG zbatohet si një funksion dritareje mbi një kornizë rreshti të zhvendosur (për shembull, dy datat e mëparshme dhe ajo aktuale). Kjo është një mënyrë e thjeshtë për të zbutur seritë kohore dhe për të zbuluar trendet pa u mbështetur shumë në majat ditore.
Niveli i Python që zakonisht kërkohet për analistin e të dhënave
Në shumicën e roleve të analistëve të të dhënave (përfshirë teknologjinë e reklamave), kompanitë nuk presin që ju të jeni një guru i të mësuarit automatik, por ato presin që ju të keni një zotërim praktik të Python me pandas . Zakonisht, do t'ju kërkohet të ngarkoni grupe të dhënash, t'i pastroni ato, t'i transformoni ato dhe të merrni metrika ose vizualizime të thjeshta.
Testet Python zakonisht përqendrohen në operacione të tilla si leximi i të dhënave nga skedarët CSV , inspektimi i vlerave boshe dhe llojeve të kolonave, filtrimi i rreshtave, krijimi i kolonave të reja, grumbullimet duke përdorur groupby dhe bashkimet midis DataFrames. Në shumë raste, formulimi është pothuajse identik me pjesën SQL, por në formatin pandas.
Nuk është e zakonshme të kërkohet të ndërtosh modele komplekse nga e para në një test analisti, megjithëse ata mund ta vlerësojnë aftësinë tënde për t'u lidhur me scikit-learn për të trajnuar një model bazë dhe, mbi të gjitha, njohuritë e tua për metrikat themelore për të matur performancën e tij.
Operacionet bazë të pandave që duhet t'i zotëroni
Për të përfunduar me sukses çdo ushtrim të të dhënave në Python, duhet të jeni të aftë në operacionet bazë të DataFrames. Hapi i parë zakonisht është të ngarkoni një skedar duke përdorur `read_csv` dhe të eksploroni strukturën e tij me metoda si `head()`, `info()` ose `describe()`.
Zakonisht shfaqet edhe pjesa për pastrimin e vlerave null : numërimi i vlerave null që ka për kolonë me isnull().sum(), vendosja nëse do të fshihen rreshta ose kolona të tëra me dropna() ose do të plotësohen ato që mungojnë me fillna(), për shembull duke përdorur mesataren ose medianën e kolonës.
Sa i përket filtrave, do t'ju kërkohet të ndërtoni kushte në kolona numerike ose kategorike, diçka si zgjedhja e shitjeve mbi një shumë të caktuar ose rreshtave që plotësojnë disa kushte të kombinuara me & dhe |. Çelësi është të dish si të shkruash df pa hezitim.
Shpjegimi i `groupby` në pandas përfshihet pothuajse gjithmonë, pasi është ekuivalenti i drejtpërdrejtë i `GROUP BY` të SQL. Ju gruponi sipas një ose më shumë kolonave dhe më pas aplikoni agregime si `sum`, `mean`, `count`, etj. Sintaksa `groupby('column').agg()` është thelbësore.
Bashkohet dhe bashkohet midis DataFrames
Ashtu siç është thelbësore të zotërosh JOIN-et në SQL, edhe të zotërosh pd.merge është e detyrueshme në pandas . Kompanitë do të duan të shohin nëse dini si të bashkoni grupe të dhënash që ndajnë një çelës, për shembull, një tabelë përdoruesish me një tjetër të ngjarjeve ose blerjeve.
Funksioni i bashkimit merr dy DataFrames që do të bashkohen, kolonën kryesore (on) dhe llojin e bashkimit (how), i cili mund të jetë 'left', 'right', 'inner' ose 'outer', njësoj si në SQL. Në analizën e të dhënave, bashkimi i majtë përdoret kryesisht për të ruajtur të dhënat kryesore dhe për të shtuar atribute ose metrika nga tabelat dytësore.
Në një intervistë, është mirë të përmendësh detaje si ajo që ndodh kur ka çelësa të dyfishtë në të dyja anët ose si të trajtohen konfliktet e emrave të kolonave me prapashtesat e parametrave. Kjo përcjell një nivel më të lartë pjekurie.
Pyetje tipike, më teorike për Python-in, në lidhje me temën "Python".
Përtej pyetjeve panda, shumë intervista përfshijnë një bllok të shkurtër pyetjesh të përgjithshme në Python për të kontrolluar kuptimin tuaj të gjuhës. Këto zakonisht janë pyetje të shkurtra rreth veçorive, kujtesës, llojeve të të dhënave ose pjesëve të vogla të sintaksës.
Ndër temat që shfaqen vazhdimisht është menaxhimi automatik i memories në Python, bazuar në një grumbull privat në të cilin përdoruesi nuk ka qasje direkt dhe një mbledhës mbeturinash që është përgjegjës për lirimin e objekteve që nuk kanë më referenca.
Është gjithashtu e zakonshme të të kërkohet të krahasosh Python me Java-n , jo për të shpallur një fitues, por për të demonstruar se i kupton ndryshimet: Python është më dinamik, me një sintaksë më koncize, perfekt për prototipimin dhe shkencën e të dhënave, ndërsa Java tenton të dominojë në ekosisteme më të korporatave dhe me performancë të lartë.
Pyetje të tjera tipike sillen rreth shprehjeve lambda (funksione anonime për operacione të thjeshta), proceseve të përzgjedhjes/çpërzgjedhjes për serializimin e objekteve në bajt dhe rikthimin e tyre, ose ndryshimin midis listave dhe tuple-ve, ku të parat janë të ndryshueshme dhe të përcaktuara me kllapa katrore dhe të dytat janë të pandryshueshme dhe të përcaktuara me kllapa.
Më shumë koncepte kryesore të Python në intervista
Është e zakonshme të të pyesin se si të fshish ose kopjosh një objekt në Python. Zakonisht, mjafton të shpjegosh se mund të përdorësh deklaratën `del` për të hequr një referencë dhe se kopjet sipërfaqësore bëhen me `copy.copy()`, ndërsa kopjet e thella kërkojnë `copy.deepcopy()`.
Një koncept tjetër që mund të shfaqet, veçanërisht në profilet më të backend-it, është i ashtuquajturi efekti dogpile , i cili përshkruan skenarin në të cilin shumë përdorues ose procese sulmojnë një burim (për shembull, një faqe interneti ose memorje të përkohshme) në të njëjtën kohë, duke e mbingarkuar sistemin.
Lidhur me ekosistemin, mund të hasni edhe pyetje në lidhje me bazat e të dhënave që mund të përdoren me Python . Qasja më e arsyeshme është të përmendim disa baza të njohura si MySQL, PostgreSQL, SQLite, MongoDB dhe Oracle, dhe të vini re se Python në përgjithësi integrohet mirë me një gamë të gjerë motorësh të bazave të të dhënave relacionale dhe NoSQL.
Së fundmi, shpesh lindin pyetje më të thjeshta, të tilla si si të renditet një fjalor duke përdorur artikuj të renditur sipas, çfarë është një hapësirë emrash dhe për çfarë përdoret (shoqërimi i emrave me objekte në fusha të ndryshme veprimi), ose si të niset një nënproces duke përdorur modulin e nënprocesit me funksione si run() ose Popen().
Metrikat për vlerësimin e modeleve në Python: minimumi që duhet të dini
Edhe pse shumë pozicione analistësh nuk kërkojnë që ju të dizajnoni arkitektura të të mësuarit të thellë, është e zakonshme të jeni të njohur me metrikat bazë për vlerësimin e modeleve të klasifikimit , veçanërisht nëse roli përfshin produkte të të dhënave, atribuim fushatash ose zbulimin e mashtrimeve në teknologjinë e reklamave.
Pika fillestare është matrica e konfuzionit , e cila përmbledh sukseset dhe dështimet e një klasifikuesi binar ose shumëklasësh. Në rastin binar, ai ndahet në pozitivë të vërtetë (TP), negativë të vërtetë (TN), pozitivë të rremë (FP) dhe negativë të rremë (FN). Një kuptim i plotë i këtyre katër kategorive është thelbësor.
Nga matrica, nxirren metrika të tilla si saktësia , e cila mat përqindjen e parashikimeve të sakta nga totali; preciziteti (TP / parashikime pozitive); dhe kujtesa ose ndjeshmëria (TP / pozitive aktuale). Këto dy të fundit janë veçanërisht të rëndësishme kur klasat janë të pabalancuara.
Rezultati F1 kombinon saktësinë dhe kujtesën duke përdorur mesataren harmonike, duke penalizuar rezultate veçanërisht të ulëta për të dyja. Është një metrikë e zakonshme në skenarë ku si pozitivet e rreme ashtu edhe negativet e rreme janë të kushtueshme, siç janë zbulimi i mashtrimit, vlerësimi i pikëve të kontaktit ose zbulimi i sëmundjeve.
Metrika të tjera të avancuara: ROC-AUC, logloss, Jaccard dhe më shumë
Për pozicionet me një komponent më të fortë të shkencës së të dhënave ose analizës së marketingut, kompanitë shqyrtojnë nëse ju zotëroni metrika më të avancuara si ROC-AUC , e cila mat sipërfaqen nën kurbën ROC dhe pasqyron aftësinë e një modeli për të ndarë klasat.
Kurba ROC përfaqëson marrëdhënien midis shkallës së pozitives së vërtetë (kujtesës) dhe shkallës së pozitives së rreme (1 – specifikimi) për pragje të ndryshme vendimmarrjeje. Një model i rastësishëm do të binte në një vijë diagonale, ndërsa një model i mirë do të ishte më afër këndit të sipërm të majtë. Sa më e madhe të jetë zona nën kurbë, aq më e mirë është aftësia dalluese.
Një tjetër metrikë e zakonshme është humbja e log-ut (logloss) , e cila vlerëson cilësinë e probabiliteteve të parashikuara, duke penalizuar rëndë besimin e tepërt dhe gabimet. Një model i përsosur do të kishte një humbje log-u prej 0, dhe në përgjithësi, sa më e ulët të jetë humbja log-u, aq më mirë.
Ata mund t'ju pyesin gjithashtu për indeksin Jaccard , i cili mat ngjashmërinë midis dy bashkësive si madhësia e kryqëzimit të pjesëtuar me madhësinë e bashkimit. Përdoret për të vlerësuar klasifikuesit, segmentimin dhe sistemet e rekomandimit, ndër të tjera.
Në disa kontekste, përmenden grafikët e fitimit dhe rritjes , të cilët tregojnë se çfarë përqindjeje të objektivave kapni duke përdorur vetëm një pjesë të popullsisë (për shembull, 20% e përdoruesve më të lartë të vlerësuar nga modeli juaj). Kjo përdoret gjerësisht në marketing për të vendosur se kë të synohet i pari.
Kolmogorov-Smirnov, koeficienti Gini dhe vlerësimi i thelluar
Nëse kompania është shumë e fokusuar në modelet e pikëzimit ose të riskut, mund të shfaqen metrika të tilla si statistika Kolmogorov-Smirnov (KS) , e cila mat shkallën e ndarjes midis shpërndarjeve të rezultateve pozitive dhe negative.
Një vlerë KS afër 100 (si përqindje) tregon se modeli i ndan dy popullatat pothuajse në mënyrë të përsosur; një vlerë afër 0 nënkupton që modeli nuk bën dallimin më të mirë se rastësia. Në praktikë, modelet e botës reale bien brenda vlerave të ndërmjetme dhe krahasohen me njëra-tjetrën për të zgjedhur më të mirën.
Koeficienti Gini është një tjetër metrikë e nxjerrë nga ROC-AUC duke përdorur formulën Gini = 2 × AUC – 1. Shumë popullor në kredi dhe sigurime, ai interpretohet gjithashtu si një masë e pabarazisë: sa më i lartë të jetë Gini, aq më e madhe është aftësia e modelit për të përqendruar pozitivet e vërteta në rezultate më të larta.
Në intervista më të avancuara, mund t'ju kërkohet të shpjegoni se si zbatohen këto metrika në Python duke përdorur scikit-learn (p.sh., confusion_matrix, accuracy_score, roc_auc_score, f1_score…) dhe të komentoni se kur do ta përdorni secilën prej tyre në varësi të natyrës së problemit dhe çekuilibrit të klasës.
Si t’i strukturoni përgjigjet tuaja gjatë intervistës teknike
Përtej kodit që shkruani, intervistuesit i kushtojnë vëmendje të madhe mënyrës se si mendoni dhe si e shpjegoni veten . Një përgjigje e strukturuar dobët mund t'ju bëjë të dukeni më të rinj nga ç'jeni në të vërtetë, edhe nëse e dini zgjidhjen e saktë.
Një qasje shumë e dobishme për t'iu përgjigjur pyetjeve teknike është si më poshtë: së pari, shpjegoni konceptin me një fjali , pastaj jepni një shembull konkret (idealisht të lidhur me një nga projektet tuaja) dhe, nëse është e rëndësishme, përmendni alternativa ose nuanca . Kjo funksionon po aq mirë për SQL, Python ose metrika modeli.
Për shembull, nëse ju pyetet se për çfarë shërben një CTE, mund të thoni se është një nënpyetje e përkohshme e emëruar që përmirëson lexueshmërinë e pyetjeve komplekse, të shtoni se e përdorni kur duhet të ripërdorni një rezultat të ndërmjetëm disa herë dhe të përmendni se në disa raste mund të zëvendësohet nga nënpyetje të ndërthurura edhe pse është më pak e qartë.
Të menduarit me zë të lartë është gjithashtu thelbësore . Nëse ngecni, mos qëndroni të heshtur: shprehni me fjalë atë që po përpiqeni të bëni, çfarë informacioni ju mungon, çfarë supozimesh po bëni. Kjo e ndihmon intervistuesin të shohë procesin tuaj të të menduarit dhe ndonjëherë madje ju jep të dhëna ose sqarime që e bëjnë më të lehtë të ecni përpara.
Gabimet më të zakonshme në intervistat me të dhëna teknike
Shumë kandidatë eliminohen jo sepse u mungojnë aftësitë e mjaftueshme në SQL ose Python, por për shkak të një kombinimi të përgatitjes së dobët dhe gabimeve në komunikim . Është thelbësore të jeni plotësisht të vetëdijshëm për grackat e zakonshme për t'i shmangur ato.
E para është të mësuarit përmendësh pa e kuptuar . Njohja e sintaksës së RANK ose të një funksioni lambda nuk është shumë e dobishme nëse nuk mund të shpjegosh më pas se në cilat raste do t'i përdorje këto mjete ose pse ato janë të preferueshme ndaj alternativave të tjera.
Një tjetër gabim shumë i zakonshëm është moseksplorimi i cilësisë së të dhënave në ushtrime. Nëse ju jepet një grup të dhënash, përpara se të filloni agregimin, këshillohet të kontrolloni për vlera boshe, dublikate ose vlera të jashtëzakonshme që mund ta shtrembërojnë analizën. Kjo tregon gjykim të shëndoshë dhe përvojë praktike.
Është gjithashtu shumë e dëmshme të shmangësh bërjen e pyetjeve sqaruese . Në një rast biznesi në lidhje me fushatat reklamuese, për shembull, ka kuptim të plotë të pyesësh për sezonalitetin, afatin kohor të synuar, nëse kërkohen metrika për përdorues apo për përshtypje, e kështu me radhë. Heshtja dhe bërja e supozimeve shpesh çon në zgjidhje që nuk janë në përputhje me atë që kishte në mendje intervistuesi.
Së fundmi, shmangni qasjen e "kodifikimit të tepërt": krijimin e zgjidhjeve të panevojshme komplekse kur pyetja ose skripti mund të ishin më të thjeshta. Në mjediset e punës në botën reale, vlerësohen qartësia, mirëmbajtja dhe efikasiteti , jo zgjidhjet e ngjashme me enigmat.
Plani intensiv i përgatitjes brenda dy javësh
Nëse keni kohë të kufizuar para intervistës, mund të ndiqni një plan të përmbledhur që mbulon tre fushat kryesore: SQL, Python me panda dhe zbatim praktik. Nuk do të bëni mrekulli brenda 14 ditësh, por mund të arrini me një nivel të fortë aftësish dhe besim të arsyeshëm.
Gjatë ditëve të para, është një ide e mirë të përqendroheni në SQL-në fillestare deri në atë të nivelit të mesëm : rishikoni sintaksën bazë, JOIN-et, GROUP BY, nënpyetjet dhe funksionet më të zakonshme të dritares. Kushtojini kohë si leximit të shembujve ashtu edhe shkrimit të pyetjeve tuaja.
Në një fazë të dytë, përqendrohuni te pandat : ngarkimi i të dhënave, pastrimi, filtrimi, groupby, bashkimet dhe disa vizualizime të shpejta me matplotlib ose seaborn. Nuk keni nevojë të ndërtoni panele komplekse, por duhet të jeni në gjendje të replikoni në Python të njëjtat transformime që do të kryenit në SQL.
Pastaj caktoni disa ditë për të bërë ushtrime praktike në platforma si HackerRank ose në depo intervistash teknike. Qëllimi është të mësoheni me formatin, kufizimet kohore dhe presionin e shkrimit të kodit në një mjedis të kontrolluar.
Së fundmi, provoni një ose dy simulime të plota intervistash : merrni një grup të dhënash publik, bëni pyetje të arsyeshme biznesi, zgjidhini ato me SQL ose Python dhe shpjegoni me zë të lartë të gjithë arsyetimin tuaj, që nga eksplorimi fillestar deri te përfundimet përfundimtare.
Me një kombinim të mirë të rishikimit teorik, praktikës së udhëhequr dhe ushtrimeve realiste, do të arrini në ditën e intervistës me një bazë të fortë në SQL të nivelit të mesëm, Python për analizën e të dhënave dhe metrika modeli — gjë që është pikërisht ajo që shumica e kompanive në teknologjinë e reklamave dhe analizën e të dhënave presin të shohin.
