Hogyan szereztem szakmai gyakorlatot a Shopify-ban

Végre lejárt a 2018-as nyári szakmai gyakorlatok interjúszezonja. Több mint egy hónapos interjúk és tesztek után több vállalatnál csatlakozom a Shopify-hoz háttér-fejlesztői gyakornokként.

Ebben a cikkben szeretném végigvezetni a Shopify-on történő jelentkezés, előkészítés és interjú folyamatomat. Szeretnék megosztani veletek néhány tippet, amelyeket felhasználok, amikor jelentkezem és interjút kapok egy állásra.

Gyors bevezető

Jelenleg egyetemi hallgató vagyok a Concordia Egyetemen, Montrealban, Kanadában. Befejezem a szoftvertervezéssel kapcsolatos harmadik évemet.

Részt veszek a COOP programban is, amely megköveteli, hogy három gyakorlatot teljesítsek az alapképzésem során. Az első két szakmai gyakorlatom a Ubisoftnál és a Vigilantnál volt.

Utolsó szakmai gyakorlatom ezen a nyáron lesz, és a montreali Shopify-ban fogok dolgozni.

Mi a Shopify?

Egyszerűen fogalmazva: a Shopify platformja lehetővé teszi a vállalkozások és magánszemélyek számára az áruk egyszerű online értékesítését.

A Shopify végigvezeti Önt az üzlet felállításának, a készlet kezelésének, a különféle fizetési módok elfogadásának és szállításának folyamatán. Van még egy értékesítési pont (POS) rendszer is, amelyet bolti használatra lehet használni!

Ami a Shopify-nál való munkát illeti, elnyerték a Glassdoor 2017-es legjobb munkahelyét Kanadában. Ismert, hogy zseniális emberek vannak a saját iparukban.

A jelentkezés folyamata

A Shopify-nak egyedülálló toborzási folyamata van a gyakornokok számára, és ez egyértelmű a jelentkezési folyamattól kezdve.

A pályázatom benyújtásához három feladatot kellett elvégeznem.

1. Shopify Store létrehozása

Az első feladat egy kitalált Shopify üzlet létrehozása volt. Ez volt a módja annak, hogy megismerjem magam a platformmal, és megértsem, hogy a kereskedők mit élnek át egy online áruház létrehozása érdekében.

Létrehoztam egy japán édesség és péksütemény üzletet. Valamit szerettem volna készíteni, ami valamivel eredetibb, mint egy tipikus divat-, szépség- vagy elektronikai üzlet.

Úgy gondolom, hogy ennek a lépésnek a titka az, hogy egy kitalált történetet hozzon létre az üzletében. Ezután az üzlet és a leltár kialakításának magától értetődőnek kell lennie.

2. A technikai kihívás teljesítése

A Back-end Developer Intern pozícióhoz technikai kihívás társult.

A kihívás egy validátor létrehozása volt a grafikon adatszerkezetéhez. Úgy döntöttem, hogy a Pythont használom.

Nagyon tetszett, hogy a kihívás hogyan kapcsolódott a Shopify platformhoz (vagy legalábbis annak tűnt), ahelyett, hogy értelmetlen algoritmikus probléma lett volna.

Úgy gondolom, hogy ebben a részben rendkívül fontos egy egyszerű megoldás elkészítése. Mivel nagyon sokféleképpen lehet megoldani a problémát, kulcsfontosságú az is, hogy a megoldás intuitív és jól dokumentált legyen . Ennek megvalósításához nagyszerűen használtam a Python-utasításokat.

Végül ne lépjen túl a probléma követelményeinél, ha ez a megoldás bonyolultabbá tételét jelenti. Ez csak neked fog fájni.

3. A pályázati kérdések megválaszolása

A jelentkezési folyamat utolsó lépése néhány kérdés megválaszolása volt.

Írtam arról, hogy milyen munkát szeretnék végezni a gyakorlat során, valamint arról, hogy milyen tapasztalataim voltak a jelentkezési folyamat során. Írtam egy ötletet a Hack Days-re (a Shopify negyedéves hackathonjára) is.

Nagyon sokat fektettem e kérdések megválaszolásába. Mint minden alkalmazásnál, a rá fektetett erőfeszítések is egyértelműen megmutatják, mennyire érdekli az ott végzett munka.

Fontos az is, hogy őszintén beszéljünk arról, amit írunk, és hogy válaszainkon keresztül megmutassuk szenvedélyünket .

A Hack Days ötlethez próbáljon meg kitalálni valamit, ami javíthatta a munkahelyi életét korábbi szakmai gyakorlatai és tapasztalatai során. Gondoljon más aspektusokra, mint magára a munkára. Tedd szórakoztatóvá!

Az interjú folyamata

Néhány hét várakozás után kaptam egy e-mailt az interjú elindításához!

Interjúm folyamata két részre oszlott: egy élettörténeti videohívás és egy helyszíni technikai interjú.

Élettörténet

Az élettörténeti videohívásom körülbelül 45 percig tartott, és a Talent Acquisition csapat egyik toborzójával voltam.

Megértésem szerint az élettörténet célja, hogy a toborzó személyesebb szinten ismerjen meg. Tudni akarják, mit nem mond az önéletrajzod. Olyan témákról beszéltem, mint utazásaim, érdeklődési köröm, hobbim, múltbeli tapasztalataim (semmi technikai jellegű) és arról, hogy miként alakult ki a programozás iránti szenvedélyem.

Ez volt az egyik kedvenc részem a folyamatban. Nagyon hétköznapi volt, és csak az volt az érzés, hogy megismerkedtem valakivel, és megosztom az életed történetét!

Bár az interjú folyamatának ebben a részében nem volt mire készülni, összeállítottam az összes különféle témát, amelyekről beszélni akartam. A képernyőn tartottam, hogy ne felejtsem el megemlíteni bármit, amit fontosnak tartok.

Úgy gondolom, hogy az élettörténet során a legfontosabb elemek az őszinteség , az alkalmi tartózkodás és az élettörténet ismerete . Tekintse meg beszélgetésként!

Helyszíni műszaki

Pár héttel később e-mailt kaptam a helyszíni interjú ütemezésére. Két részre osztották: egy személyes projektelemzésre és egy technikai problémára. Két fejlesztő készített interjút.

Az első részhez be kellett vinnem egy olyan projektet, amelyen jelentős mennyiségű munkát végeztem.

Abban az időben azt terveztem, hogy elindítok egy projektet, amely megoldja a mindennapjaimban tapasztalható problémát: túl sok pénzt költenek éttermekből származó ételekre.

Szeretnék létrehozni egy Alexa alkalmazást az Amazon Echo készüléken, amely ismeri a jelenleg rendelkezésre álló összetevőket, és recepteket javasol a készletem alapján. Tökéletes alkalom volt arra, hogy két legyet egy csapásra eltaláljanak.

Ugyanakkor szerettem volna elütni egy harmadik madarat is. Nagyon régóta szerettem volna megtanulni a Ruby on Rails-t. Mivel a Shopify platformja a Rails-re épül, úgy gondoltam, hogy nagyszerű ötlet lenne a Rails használatával elkészíteni az Alexa alkalmazást.

Gyorsan elvégeztem a SoloLearn Ruby tanfolyamot, és a hivatalos Első lépések útmutatóból megtanultam a Ruby on Rails alapjait.

Ezután az újonnan megtanult ismereteimet felhasználva elkészítettem az Alexa Hűtőt!

Az interjú ezen részében arra kértek, hogy minden szempontból mutassa be a projektemet. Átnéztem a kódot, és megmutattam, hogyan valósítottam meg a különféle elemeket. A tervezési döntéseimmel kapcsolatban is kikérdeztek.

Magától értetődik, de valóban ismernie kell a projektet kívülről és belülről, hogy képes legyen megválaszolni a vele kapcsolatos kérdéseket. Ez segíthet néhány dokumentáció (különösen diagramok) előzetes elkészítésében, amelyek megmutatják a különböző szempontokat, például az infrastruktúráját, az adatbázis-sémát vagy az Ön által használt API működését.

Például hoztam ezt a diagramot annak bemutatására, hogy a szerverem hogyan kommunikál az Amazon Echo-val:

Szerintem az is előnyös, ha képes olyan projektet hozni, amelyet bemutathat. Nehéz felfogni munkád jelentőségét, ha nem tudod megmutatni az eredményt.

A helyszíni interjúm második részében technikai problémát kellett megoldanom.

Előzetesen közölték velem, hogy ez nem egy algoritmus, amit táblára kell írni (jaj!). Ehelyett problémát jelentett, hogy megoldási terveket kellett meghoznom.

Ennél a résznél nagyon ajánlom, hogy többet tudjon meg a rendszer tervezéséről . Lenne ötlete a webes és mobilalkalmazások szervezéséről, az adatbázis-séma megtervezéséről, a hitelesítésről és így tovább.

Ezen témák egy részét egy szoftvermérnöki szakon tanulják meg, mások azonban még nem. Azt javaslom, hogy ellenőrizze a Hired In Tech System Design edzőtáborát és a Nagy skálázhatóságot. Mindkettő kiváló forrás a rendszertervezés megismeréséhez és annak megtekintéséhez, hogy a nagyvállalatok hogyan építik fel alkalmazásaikat. Nagyon figyeljen a kompromisszumokra, amelyek minden tervezési döntéshez kapcsolódnak.

Amikor rendszertervezési problémákkal foglalkozik, győződjön meg arról, hogy mindig egyértelműen közölte feltételezéseit és megértette a követelményeket .

Ne habozzon feltenni kérdéseket, ha szükséges! Két fejlesztő van a szobában veled, és időről időre segítséget kaphatsz. Ugyanolyan fontos a megfelelő kérdések feltevése, mint a megválaszolás (erre egyébként van Google).

Végül mindig hangosan gondolkodjon .Nagyon fontos, hogy az interjúztatók tudják, hogyan gondolkodnak.

Igyekszem a lehető leghangosabban gondolkodni az ilyen jellegű problémák során, még akkor is, ha a gondolatmenetem téves. Ha azonban helytelen, akkor fontos, hogy rájöjjek és kijavítsam magam.

Az ajánlat

Körülbelül egy hét múlva a Shopify megkeresett velem egy ajánlatot, és elfogadtam!

Elvihetők

Nagyon élveztem mind a jelentkezés, mind az interjú folyamatának egyediségét. Ez lehetővé tette számomra, hogy ne csak a technikai képességeimet mutassam be!

Az alábbiakban összefoglalom a cikkben megosztott tippjeimet:

  • Tegye magát kereskedő cipőjébe, amikor létrehozza az online áruházat, és merüljön el a kitalált történetükben
  • A technikai kihívás során keresse meg az egyszerűséget és dokumentálja jól
  • Amikor megírja a válaszokat a pályázati kérdésekre, tegyen sok erőfeszítést, legyen őszinte és mutassa meg szenvedélyét
  • Az élettörténet során legyél önmagad és ismerd meg az élettörténetedet
  • A helyszínen hozzon magával egy projektet, amelyet jól ismer, és tudja, miért tervezte úgy, ahogyan tette
  • A technikai probléma kapcsán mondja ki feltételezéseit és követelményeit, és hangosan gondolkodjon el

Köszönöm, hogy elolvastad a cikkemet!

További frissítésekért kövessen a Twitteren.