Programmering loopbaan. Hoofstuk 3. Universiteit

Voortsetting van die storie "Programmeerder Loopbaan".

Met die aandskool klaar was dit tyd om universiteit toe te gaan. In ons stad was daar een tegniese universiteit. Dit het ook een fakulteit van "Wiskunde en Rekenaarwetenskap" gehad, wat een departement van "Rekenaarstelsels" gehad het, waar hulle toekomstige IT-werkers opgelei het - programmeerders en administrateurs.
Die keuse was klein en ek het aansoek gedoen vir die spesialiteit “Computer Engineering Programming”. Daar het 2 toelatingseksamens voorgelê. In taal en wiskunde.
Die eksamens is voorafgegaan deur 'n onderhoud, en die keuse van die vorm van opleiding - begroting of kontrak, m.a.w. gratis of vir geld.

My ouers was by my onderhoud en was bekommerd oor toelating. Natuurlik het hulle die kontrakvorm van opleiding gekies. Terloops, dit het sowat $500/jaar gekos, wat in 2003 baie geld was, veral vir ons klein dorpie. Ek onthou goed my pa se dialoog met die meisie van die toelatingskantoor:
Die meisie: Jy kan probeer om eksamens op 'n begroting te slaag, en as dit nie werk nie, skakel dan oor na 'n kontrak. Jy kan in paaiemente betaal.
Vader: Nee, ons het reeds besluit ons sal aansoek doen vir 'n kontrak
Die meisie: Wel hoekom, jy waag niks nie
Vader: Nee, dit is steeds 'n risiko. Sê my, doen almal aansoek om 'n kontrak?
Die meisie: Ja, almal doen. Seker net volslae morone kan nie
Vader: Dan het ons 'n kans... sê hy grinnikend en ons het die dokumente vir toelating onderteken

Natuurlik was die optredes van hoërskool nog vars in my ouers se geheue, so oor die jare verstaan ​​ek hoekom hulle dit gesê het.

In die somer, voor toelating, het ek voortgegaan om boeke te koop vir die hele $40 wat my ouma vir my uit haar pensioen gegee het.
Van die onvergeetlike en betekenisvolle:
1. "UML 2.0. Objekgeoriënteerde analise en ontwerp". 'n Boek wat my geleer het hoe om sagteware van enige kompleksiteit te ontwerp, deur die argitektuur te dink, alles in komponente af te breek, gebruiksgevalle te skryf en UML-diagramme te teken. Dit is die kennis wat seniors, leiers en argitekte nodig het. Diegene wat 'n sisteem uit die leemte realiseer, wanneer daar net 'n beskrywing van die idee is.
Ek ken mense wat reeds ouer as 30 is, en hulle kan steeds nie 'n besluit neem nie, tensy daar 'n bevel van bo is, van 'n hoër ontwikkelaar. In vryskut- en afstandwerk, wanneer jy dikwels een-tot-een met 'n kliënt werk, is hierdie kennis ook van onskatbare waarde.
Hulle is ook relevant vir indie-ontwikkelaars wat nuwe toepassings en dienste skep. Alhoewel min mense die moeite doen met gedetailleerde ontwerp. Dit is hoekom ons sagteware van sulke gehalte het, wat al die geheue insluk, met 'n krom UX.
2. "ANSI C++ 98 Standaard". Nie heeltemal 'n boek nie, maar dit is meer as 800 bladsye se agtergrondinligting. Ek het dit natuurlik nie afdeling vir afdeling gelees nie, maar eerder verwys na spesifieke taalreëls toe ek my C++ samesteller ontwikkel het. Die diepte van kennis van die taal, na bestudering en implementering van die standaard, kan nie met enige wonderlike bynaam beskryf word nie. Ons kan sê dat jy alles van die taal weet, en selfs meer. Baie lang, moeisame werk om die standaard te bestudeer. Maar ek het 5 jaar van universiteit voor my gehad, so niemand het my gestoot nie
3. "Delphi 6. Praktiese gids.". Dit was 'n vinnige sprong in die wêreld van GUI en vormvleiend. Daar was amper geen toegangsdrempel nie, en ek het Pascal al redelik goed geken. Terwyl ek op universiteit gestudeer het, het ek die grootste deel van kommersiële programme in Delphi geskryf. Dit was sagteware vir universiteitstudente, wat rekening hou met klein besighede, die regering. instellings. Toe was daar verskeie vryskutbestellings. In die middel van die XNUMX's het Delphi die Windows-ontwikkelingsmark oorheers. Tot nou toe kan jy by die betaalpunt in plaaslike winkels programme sien met bekende lettertipes en kontroles, wat 'n Delphi-toepassing onmiddellik van enige ander onderskei.
4. "MFC-tutoriaal". Nadat jy Delphi bemeester het, was dit logies om voort te gaan met die skep van UI in C++. Dit was baie moeiliker, alles het nie uitgewerk nie en was verstaanbaar. Ek het egter ook hierdie tegnologie na die stadium van toepassing in kommersiële projekte gebring. Een Duitse antivirusmaatskappy versprei my program, geskryf in MFC tot vandag toe.
5. "3 skywe met MSDN Library 2001". Ek het nie dadelik die internet gehad nie, en sover ek onthou, was die MSDN-biblioteek nie in 2003 aanlyn nie. Dit was in elk geval vir my makliker om die MSDN-naslaanboek op my plaaslike rekenaar te installeer, en maklik dokumentasie vir enige WinApi-funksie of MFC-klas te vind.
Programmering loopbaan. Hoofstuk 3. Universiteit
Die belangrikste boeke wat in die tydperk 2002-2004 gelees is

Dit is boeke wat in die tydperk 2002-2004 gelees is. Natuurlik, nou is dit 'n skamele nalatenskap, wat in bondels herskryf word deur gebruik te maak van .NET en Web-tegnologie. Maar dit is my pad, miskien het sommige van julle 'n soortgelyke een gehad.

Eerste semester

Aan die einde van die somer is dit tyd om die toelatingseksamens tot die universiteit af te lê. Alles het vlot verloop. Ek het die taal- en wiskunde-eksamen geslaag en was ingeskryf vir die eerste jaar van die spesialiteit Rekenaarstelselprogrammering.
Op die eerste September het ek, soos verwag, na die eerste klasse in my lewe gegaan. "Studentetyd is die helderste tyd in die lewe," het my ma vir my gesê. Ek het dit gewillig geglo.
Op die eerste dag het 3 pare algemene onderwysvakke geslaag, almal het mekaar in die groep leer ken, en oor die algemeen het die universiteit 'n aangename indruk gelaat.
Uiteindelik het hulle ons begin om ware programmering in C te leer! En daarby het hulle die geskiedenis van rekenaarwetenskap, digitale tegnologie en baie ander inligting wat vir my relevant was, geleer. Selfs vloek. die ontleding was nuttig, aangesien dit my in staat gestel het om dieper te verstaan ​​wat die diep gerespekteerde Donald Knuth geskryf het.

Programmeringsklasse het vir my in 'n ry-atmosfeer plaasgevind. Uiteindelik het mense na my toe gekom vir hulp. Ek het nodig gevoel. Aan die begin van die klas het ons die taak gekry om 'n program te skryf. Die taak is ontwerp vir een en 'n half pare, dan 'n halfuur vir toetsing. Ek het daarin geslaag om die opdrag in 3-5 minute te skryf, en die res van die tyd het ek by die kantoor rondgeloop en ander gehelp om die probleem uit te vind.
Daar was nie genoeg rekenaars vir die hele groep nie, so ons het meestal twee op 'n slag by een rekenaar gesit. Toe ek my vermoëns sien, het drie, vier, soms selfs 5-6 mense naby my lessenaar gaan sit en nie gehuiwer om te gaan sit om te leer wat ek 'n paar jaar gelede uit die boek deur Kernighan en Ritchie geleer het nie.
My klasmaats het my vermoëns raakgesien en self met vrae vorendag gekom, of aangebied om net na klasse te kuier. Dit is hoe ek baie vriende gemaak het, met wie ons meeste vandag nog vriende is.

In die winter was dit tyd vir die eerste sessie. In totaal was dit nodig om 4 vakke te neem: 2 tipes hoër wiskunde, geskiedenis en programmering. Alles het geslaag, ongeveer 4 punte, sommige 3. En programmering is outomaties aan my toegewys. Die onderwysers het reeds my vaardighede geken, so hulle het geen sin daarin gesien om my te toets nie. Ek het gelukkig by die sessie opgedaag met my rekordboek om dadelik 'n handtekening daarop te kry en was op die punt om terug te keer huis toe toe my klasmaats my gevra het om te bly en buite die deur te staan. Wel. Nadat ek myself by die vensterbank geplaas het, by die uitgang van die kantoor, het ek begin wag. Daar het nog 'n ou langs my rondgehang, wat ook outomaties die eksamen geslaag het.
"Hoekom bly jy hier," het ek gevra
— “Ek wil geld maak deur probleme op te los. Hoekom is jy hier?
- "Ek ook. Ek gaan net nie geld maak nie. As jy hulp nodig het, dan sal ek uit die vriendelikheid van my hart net besluit.”
My opponent het gehuiwer en iets in reaksie geprewel.

Na 'n rukkie het klasmaats die gehoor begin verlaat en gevoude stukkies papier saamgeneem wat probleme van die eksamen bevat het.
“Help my besluit,” vra die eerste waaghals. "Goed, ek sal nou besluit," het ek geantwoord. Nog nie eens 5 minute het verloop nie of ek het met 'n balpuntpen 'n oplossing op 'n opgefrommelde stuk papier gekrabbel en teruggegee. Aangesien die skema werk, het mense die gehoor baie meer gereeld begin verlaat, en soms selfs twee of drie op 'n slag.
Daar was drie stapels blare op my werkvensterbank. Een pakkie bevat nuut aangekome TODO-blaaie. Voor my was 'n vel In Progress, en langsaan het 'n pakkie "Done" gelê.
Dit was my beste uur. Die hele groep, wat byna 20 mense was, het na my om hulp gewend. En ek het almal gehelp.
En die ou wat geld wou maak het haastig na 'n paar minute vertrek, met die besef dat hier niks is om te vang nie, alle aandag was gevestig op die altruïs.
Die hele groep het die eksamen met graad 4 en 5 geslaag, en ek het nou 20 vriende en onwrikbare gesag in programmeringsake.

Eerste geld

Na die wintersessie het gerugte deur die hele fakulteit versprei dat daar 'n ou is wat enige programmeringsprobleem kan oplos, waarvan ons by die huis of tydens die sessie aangewys is. En mond tot mond het nie net onder eerstejaars versprei nie, maar ook onder senior studente.
Soos ek reeds geskryf het, het ek vriendelike verhoudings met almal in die groep ontwikkel na die "beste uur" in die eksamen, en ons het baie nou met 'n paar van die ouens begin kommunikeer. Ons het regte vriende geword en baie tyd buite die universiteit deurgebring. Vir die eenvoud van aanbieding, kom ons noem hulle Elon en Alen (die byname is naby aan die regte).
Ons het Elon by die naam genoem, maar Alain het die bynaam gekry ter ere van Alain Delon, vir sy vermoë om enige skoonheid te verlei. Meisies het letterlik om hom gesirkel, in verskillende getalle. In terme van mense ontmoet en verhoudings vir die nag aanknoop, het Alain Delon geen gelyke gehad nie. Hy was 'n regte alfa-mannetjie vir die vroulike geslag, wat heeltemal ongewoon is vir die meeste IT-spesialiste. Benewens verliefde sake was Alain 'n ontwerper van roeping. En as hy iets moes teken, byvoorbeeld die destyds gewilde flikkerende baniere van die Web 1.0-formaat, dan het hy dit met gemak gedoen.

Daar kan baie meer oor Elon gesê word. Ons ontmoet hom nog tot vandag toe, tien jaar ná universiteit. In sy eerste jare was hy 'n maer, taamlik stil ou. (Dieselfde kan nie gesê word oor vandag se grootgesig ou in 'n jeep nie). Ek was egter dieselfde – maer en stilswyend. Daarom dink ek ons ​​het vinnig 'n gemeenskaplike taal gevind.
Dikwels na klasse het ek, Elon en Alen in 'n biersaal bymekaargekom, bedek met 'n seil. Eerstens was dit oorkant die straat van die universiteit, en tweedens kon jy vir 'n "roebel" en 50 kopeke 'n paar lekkernye kry vir 2 ure van 'n brandende partytjie. Soos tapbier en beskuitjies. Maar die punt was anders.
Elon en Alen was van ander stede en het in 'n gehuurde kamer gewoon. Hulle het voortdurend geld kort gehad, en daar was tye wat hulle honger moes ly. Gelukkige oomblikke, toe hulle 'n $10-beurs op hul kaart ontvang het, is op dieselfde dag gevier en toe was dit tyd om "hulle gordels styf te trek" en te leef op wat God stuur.

Natuurlik het hierdie situasie besoekende studente gemotiveer om maniere te soek om ekstra geld te verdien. En voor hulle, op armlengte, het 'n "helder kop" in die vorm van my gesit. Wat ook buigbaar is en selde weier om mense te help.
Ek weet nie of ek daardie situasie reg beskryf het nie, maar uiteindelik het hierdie byeenkomste in die kroeg gelei tot die skepping van die eerste IT-maatskappy in my loopbaan genaamd SKS. Die naam was eenvoudig saamgestel uit die eerste letters van ons vanne. Ons jong maatskappy, verteenwoordig deur drie stigters, het mededingers en die hele universiteit oor die volgende vier jaar uitmekaar geskeur.

Elon was 'n ROP. Dit wil sê die hoof van die verkoopsafdeling. Sy verantwoordelikhede het naamlik ingesluit om nuwe kliënte vir ons uitkontrakteringsbesigheid te vind. Die verkoopskanaal was horisontaal gedrukte A4-pamflette, met 'n eenvoudige inskripsie: "Los programmeringsprobleme op." En hieronder is Elon se telefoonnommer.
Hierdie soort buitelugreklame is op elke vloer geplaas waar studente wat programmering studeer kon verskyn.
'n Bykomende een, sterker in terme van kliëntelojaliteit, was die verkoopskanaal deur mond tot mond.

Die sakemodel was eenvoudig. Hetsy deur 'n aanbeveling of 'n advertensie, het 'n universiteitstudent ons gekontak. Hy het 'n beskrywing gegee van 'n programmeringsprobleem wat teen 'n sekere sperdatum opgelos moes word, en ek het dit vir die studenteprys opgelos. Elon was betrokke by verkope en het sy persentasie ontvang. Alain Delon het minder gereeld aan ons besigheid deelgeneem, maar as ons 'n ontwerp, 'n prent moes maak of bykomende kliënte moes lok, was hy altyd behulpsaam. Met sy sjarme het hy nogal baie nuwe mense na ons toe gebring. Al wat ek moes doen, was om hierdie pyplyn teen 'n spoed van 5-10 take per dag te verwerk. Die sperdatums was streng – nie meer as ’n week nie. En meer dikwels as nie, moes dit gister gedoen word. Daarom het sulke omstandighede my vinnig geleer om programme in 'n "vloei" te skryf, sonder om afgelei te word deur elke dingetjie soos 'n aardbewing met 'n magnitude van 5,9 of 'n groot ongeluk buite die venster.

Gedurende die warmste seisoen, voor die sessie, dit wil sê in Desember en Mei, het dit gelyk of ek die hele universiteit se take op my rekenaar gehad het. Gelukkig was die meeste van hulle van dieselfde tipe, veral toe ons gekontak is deur 'n groothandelaar verteenwoordig deur 'n verteenwoordiger van 'n hele groep. Toe was dit moontlik om 20 take te doen, byvoorbeeld in assembler, deur slegs 2-3 reëls te verander. In so 'n seisoen het lood soos 'n rivier gevloei. Die enigste ding wat ons gemis het, was diskette. In 2003-2005 het arm studente in ons stad nie iets gehad soos die oordrag van geld via die internet nie. Boonop was daar geen waarborge vir betaling nie, wat nou escrow genoem word. Daarom het die SKS-maatskappy, as 'n uitvoerder van bevele, 'n afspraak op die grondgebied van die universiteit gemaak en ons het diskette met 'n oplossing. Daar was amper geen terugbetaling nie (van die Engelse terugbetaling - terugbetaling op versoek van die kliënt). Almal was gelukkig en het hul 4-5 punte ontvang as hulle kon leer wat ek by die readme.txt-lêer op die disket gevoeg het. Alhoewel, 'n eenvoudige demonstrasie van 'n volledig werkende program het ook dikwels 'n wow-effek onder onderwysers veroorsaak.

Die prys was natuurlik belaglik, maar ons het dit in hoeveelheid geneem. Byvoorbeeld, 'n tipiese huistaak kos $2-3. Kursuswerk 10$. Die boerpot in die vorm van 'n program vir 'n kandidaat se werk het een keer uitgeval, en dit was soveel as $20 vir 'n aansoek vir 'n gegradueerde student wat vir sy verdediging voorberei. Gedurende die warm seisoen kan hierdie inkomste met 100 kliënte vermenigvuldig word, wat uiteindelik meer as die gemiddelde salaris in die stad was. Ons het koel gevoel. Hulle kon nagklubs bekostig en daar 'n ontploffing hê, eerder as om aan cheburek te verstik vir hul laaste sent.

Uit die oogpunt van my vaardighede het hulle met elke nuwe studentetaak vermeerder. Ons het aansoeke van ander fakulteite begin ontvang, met 'n ander opleidingsprogram. Sommige senior studente het reeds Java en XML tot hul volle potensiaal gebruik toe ons na C++/MFC geleun het. Sommige het Assembler nodig gehad, ander PHP. Ek het 'n hele dieretuin van tegnologieë, biblioteke, databergingsformate en algoritmes vir myself geleer wanneer ek probleme oplos.
Hierdie universalisme het my tot vandag toe bygebly. ’n Verskeidenheid tegnologieë en platforms word ook gebruik wanneer aan projekte gewerk word. Nou kan ek sagteware of 'n toepassing vir enige platform, bedryfstelsel of toestel skryf. Die kwaliteit sal natuurlik verskil, maar vir die besigheid waarmee ek hoofsaaklik te doen het, is die begroting gewoonlik belangrik. En 'n eenmanorkes vir hulle beteken om die begroting presies soveel te sny as die aantal ontwikkelaars wat ek met my vaardighede kan vervang.

As ons praat oor die grootste voordeel wat studie aan die universiteit vir my ingehou het, sou dit nie lesings oor algoritmes of filosofie wees nie. En dit sal nie "leer om te leer", soos dit modieus is om oor universiteite te sê nie. Eerstens sal dit mense wees met wie ons ná opleiding op vriendskaplike voet gebly het. En tweedens, dit is dieselfde SKS-maatskappy wat my tot 'n professionele ontwikkelaar gesmee het, met werklike en diverse bestellings.
Ek wil graag 'n frase onthou wat baie geskik is vir hierdie deel van die storie: 'n Persoon word 'n programmeerder wanneer ander mense sy programme begin gebruik en geld daarvoor betaal..

Die SKS-maatskappy se handelsmerk was dus wyd bekend, nie net in studentekringe nie, maar ook onder onderwysers. Daar was selfs 'n geval toe een van die onderwysers na my huis toe gekom het sodat ek hom kon help om 'n program vir sy wetenskaplike behoeftes te skryf. Hy het my op sy beurt in sy spesialisasie gehelp. Ons het albei so verdiep geraak in ons werk dat ons albei met dagbreek aan die slaap geraak het. Hy is op die rusbank en ek op 'n stoel voor die rekenaar. Maar hulle het hul take voltooi, en albei was tevrede met mekaar se werk.

draai van die noodlot

Die 4de jaar van universiteit het begin. Die laaste kursus na voltooiing waarvan 'n baccalaureusgraad toegeken word. Daar was feitlik geen algemene onderwysvakke nie, maar slegs dié wat met rekenaars en netwerke verband hou. Nou is ek soms spyt dat ek nie tyd gehad het nie of nie belangstelling in dieselfde elektronika of die interne struktuur van netwerke getoon het nie. Nou voltooi ek dit uit nood, maar ek is seker dat hierdie basiese kennis nodig is vir enige ontwikkelaar. Aan die ander kant kan jy nie alles weet nie.
Ek was besig om my eie C++ samesteller klaar te skryf, wat reeds kode vir foute volgens die standaard kon nagaan en samestellingsinstruksies genereer. Ek het gedroom dat ek op die punt was om my samesteller vir $100 per lisensie te verkoop. Ek het dit met 'n duisend kliënte en geestelik vermenigvuldig
na 'n Hammer vervoer, met 50 Cent se bas wat uit die luidsprekers blaas en hotties op die agtersitplek. Wat kan jy doen, op 19 jaar oud - dit is die prioriteite. Die truuk van my tuisgemaakte samesteller was dat dit foute in Russies opgelewer het, in plaas van die Engels van Visual C++ en gcc, wat nie vir almal verstaanbaar is nie. Ek het dit gesien as 'n moordende kenmerk wat niemand in die wêreld nog uitgevind het nie. Ek dink daar is geen sin om verder te vertel nie. Dit het nie tot verkope gekom nie. Ek het egter 'n diepgaande kennis van die C++-taal opgedoen, wat my tot vandag toe voed.

In my vierde jaar het ek al hoe minder universiteit toe gegaan omdat ek die meeste van die program geken het. En wat ek nie geweet het nie, het ek opgelos deur te ruil met 'n student wat byvoorbeeld elektronika of waarskynlikheidsteorie verstaan ​​het. Waarmee ons toe nie uitgekom het nie. En onsigbare oorfone op 'n draad waarin die antwoord gedikteer is. En hardloop uit die klaskamer sodat 'n ghoeroe in sy spesialiteit die oplossing vir die hele eksamen binne 2 minute vir jou kan uitskryf. Dit was 'n wonderlike tyd.
Tydens dieselfde kursus het ek begin dink aan 'n regte werk. Met 'n kantoor, regte kommersiële toepassings en 'n ordentlike salaris.
Maar destyds kon jy in ons stad net werk as programmeerder kry
“1C: Rekeningkunde”, wat my glad nie gepas het nie. Alhoewel uit hopeloosheid, was ek reeds gereed hiervoor. Op daardie tydstip het my vriendin druk op my uitgeoefen om na 'n aparte woonstel te trek.
Andersins is dit glad nie comme il faut om saam met jou ouers deur die muur te slaap nie. Ja, en ek was al moeg om studenteprobleme op te los, en ek wou iets meer hê.

Moeilikheid het uit die niet gekom. Ek het daaraan gedink om op mail.ru te adverteer dat ek op soek is na 'n werk met 'n salaris van $300 vir die pos van 'n C++/Java/Delphi-programmeerder. Dit is in 2006. Waarop hulle basies iets geantwoord het soos: “Miskien moet jy aan Bill Gates skryf met sulke salarisversoeke?” Dit het my ontstel, maar tussen 'n klomp soortgelyke antwoorde was daar 'n persoon wat my in vryskut gebring het. Dit was die enigste geleentheid in ons verarmde Las Vegas om goeie geld te verdien deur wat ek geweet het hoe om te doen.
Studie aan die universiteit het dus glad gevloei na werk op die vryskutbeurs. Om die onderwerp van universiteit af te sluit, kan ons die volgende sê: Ek het nie na die 5de jaar gegaan nie. Daar was een programmering en so 'n konsep soos "gratis bywoning", wat ek 146% gebruik het.
Die enigste ding wat gedoen moes word, was om 'n spesialisdiploma te verdedig. Wat ek met die hulp van my vriende suksesvol gedoen het. Dit is die moeite werd om te sê dat ek met hierdie kursus reeds van my ouers na 'n gehuurde woonstel verhuis het en 'n nuwe motor gekoop het. Dit is hoe my loopbaan as 'n professionele ontwikkelaar begin het.

Die volgende hoofstukke sal aan individuele projekte, die ernstigste mislukkings en die mees ontoereikende kliënte gewy word. 'n Loopbaan in vryskut van 5 tot 40 $/uur, die bekendstelling van my eie begin, hoe ek van die Upwork vryskutbeurs verban is en hoe ek van vryskut 'n spanleier geword het by die tweede grootste oliemaatskappy ter wêreld. Hoe ek teruggekeer het na afgeleë werk na die kantoor en begin, en hoe ek interne probleme met sosialisering en slegte gewoontes opgelos het.

Vervolg…

Bron: will.com

Voeg 'n opmerking