Kaip besimokant pasidaryti programuotojo darbo vertą portfolio

Kaip besimokant pasidaryti programuotojo darbo vertą portfolio

Kaip prisirinkti darbų pavyzdžių, kol dar mokaisi, kol nesijauti pakankamai stipriai, kad galėtum freelancinti arba dirbti. Manau nereikia per daug skubinti įvykių, o tiesiog mokytis ir stengtis įgauti kuo daugiau praktikos.

Žemiau aprašau dalykus, kurie gali natūraliai užpildyti portfolio besimokant. Jie surašyti beveik paeiliui ir man atrodo, kad yra natūralus progresas mokantis programuoti. Praktiškai kiekvienas žingsnis gali būti tiek mokymosi dalis, tiek portfolio builderis.

Tutorialų (mokymų) užduotys

Pats paprasčiausias ir praktiškai nieko “nekainuojantis” būdas. Mokymosi ir pratimų darymo šalutinis poveikis yra parašytas kodas. Jei mokaisi, bet nieko nerašai, tai nesimokai.

Taigi, stumi viską į GitHubą, readme.md paaiškini, kad mokaisi, darai pratimus. Puikus būdas pradžiai.

Iš kitos pusės, kažkas laikė tave už rankos ir tu praktiškai perrašei, kas tau buvo rodoma žingsnis po žingsnio. Tai nėra tavo savarankiškas darbas, todėl nėra visiškai legit portfolio itemas.

Taigi, tutorialų rezultatai yra puiki pradžia, bet ko gero nėra medžiaga kuri tau gautų pirmą darbą. Dėk ir rodyk, bet ilgainui užgoši šitą gėri kokybiškesniu turiniu.

Savo sugalvoti projektai (sideprojects)

Pati smagiausia programerio veikla. Susigalvoji ką norėtum pagaminti ir hackini :) Taip pat geriausias būdas užpildyti portfolio. Turi visišką laisvę reikštis, rinktis technologijas, susigalvoti reikalvimus, išmėginti naujus dalykus, parodyti kas tu per superheroja.

Gal nėra idealus būdas jei esi visiška pradinukė, bet ir tada gali sukurpti kažką įdomaus. Kiek pamenu, pačioj mokymosi pradžioj parašiau javascriptinį skaičiuotuvą. Daug skillo nereikėjo, bet mano žinios paketurgubėjo ir žinoma gavau puikų daiktą į portfelį.

Piktumas apie side projectus :)

Savo susigalvotos užduotis

Žinau, skamba panašiai, bet yra šiek tiek kitoks reikalas. Šitas yra labai artimas freelancinimui. Susigalvoji užduotį, kuri labai primintų tikrą kliento užsakymą ir darai.

Reikalas labai panašus į side projectus, bet skiriasi tuo, kad reikalavimus susigalvoji tokius, kokius susigalvotų tavo siektinas klientas.

Gali padaryti svetainę šuniukų prieglaudai, išgalvotai organizacijai arba pusbrolio ekologiškam kopūstų ūkiui.

Lame? Tikriausia, bet efektyvu. Istorija kaip gavau revelation’ą apie klientų gavimą:

Kartą teko klientą konsultuoti renkantis dizainerį. Dėl keistai susiklosčiusios situacijos, kandidatai buvo daugiausia pradedantieji, mažo biudžeto veikėjai. Pastebėjau labai įdomų skirtumą tarp jų self promotiono.

Rytų europiečiai, nors ir buvo labiau patyrę, niekaip negalėjo įtikti klientui, nes nebuvo padarę namų darbų, neturėjo “realių” darbų pavyzdžių. Kažkokius pasižaidimus kurie buvo kokybiški, bet neparodė jų sugebėjimo dirbti prie “tikrų" projektų.

Kai tuo tarpu azijiečiai, nors ir būdami prastesni (mažiau patyrę) dizaineriai, beveik visi turėjo “realių” pavyzdžių. Jie turėjo feikinių darbų, kurie iš pirmo žvilgsnio atrodė lyg būtų buvę tikri užsakymai. Su išgalvotais organizacijų pavadinimais, tikrais (bet feikiniais) adresais, telefono numeriais, etc.

Spėk kuriuos pasamdė klientas? Tuos kurie turėjo geresnį dizaino skillą ar tuos kurie neva turėjo patirties dirbant prie tikrų projektų?

Pažiūrėk į mano pirmą išsigalvotą užduotį, kuri tikriausia padėjo gauti pirmą darbą. Nepaisant krūvos klaidų ir nevienodumų, puslapis turi mielus katiniukus. Great success!

Freelancinimas

Jau turi pridėjusi tutorialų rezultatų, tada savo sugalvotų dalykėlių, jau netgi padarei saitą savo išsigalvotam klientui? Manau esi pasirengusi tikram freelancinimo projektui. Randi sukalbamą, tavo darbą vertinantį klientą ir pirmyn.

Freelancinimas yra geras būdas ne tik mokytis naujų techninių dalykų, bet ir būdas gerinti minkštus sugebėjimus (soft skills?).

Toks porftolio itemas parodo ne tik tai, kad moki programuoti, bet ir sugebėjimą išsiaiškinti užduoties reikalavimus, atlikti tą užduotį laiku ir kokybiškai, bendrauti su klientais, etc.

Aišku, atlikusi darbą, paprašai rekomendacijos, dedi ją į portfolio, žibi auksu! O kur dar nuoroda į tikrą, tikruose internetuose gyvenantį puslapį, su tikru domenu ir tikrais juo besinaudojančiais žmonėm. Great success 2x!

Daugiau minčių apie freelancinimą.

Challengai ir įvairios internetuose rastos užduotys

Labai tikėtina, kad įsidarbinimo proceso metu gausi programavimo užduotį (koks 90%). Kai kurios gali pasirodyti kosminės. Gerai būtų tokioms pasirengti. Gali tokias užduotis krimsti ruošdamasi interviu sezonui.

Parašytas kodas labai pritiks tavo GitHube.

Gūglini ir radusi hackini. Kad ir užduotis sukeisti žodžius vietom (užduočių ten daug).

Daugiau apie namų darbų užduotis.

API mashupai

Iš esmės tai čia savo susigalvoti projektai. Imi kelis viešus API, juos panaudodamas sukuri kažką naujo ir įdomaus. Manau pradžiai užtektų tiesiog panaudoti bent vieną API ir su juo kažką pagaminti.

Čia geriausia vieta ieškoti viešų API www.programmableweb.com.

Čia visai gera vieta susipažinti kas tie apie API ir pažiūrėti kaip sujungia Google Maps API su Instagram API.

Puslapių klonai

Kopijuoji Delfi, Feisbuką, Twitterį, GoogleDocs, Trello, ką tik nori. Kaip ir side projectas, bet duodi sau aiškius apribojimus. Pliusas tame, kad nereikia kvaršinti sau galvos su dizainu, funkcionalumo susigalvojimu. Turi veikiantį pavyzdį sau prieš akis, kopijuoji ir tiek.

Daugiau čia kaip tapti programuotoju darant kloną.

Svarbiausi dalykai darantis portfolio

Užbaigti 100%, nepalikti klaidų, net jei jos ne programavimo klaidos (pvz rašybos). Pusiau veikiantis crapas tiesiog šaukia, kad kažko nemoki, tingi arba negali sukaupti dėmesio… Žinau, kad šitai labai sunku, pats turiu krūva pusiau kepto crapo, už tai dabar stengiuosi daryti kuo mažesniais etapais ir juos užbaigti iki galo.

Kokybė svarbiau už kiekybę. Trys puikiai veikiantys daiktai daug geriau nei septyniasdešimt trys pradėti ir numesti. Common sense.

Aš kažkaip nesijaudinu, kad mano GitHubas pilnas visokio crapo, bet portfolio saite rodau (kurio dabar neturiu) tik veikiančius ir užbaigtus daiktus.

Pramokus kažką naujo, gerai būtų su tuo dalyku kažką suprogramuoti.

Komentarai