Programavimo karjera. 3 skyrius. Universitetas

Istorijos tęsinys „Programuotojo karjera“.

Baigus vakarinę mokyklą, atėjo laikas stoti į universitetą. Mūsų mieste veikė vienas technikos universitetas. Jame taip pat buvo vienas „Matematikos ir informatikos“ fakultetas, kuriame buvo vienas „Kompiuterinių sistemų“ skyrius, kuriame buvo rengiami būsimi IT darbuotojai – programuotojai ir administratoriai.
Pasirinkimas buvo nedidelis ir kreipiausi į specialybę „Kompiuterių inžinerinis programavimas“. Laukė 2 stojamieji egzaminai. Kalboje ir matematikoje.
Prieš egzaminus vyko pokalbis, pasirenkama mokymo forma – biudžetas ar sutartis, t.y. nemokamai arba už pinigus.

Mano tėvai dalyvavo mano pokalbyje ir nerimavo dėl priėmimo. Žinoma, jie pasirinko sutartinę mokymo formą. Beje, tai kainavo apie 500 USD per metus, o tai buvo dideli pinigai 2003 m., ypač mūsų mažam miesteliui. Gerai prisimenu tėčio dialogą su mergina iš priėmimo skyriaus:
Mergaitė: Galite pabandyti išlaikyti egzaminus pagal biudžetą, o jei nepavyks, pereikite prie sutarties. Galite mokėti dalimis.
Tėvas: Ne, mes jau nusprendėme, kad kreipsimės dėl sutarties
Mergaitė: Na kodėl, tu niekuo nerizikuosi
Tėvas: Ne, tai vis tiek yra rizika. Sakykite, ar visi kreipiasi dėl sutarties?
Mergaitė: Taip, visi daro. Tikriausiai tik visiški debilai negali
Tėvas: Tada mes turime šansą... pasakė jis išsišiepęs ir pasirašėme dokumentus dėl priėmimo

Žinoma, pasirodymai iš vidurinės mokyklos dar buvo švieži mano tėvų prisiminimuose, todėl bėgant metams suprantu, kodėl jie taip sakė.

Vasarą, prieš stojant, toliau pirkdavau knygas už visus 40 dolerių, kuriuos močiutė man padovanojo iš savo pensijos.
Iš įsimintinų ir reikšmingų:
1. "UML 2.0. Objektinė analizė ir dizainas. Knyga, kuri išmokė mane kurti bet kokio sudėtingumo programinę įrangą, apgalvoti architektūrą, suskirstyti viską į komponentus, rašyti naudojimo atvejus ir braižyti UML diagramas. Tai žinios, kurių reikia senjorams, vadovams ir architektams. Tie, kurie materializuoja sistemą iš tuštumos, kai yra tik idėjos aprašymas.
Pažįstu žmonių, kuriems jau per 30 metų, ir jie vis tiek negali apsispręsti, nebent būtų įsakymas iš aukščiau, aukštesnio rango kūrėjo. Dirbant laisvai samdomu ir nuotoliniu būdu, kai dažnai dirbate individualiai su klientu, šios žinios taip pat neįkainojamos.
Jie taip pat aktualūs nepriklausomiems kūrėjams, kurie kuria naujas programas ir paslaugas. Nors mažai kas vargina detalų dizainą. Štai kodėl turime tokios kokybės, visą atmintį suryjančią programinę įrangą su kreivu UX.
2. ANSI C++ 98 standartas. Ne visai knyga, bet daugiau nei 800 puslapių pagrindinės informacijos. Žinoma, aš jo neskaičiau po skyrelį, o kurdamas C++ kompiliatorių kreipiausi į konkrečias kalbos taisykles. Kalbos žinių gilumo, išstudijavus ir įgyvendinus standartą, negalima apibūdinti jokiu nuostabiu epitetu. Galime pasakyti, kad apie kalbą žinote viską, o dar daugiau. Labai ilgas, kruopštus darbas studijuojant standartą. Bet manęs laukė 5 metai universiteto, todėl niekas manęs nestumdė
3. "Delphi 6. Praktinis vadovas.". Tai buvo greitas šuolis į GUI ir formą glostantį pasaulį. Įėjimo slenksčio beveik nebuvo, o Pascalį jau neblogai pažinojau. Studijuodama universitete „Delfyje“ rašiau liūto dalį komercinių programų. Tai buvo programinė įranga, skirta universitetų absolventams, apskaitai mažoms įmonėms, valdžiai. institucijose. Tada buvo keli laisvai samdomi užsakymai. 2000-ųjų viduryje „Delphi“ dominavo „Windows“ kūrimo rinkoje. Iki šiol kasoje vietinėse parduotuvėse galite pamatyti programas su pažįstamais šriftais ir valdikliais, kurie iš karto išskiria Delphi programą nuo bet kurios kitos.
4. „MFC pamoka“. Įvaldę Delphi, buvo logiška toliau kurti vartotojo sąsają C++. Buvo daug sunkiau, ne viskas pavyko ir buvo suprantama. Tačiau šią technologiją atnešiau ir į komercinių projektų taikymo stadiją. Viena Vokietijos antivirusinė kompanija platina mano programą, iki šiol parašytą MFC.
5. "3 diskai su MSDN biblioteka 2001". Interneto iš karto neturėjau ir, kiek pamenu, 2003 m. MSDN biblioteka nebuvo prisijungusi. Bet kuriuo atveju man buvo lengviau įdiegti MSDN žinyną vietiniame kompiuteryje ir lengvai rasti bet kurios „WinApi“ funkcijos ar MFC klasės dokumentaciją.
Programavimo karjera. 3 skyrius. Universitetas
Reikšmingiausios perskaitytos knygos 2002-2004 m

Tai knygos, kurios buvo skaitytos 2002–2004 m. Žinoma, dabar tai yra apleistas palikimas, kuris perrašomas dalimis naudojant .NET ir žiniatinklio technologijas. Bet tai yra mano kelias, galbūt kai kuriems iš jūsų buvo panašus.

Pirmas semestras

Vasaros pabaigoje laikas laikyti stojamuosius egzaminus į universitetą. Viskas vyko sklandžiai. Išlaikiau kalbos ir matematikos egzaminą ir įstojau į Kompiuterinių sistemų programavimo specialybę pirmame kurse.
Rugsėjo pirmąją, kaip ir tikėtasi, nuėjau į pirmąsias savo gyvenimo klases. „Studentų laikas yra ryškiausias laikas gyvenime“, – sakė man mama. Aš noriai tuo patikėjau.
Pirmąją dieną praėjo 3 bendrojo lavinimo dalykų poros, grupėje visi susipažino, o apskritai universitetas paliko malonų įspūdį.
Galiausiai jie pradėjo mokyti mus tikro programavimo C kalba! Be to, jie mokė informatikos istorijos, skaitmeninių technologijų ir daug kitos man aktualios informacijos. Net keikdamasis. analizė buvo naudinga, nes leido man giliau suprasti, ką parašė giliai gerbiamas Donaldas Knuthas.

Programavimo pamokos man vyko vairavimo atmosferoje. Pagaliau žmonės atėjo pas mane pagalbos. Jaučiausi reikalinga. Pamokos pradžioje gavome užduotį parašyti programą. Užduotis buvo skirta pusantros poros, po to pusvalandis testavimui. Užduotį man pavyko parašyti per 3-5 minutes, o likusį laiką vaikščiojau po biurą ir padėjau kitiems išsiaiškinti problemą.
Visai grupei kompiuterių neužteko, todėl dažniausiai sėdėdavome po du prie vieno kompiuterio. Matydami mano sugebėjimus, trys, keturi, kartais net 5-6 žmonės susėsdavo prie mano stalo ir nedvejodami prisėsdavo pasimokyti to, ką prieš porą metų sužinojau iš Kernighan ir Ritchie knygos.
Kurso draugai pamatė mano sugebėjimus ir patys sugalvojo klausimų arba pasiūlė tiesiog pabūti po pamokų. Taip susiradau daug draugų, su kurių dauguma draugaujame iki šiol.

Žiemą atėjo laikas pirmam užsiėmimui. Iš viso reikėjo išklausyti 4 dalykus: 2 aukštosios matematikos rūšis, istoriją ir programavimą. Viskas praėjo, kai kurie 4 balai, kai kurie 3. Ir man automatiškai paskyrė programavimą. Mokytojai jau žinojo mano įgūdžius, todėl nematė prasmės manęs tikrinti. Laimingai atvykau į sesiją su savo rekordų knygele, kad iškart gaučiau ant jos parašą, ir jau ruošiausi grįžti namo, kai klasės draugai paprašė manęs pasilikti ir stovėti už durų. Na. Atsidūręs prie palangės, prie išėjimo iš biuro, pradėjau laukti. Šalia manęs kabėjo kitas vaikinas, kuris taip pat automatiškai išlaikė egzaminą.
-Kodėl tu čia lieki,-paklausiau
– „Noriu užsidirbti pinigų spręsdamas problemas. Kodėl tu čia?
- "Aš taip pat. Aš tiesiog nesiruošiu užsidirbti pinigų. Jei tau reikia pagalbos, iš savo širdies gerumo aš tiesiog nuspręsiu.
Mano priešininkas dvejojo ​​ir kažką sumurmėjo atsakydamas.

Po kurio laiko klasės draugai pradėjo palikti auditoriją, pasiimdami sulenktus popieriaus lapus, kuriuose buvo problemų iš egzamino.
„Padėk man apsispręsti“, – paprašė pirmasis drąsuolis. „Gerai, dabar nuspręsiu“, – atsakiau. Nepraėjo nė 5 minutės, kol tušinuku ant suglamžyto popieriaus lapo užrašiau sprendimą ir grąžinau. Pamatę, kad schema veikia, žmonės ėmė kur kas dažniau palikti publiką, o kartais net po du ar tris.
Ant mano darbo palangės buvo trys krūvos lapų. Vienoje pakuotėje yra naujai gauti TODO lapai. Prieš mane buvo „In Progress“ lapas, o šalia jo gulėjo „Done“ pakuotė.
Tai buvo mano geriausia valanda. Visa grupė, kurią sudarė beveik 20 žmonių, kreipėsi pagalbos į mane. Ir aš padėjau visiems.
O užsidirbti norėjęs vaikinas po kelių minučių paskubomis pasišalino, supratęs, kad čia nėra ko gaudyti, visas dėmesys buvo nukreiptas į altruistą.
Visa grupė egzaminą išlaikė 4 ir 5 balais, o dabar turiu 20 draugų ir nepalaužiamą autoritetą programavimo reikaluose.

Pirmieji pinigai

Po žiemos sesijos po visą fakultetą pasklido kalbos, kad yra vaikinas, galintis išspręsti bet kokią programavimo problemą, kuri mums buvo paskirta namuose ar sesijos metu. Ir iš lūpų į lūpas plito ne tik pirmakursiai, bet ir vyresniųjų klasių studentai.
Kaip jau rašiau, po „geriausios valandos“ egzamine užmezgiau draugiškus santykius su visais grupės nariais, pradėjome labai artimai bendrauti su pora vaikinų. Tapome tikrais draugais ir daug laiko praleidome ne universitete. Kad būtų lengviau pateikti, pavadinkime juos Elonu ir Alenu (slapyvardžiai artimi tikriesiems).
Mes vadinome Eloną vardu, tačiau Alainas buvo pravardžiuojamas Alaino Delono garbei dėl jo sugebėjimo suvilioti bet kokį grožį. Merginos tiesiogine prasme suko aplink jį įvairiais skaičiais. Kalbant apie susitikimus su žmonėmis ir užmezgant santykius nakčiai, Alainas Delonas neturėjo lygių. Jis buvo tikras moteriškos lyties alfa patinas, o tai visiškai neįprasta daugumai IT specialistų. Be meilės reikalų, Alainas buvo dizaineris pagal pašaukimą. Ir jei jam reikėjo ką nors nupiešti, pavyzdžiui, tuo metu populiarias mirksinčias Web 1.0 formato reklamjuostes, tada jis tai padarė nesunkiai.

Apie Eloną galima pasakyti daug daugiau. Su juo susitinkame iki šiol, praėjus dešimčiai metų po universiteto. Pirmaisiais gyvenimo metais jis buvo liesas, gana tylus vaikinas. (To negalima pasakyti apie šiandieninį didžiaveidį vaikiną džipu). Tačiau aš buvau toks pat – lieknas ir tylus. Todėl manau, kad greitai radome bendrą kalbą.
Dažnai po pamokų aš, Elonas ir Alenas susirinkdavome į alaus salę, uždengtą brezentu. Pirma, jis buvo kitoje gatvės pusėje nuo universiteto, antra, už „rublį“ ir 50 kapeikų galėjai gauti gėrybių 2 valandas uždegančio vakarėlio. Kaip pilstomas alus ir krekeriai. Tačiau esmė buvo kitokia.
Elonas ir Alenas buvo iš kitų miestų ir gyveno nuomojamame kambaryje. Pinigų jiems nuolat trūkdavo, o kartais tekdavo badauti. Laimingos akimirkos, kai į kortelę gavo 10 USD stipendiją, buvo švenčiamos tą pačią dieną, o tada atėjo laikas „susiveržti diržus“ ir gyventi tuo, ką Dievas siuntė.

Žinoma, tokia situacija paskatino atvykusius studentus ieškoti būdų, kaip papildomai užsidirbti. O prieš juos, ištiestos rankos atstumu, sėdėjo „šviesi galva“ mano pavidalu. Kuris taip pat yra lankstus ir retai atsisako padėti žmonėms.
Nežinau, ar teisingai aprašiau tą situaciją, bet galiausiai šie susibūrimai aludėje paskatino sukurti pirmąją IT įmonę mano karjeroje pavadinimu SKS. Vardas buvo tiesiog sudarytas iš pirmųjų mūsų pavardžių raidžių. Mūsų jauna įmonė, atstovaujama trijų įkūrėjų, per ateinančius ketverius metus suplėšė konkurentus ir visą universitetą.

Elonas buvo ROP. Tai yra, pardavimo skyriaus vadovas. Būtent į jo pareigas įėjo naujų klientų paieška mūsų užsakomųjų paslaugų verslui. Prekybos kanalas buvo horizontaliai atspausdinti A4 formato lapeliai su paprastu užrašu: „Programavimo problemų sprendimas“. O žemiau Elono telefono numeris.
Tokia lauko reklama buvo dedama kiekviename aukšte, kur galėjo pasirodyti programavimą studijuojantys studentai.
Kitas, stipresnis klientų lojalumo požiūriu, buvo pardavimo kanalas iš lūpų į lūpas.

Verslo modelis buvo paprastas. Arba per rekomendaciją, arba skelbimą, universiteto studentas susisiekė su mumis. Jis apibūdino programavimo problemą, kurią reikėjo išspręsti iki tam tikro termino, o aš ją išsprendžiau už studento kainą. Elonas dalyvavo pardavimuose ir gavo savo procentą. Alainas Delonas mūsų versle dalyvaudavo rečiau, bet jei reikėdavo padaryti dizainą, paveikslėlį ar pritraukti papildomų klientų, visada padėdavo. Savo žavesiu jis atvedė pas mus gana daug naujų žmonių. Man tereikėjo apdoroti šį dujotiekį 5-10 užduočių per dieną greičiu. Terminai buvo griežti – ne ilgiau kaip savaitę. Ir dažniausiai tai reikėjo padaryti vakar. Todėl tokios aplinkybės mane greitai išmokė rašyti programas „teka“, nesiblaškant nuo kiekvienos smulkmenos, tokios kaip 5,9 balo žemės drebėjimas ar didelė avarija už lango.

Karščiausiu metų laiku prieš sesiją, tai yra gruodį ir gegužę, atrodė, kad mano kompiuteryje yra visos universiteto užduotys. Laimei, dauguma jų buvo to paties tipo, ypač kai su mumis susisiekė didmenininkas, atstovaujamas visos grupės atstovo. Tada buvo galima atlikti 20 užduočių, pavyzdžiui, surinkime, pakeičiant tik 2-3 eilutes. Tokiu sezonu švinas tekėjo kaip upė. Vienintelis dalykas, kurio mums trūko, buvo diskeliai. 2003-2005 metais mūsų miesto neturtingi studentai neturėjo pinigų pervedimo internetu. Be to, nebuvo jokių mokėjimo garantijų, kurios dabar vadinamos deponavimu. Todėl SKS įmonė, kaip užsakymų vykdytoja, susitarė universiteto teritorijoje ir mes davėme diskelis su tirpalu. Pinigų beveik negrąžino (iš angliško refund – mokėjimo grąžinimas kliento pageidavimu). Visi buvo patenkinti ir gavo savo 4-5 taškus, jei galėjo sužinoti, ką pridėjau prie failo readme.txt diskelyje. Nors paprasta visiškai veikiančios programos demonstracinė versija mokytojams taip pat dažnai sukeldavo wow efektą.

Kaina, žinoma, buvo juokinga, bet mes ją paėmėme kiekiu. Pavyzdžiui, įprasta namų užduotis kainuoja 2–3 USD. Kursinis darbas 10 USD. Aukso puodas kandidato darbo programos pavidalu iškrito vieną kartą, o už paraišką, skirtą gintis besiruošiančiam magistrantui, buvo net 20 USD. Karštuoju sezonu šias pajamas galima padauginti iš 100 klientų, o tai galiausiai buvo daugiau nei vidutinis atlyginimas mieste. Jautėmės kietai. Jie galėtų sau leisti lankytis naktiniuose klubuose ir ten šėlti, o ne užspringti čebureku už paskutinį centą.

Mano įgūdžių požiūriu, jie daugėjo su kiekviena nauja studento užduotimi. Pradėjome gauti prašymus iš kitų fakultetų, su kitokia mokymo programa. Kai kurie vyresniųjų klasių mokiniai jau naudojo „Java“ ir XML išnaudojimą, kai buvome linkę į C++/MFC. Vieniems reikėjo Assembler, kitiems PHP. Sprendžiant uždavinius sau išmokau visą zoologijos sodą technologijų, bibliotekų, duomenų saugojimo formatų ir algoritmų.
Šis universalizmas išliko su manimi iki šiol. Dirbant su projektais taip pat naudojamos įvairios technologijos ir platformos. Dabar galiu rašyti programinę įrangą ar programą bet kuriai platformai, OS ar įrenginiui. Žinoma, kokybė skirsis, bet verslui, su kuriuo daugiausia užsiimu, biudžetas paprastai yra svarbus. O vieno žmogaus orkestras jiems reiškia sumažinti biudžetą tiksliai tiek, kiek kūrėjų galiu pakeisti savo įgūdžiais.

Jei kalbėtume apie didžiausią naudą, kurią man atnešė studijos universitete, tai būtų ne algoritmų ar filosofijos paskaitos. Ir „neišmoks mokytis“, kaip madinga sakyti apie universitetus. Pirma, tai bus žmonės, su kuriais po treniruočių išlikome draugiški. Antra, tai ta pati SKS įmonė, kuri mane pavertė profesionaliu kūrėju su tikrais ir įvairiais užsakymais.
Norėčiau prisiminti frazę, kuri labai tinka šiai pasakojimo daliai: Programuotoju žmogus tampa tada, kai kiti žmonės pradeda naudotis jo programomis ir už tai moka pinigus..

Taigi SKS įmonės prekės ženklas buvo plačiai žinomas ne tik studentų rate, bet ir tarp mokytojų. Buvo net atvejis, kai vienas iš dėstytojų atėjo pas mane į namus, kad galėčiau jam padėti parašyti programą jo mokslo reikmėms. Jis savo ruožtu man padėjo savo specializacijoje. Abu taip pasinėrėme į darbą, kad auštant abu užmigome. Jis guli ant sofos, o aš ant kėdės priešais kompiuterį. Tačiau jie atliko savo užduotis ir abu liko patenkinti vienas kito darbu.

likimo vingis

Prasidėjo 4 metai universitete. Paskutinis kursas, kurį baigus suteikiamas bakalauro laipsnis. Bendrojo lavinimo dalykų praktiškai nebuvo, o tik su kompiuteriais ir tinklais susiję dalykai. Dabar kartais gailiuosi, kad neturėjau laiko ar nepasidomėjau ta pačia elektronika ar vidine tinklų struktūra. Dabar tai baigiu iš reikalo, bet esu tikras, kad šios pagrindinės žinios yra būtinos bet kuriam kūrėjui. Kita vertus, negali žinoti visko.
Baigiau rašyti savo C++ kompiliatorių, kuris pagal standartą jau galėjo patikrinti kodą, ar nėra klaidų, ir generuoti surinkimo instrukcijas. Svajojau, kad netrukus galėsiu parduoti savo kompiliatorių už 100 USD už licenciją. Aš tai padauginau iš tūkstančio klientų ir mintyse
pervežtas į plaktuką, iš garsiakalbių sklindantis 50 centų žemieji dažniai, o galinėje sėdynėje - karštieji. Ką tu gali padaryti būdamas 19 metų – tokie prioritetai. Mano naminio kompiliatoriaus gudrybė buvo ta, kad jis padarė klaidas rusų kalba, o ne anglų kalba iš Visual C++ ir gcc, o tai ne visiems suprantama. Aš supratau, kad tai yra žudikiška savybė, kurios dar niekas pasaulyje nebuvo sugalvojęs. Manau, kad nėra prasmės daugiau pasakoti. Tai neatėjo į pardavimą. Tačiau giliai išmanau C++ kalbą, kuri mane maitina iki šiol.

Ketvirtame kurse vis rečiau lankiau universitetą, nes žinojau didžiąją programos dalį. O ko nežinojau, išsprendžiau apsikeitęs su studentu, kuris suprato, pavyzdžiui, elektroniką ar tikimybių teoriją. Ko mes tada nesugalvojome. Ir nematomos ausinės ant laido, į kurį buvo padiktuotas atsakymas. Ir išbėgti iš klasės, kad savo specialybės guru per 2 minutes išrašytų tau viso egzamino sprendimą. Tai buvo puikus laikas.
Per tą patį kursą pradėjau galvoti apie tikrą darbą. Su biuru, realiomis komercinėmis programomis ir padoriu atlyginimu.
Bet tuo metu mūsų mieste galėjai susirasti tik programuotojo darbą
„1C: Buhalterinė apskaita“, kuri man visiškai netiko. Nors iš beviltiškumo, aš jau buvau tam pasiruošęs. Tuo metu draugė mane spaudė persikelti gyventi į atskirą butą.
Priešingu atveju miegoti su tėvais per sieną nėra comme il faut. Taip, ir aš jau pavargau nuo studentų problemų sprendimo, ir norėjau kažko daugiau.

Bėdos atsirado iš niekur. Sugalvojau mail.ru reklamuotis, kad ieškau darbo su 300$ atlyginimu C++/Java/Delphi programuotojo pareigoms. Tai 2006 m. Į ką jie iš esmės atsakė maždaug taip: „Gal turėtumėte parašyti Billui Gatesui su tokiais prašymais atlyginti? Tai mane nuliūdino, bet tarp daugybės panašių atsakymų buvo žmogus, kuris mane paskatino laisvai samdyti. Tai buvo vienintelė galimybė mūsų skurdžiame Las Vegase užsidirbti gerų pinigų darydamas tai, ką moku daryti.
Taigi studijos universitete sklandžiai perėjo į darbą laisvai samdomų vertėjų biržoje. Užbaigus temą apie universitetą, galime pasakyti taip: aš nestojau į 5 kursą. Buvo vienas programavimas ir tokia sąvoka „nemokamas lankymas“, kurią naudojau 146 proc.
Vienintelis dalykas, kurį reikėjo padaryti, buvo apginti specialisto diplomą. Ką sėkmingai padariau padedamas draugų. Verta pasakyti, kad per šį kursą aš jau buvau persikėlusi iš savo tėvų į nuomojamą butą ir nusipirkau naują automobilį. Taip prasidėjo mano, kaip profesionalaus kūrėjo, karjera.

Tolesni skyriai bus skirti atskiriems projektams, sunkiausioms nesėkmėms ir netinkamiausiems klientams. Laisvai samdomo darbuotojo karjera nuo 5 iki 40 USD/val., savo startuolio įkūrimas, kaip man buvo uždrausta dirbti Upwork laisvai samdomų vertėjų biržoje ir kaip iš laisvai samdomo darbo tapau komandos vadovu antroje pagal dydį naftos kompanijoje pasaulyje. Kaip po biuro ir starto grįžau prie nuotolinio darbo ir kaip sprendžiau vidines socializacijos ir žalingų įpročių problemas.

Turi būti tęsiama ...

Šaltinis: www.habr.com

Добавить комментарий