ecosmak.ru

Balso asistentė „Alisa“ juokauja: „Man programišiai parinko šiuos pokštus. Balso asistentė „Alisa“ juokauja: „Šiuos juokelius man išrinko programuotojai Kiek metų jūsų programuotojui Aleksejui

Kitaip nei daugelis mano kolegų, aš negimiau programuotoju. Gimiau muzikante. Programavimo universitete nestudijavau ir iki tam tikro laiko net neketinau savo gyvenimo sieti su IT.

Bet mane visada traukė Maskva su plačiais šaligatviais, ilgais krantiniais ir didžiuliais parkais. Tačiau ten patekęs pajunti pinigų poreikį labiau nei bet kuriame kitame mūsų nuostabios tėvynės mieste. Tuo metu mano vyresnysis brolis nuomojosi butą su dviem programišiais, kurie dirbo kokiame nors banke. Taigi, viename iš virtuvės pokalbių pirmą kartą pasinėriau į Python pasaulį. Nuo tos akimirkos praėjo daug laiko, kol gavau pirmąjį Python kūrėjo darbą.

Pirmieji žingsniai programuojant

Taigi, kartą Maskvoje turėjau ieškotis darbo, nes negalėjau ilgai gyventi. Tuo metu mano įgūdžių užteko tik įsidarbinti techninio aptarnavimo srityje vienoje didelėje ir amoralioje įmonėje. Priėmiau užsakymus telefonu ir vaikščiojau pirmyn ir atgal ilgais pastato koridoriais, kad prie sistemos blokų sujungtų peles, kurios pakaitomis išskrisdavo iš visų biuro darbuotojų lizdų.

Būtent ten, suprasdamas to, kas vyksta absurdiškumą, parašiau savo pirmąją programą. Laisvalaikiu studijavau kalbos galimybes, rašiau scenarijus sistemų administravimui. Vyresnieji administratoriai greitai tai pastebėjo ir pradėjo duoti man užduotis, kad galėčiau parašyti tą ar kitą programą, ir nustebau, kad net ir turėdamas minimalią patirtį programuoju geriau nei jie ir galiu jiems būti naudingas šioje srityje.

Pirmas darbas

Keista, bet aš niekada nedirbau jaunesniuoju. Iškart nuėjau į vidurį. Tačiau turėjau bandymų įsidarbinti jaunesniuoju kūrėju. Gerai prisimenu tą interviu.

Du gerai išsilavinę programuotojai (juokinga, jie buvo vyras ir žmona) ištisas dvi valandas tikrino mano žinias ir mąstymą, po to padarė išvadą, kad mano žinių akivaizdžiai nepakanka, bet jie manęs neatsisakė, o davė literatūros sąrašą ir išsiuntė mane baigti studijų. Po dviejų savaičių grįžau į pokalbį ir pademonstravau fantastiškus mokymosi gebėjimus, atsakydamas į daugelį klausimų, į kuriuos anksčiau negalėjau atsakyti. Kitą dieną man paskambino ir pasakė, kad mane priėmė. Man pasakė atlyginimą, kurio man neužtektų net būstui ir maistui išsinuomoti, jau nekalbant apie kažkokius ekscesus. Iš karto atsisakiau ir niekada nesigailėjau, nes įsidarbinau sistemų administratore visame pasaulyje žinomoje įmonėje, kur tęsiau programuotojo savarankišką mokymąsi. Iš šios istorijos aš paėmiau vieną svarbus punktas Niekas taip nepadeda ir nestumia, kaip interviu!

Kas toliau

Kažkuriuo metu, pavargęs nuo biuro gyvenimo ir administratorės darbo, sukaupiau šiek tiek pinigų ir išvykau šešiems mėnesiams keliauti į Indiją. O, jei galėčiau aprašyti, kas tai buvo šešis mėnesius, tada neužtektų knygos, ne taip, kaip šis straipsnis. Grįžusi jau žinojau, kad vėl bandysiu įsidarbinti programuotoja, o šį kartą man nusišypsojo sėkmė ir buvau tam kur kas geriau pasiruošęs. Per šešis kelionių mėnesius labai labai patobulinau šnekamąją anglų kalbą, kuri dabar man kasdien padeda bendraujant su kolegomis. Patekimas į kalbinę aplinką pasirodė daug efektyvesnis nei bet kokie vadovėliai (beje, tą patį galima pasakyti ir apie programavimą). Bet geriau ten nušokti jau supratus pagrindus, antraip išnaudosite sąlygas, kuriomis galėsite tapti pažengusiu, kad išmoktumėte pagrindus.

Taigi. Pirmajame programuotojo darbe buvau vienintelis programuotojas įmonėje! Blogiau neįsivaizduojate! Na, ko norėjau, tą ir gavau. Tačiau antrame darbe patekau į nuostabų kolektyvą, kuriame dirbo tikri profesionalai, turintys didelę patirtį. Jų dėka įgijau kodo kultūrą ir sužinojau apie aukštus kūrimo standartus. Misha Korsakovas ir Andrejus Belyak - pagarba ir pagarba!

Dabar

O dabar dirbu nuotoliniu būdu vienoje tarptautinėje įmonėje ir tai turi savų privalumų! Tik nemanykite, kad dabar guliu paplūdimyje su nešiojamu kompiuteriu ir mėgaujuosi gyvenimu iki soties. Aš vis dar daug dirbu ir pavargstu, bet man nereikia eiti į biurą. Gyvenu Sankt Peterburge, kartais keliauju. Man pavyko pagyventi Portugalijoje, Italijoje, Gruzijoje, bet negaliu pasakyti, kad ten ypatingai ilsėjausi. Kelionių organizavimas suteikia daug papildomo sudėtingumo, o kartu su darbu gali būti dvigubai sunkiau nei dirbti namuose ar biure. Bet galima pamatyti daug naujo, gražaus ir įdomaus. Ir tai yra aiškus pliusas!

mentorystė

Ir mano mentorystė prasidėjo labai juokingai ir be mano dalyvavimo. Kartą buvau pas draugą ir netyčia palikau jam knygą apie Python ir Django. O kitą kartą susitikome tik po metų, tada jis mane nustebino. Sako, o dabar aš dirbu programuotoju! Ar prisimeni, kad pamiršai mano knygą, todėl aš ją perskaičiau, sukūriau joje savo svetainę ir neseniai gavau pirmąjį darbą.

Taip atsitinka!

Vėliau mano mentorystė tęsėsi tuo, kad pradėjau mokyti vieną savo draugą. Nepaisant to, kad beveik kiekvieną dieną jis praleidžia vis kitame darbe, mūsų verslas vyksta labai greitai ir gerai. Pirmasis programuotojo darbas jau visai šalia!

Kaip tapti sėkmingu Python kūrėju? Aleksejus Kurylevas savo patirtimi dalinsis tiek su pradedančiaisiais, tiek su patyrusiais programuotojais

Klausimai

Ką patartumėte pradedantiesiems, kuris yra retas arba laikomas neįprastu, prieštaringu?

Prisijunkite prie bet kokio judėjimo! Nepraleiskite progos pasitreniruoti! Visada būkite atviri bet kokiems pasiūlymams!

Ir kas labai svarbu:

„Kai susiduriate su dviprasmiškumu, atsispirkite pagundai atspėti. - Python zen

Kaip nuolat atnaujinate savo įgūdžius? Kaip jūs, kaip kūrėjas, augate ir tobulėjate?

Na, darbas neleidžia tau tapti nereikšmingam. Kiekvieną dieną turite padaryti ką nors naujo. Na, aš skaitau, žinoma. Aš mokausi kitų kalbų. Bendraukite su kitais kūrėjais. Kuriu įvairias web paslaugas komandoje su draugais, be atlyginimo, tik dėl įdomumo. Ir aš, jei įmanoma, daugiau ilsiuosi, tai irgi būtina, todėl saviugda vyksta lengviau ir greičiau.

3 geriausios knygos pradedantiesiems
  • Markas Summerfieldas – „Python 3 programavimas. Galutinis vadovas“
  • Wesley Chanas, Paulas Bissexas, Jeffrey Forsier – „Django. Žiniatinklio programų kūrimas Python“
  • Robertas Martinas – „Švarus kodas“ – skaitykite net jei nesuprantate Java, tai labai paprasta geras patarimas. Ir tuo pat metu pradėsite mokytis Java.

Aleksejus Pajitnovas yra sovietų ir rusų programuotojas, sukūręs populiarų vaizdo žaidimą „Tetris“, keleto garbės apdovanojimų programavimo ir kompiuterinių žaidimų kūrimo srityje savininkas. Gavęs Aukštasis išsilavinimas Maskvos aviacijos institute dirbo SSRS mokslų akademijos Skaičiavimo centre, kur 1984 metais baigė kurti žaidimą „Tetris“. Pirmuosius pinigus žaidimas pradėjo atnešti 1996 m., kai Aleksejus ir Henkas Rogersas (investuotojas, didelių Tetris akcijų savininkas, platinęs žaidimą visame pasaulyje) įkūrė Tetris kompaniją.

Aleksejus Pajitnovas - biografija

Gimė 1956 m. kovo 14 d. Maskvoje. IN mokslo metų gerai mokėsi, bet nuolat turėjo problemų su drausme. Kaip prisimena pats Aleksejus, vaikystėje jis buvo kupinas energijos ir negalėjo klusniai išsėdėti klasėje, todėl dėl savo elgesio dažnai sulaukdavo komentarų dienoraštyje. Tačiau nieko nuostabaus ir stebinančio: daugelis tai patyrė. Pajitnovui visada sekėsi matematika, todėl baigęs penktą klasę perėjo į Maskvos 91-ąją matematikos mokyklą, kurią vėliau baigė su pagyrimu.

Įvadas į programavimą

Baigęs mokyklą Aleksejus Pajitnovas atvyksta į Maskvą aviacijos institutas kur pirmą kartą susipažino su kompiuteriais ir programavimu. Būtent čia jis greitai įsitraukė į programinės įrangos kūrimą ir pradėjo visiškai atsiduoti kodo rašymui įvairiems tikslams. Netrukus talentingas jaunas programuotojas buvo pakviestas dirbti į SSRS mokslų akademijos Maskvos skaičiavimo centrą. Čia jis užsiėmė toli gražu ne paskutiniu dalyku – problemų optimizavimu dirbtinis intelektas ir kalbos atpažinimo programų kūrimas.

Įprasta kasdienybė Mokslų akademijoje buvo nesaldi: nuo ryto iki vakaro Pajitnovas sėdėjo ankštame kabinete, kur prie vieno stalo vienu metu sėdėjo keli mokslininkai. Aleksejus prisimena, kad kartais palikdavo savo darbo vieta visai dienai, paskui į darbą naktimis tyloje, kai visi parėjo namo.

Karjera po „Tetris“ sukūrimo

1984 metais Aleksejus Leonidovičius Pajitnovas sukūrė legendinį „Tetris“ žaidimą, kuris tapo kone populiariausiu žaidimu pasaulyje. Visuomenėje informacines technologijas Pajitnovas tampa atpažįstamas ir populiarus. 1988 m., bendradarbiaudamas su Bullet-Proof Software, jis įkūrė žaidimų kūrimo įmonę AnimaTek. Korporacija klestėjo eksponentiškai, ir jau 1991 metais Tetris išradėjas Aleksejus Pajitnovas persikėlė į JAV.

„Tetris“ kūrimas – kaip tai buvo?

Devintajame dešimtmetyje SSRS mokslų akademijos Skaičiavimo centre jaunieji mokslininkai ištisas dienas sėdėjo savo laboratorijose, spręsdami nuobodžias ir nereikšmingas problemas. Vienas iš jų buvo Pajitnovas Aleksejus Leonidovičius, kuris tuo metu kūrė kalbos atpažinimo programą, taip pat tyrinėjo dirbtinio intelekto problemas. Jaunam programuotojui pavestos pareigos buvo neįtikėtinai sunkios, Aleksejus nuolat turėjo kurti sudėtingiausius algoritmus, nepatenkintus įprasto proto jėgomis.

Turėdamas didelę žinių bazę, Pajitnovas nusprendžia sukurti įdomų galvosūkį, kuris pritrauks ir suaugusiuosius, ir vaikus. Tetris toli gražu nėra pirmasis talentingo programuotojo išradimas. Iš pradžių jis sukūrė žaidimą, kuriame figūros turi pakeisti savo vietą veikiamos kitų objektų gravitacijos. Artėjant kodo rašymo pabaigai Aleksejus suprato, kad paprasto kompiuterio procesoriui toks žaidimas būtų nepakeliamas, todėl teko supaprastinti kai kurias programos subtilybes.

Dėl to jis sukuria žaidimą, kuriame figūrėlės (kaip ir Tetris) susideda iš penkių kvadratų, kurių paskirtis identiška būsimam žaidimui „Tetris“. Deja, visuomenei toks kūrinys nepatiko, todėl Pajitnovas nusprendžia dar labiau supaprastinti žaidimą, kur kiekviena iš 7 esamų figūrų susideda iš keturių kvadratų.

Tik septynios figūros, o pasaulinė šlovė jūsų kišenėje

Ar kada susimąstėte, kodėl žaidimas „Tetris“ turi tokį pavadinimą? Ir kodėl jame tik septynios figūros? Reikalas tas, kad iš pradžių žaidimas turėjo pavadinimą „Tetramino“, kur „tetra“ graikiškai reiškia skaičių „keturi“. Populiarėjant, patys šio žaidimo vartotojai jam suteikė supaprastintą pavadinimą, kad būtų lengviau ištarti.

Interviu Aleksejus Pajitnovas paaiškino, kodėl žaidime yra tik 7 figūros:

„Žaidime dalyvauja tik septynios figūros, ir tai iš tikrųjų yra sėkmė, nes skaičius 7 yra dydis laisvosios kreipties atmintisžmogaus smegenys, tai yra, ką žmogus gali atsiminti. 7 skaitmenų telefono numerį įsiminti daug lengviau nei 8 skaitmenų. Septynių žmonių komanda yra maksimumas, kuris gali apsieiti be viršininko ar meistro. Aštuonių ir daugiau žmonių grupėje, kurioje nėra lyderio, sklandžiai ir struktūriškai dirbti neįmanoma. Tokiame kolektyve nuolat kils nesutarimų ir prieštaravimų, nesvarbu, ar esate draugai, bendražygiai ar tik pažįstami. Tokias išvadas darau remdamasis asmenine patirtimi.

Tetris kūrimo motyvai

Žaidimas „Tetris“ buvo sukurtas tam, kad žmonės smagiai praleistų laiką ir galėtų atsipalaiduoti nuo rutinos ir kasdienių pareigų. Pajitnovas visada sakydavo, kad geriausia streso mažinimo alternatyva, be sporto, yra kompiuteriniai žaidimai.

Žaibo šlovės vaizdo žaidimas

Pabaigus rašyti „Tetris“ žaidimą, SSRS mokslų akademijos, kurioje dirbo Pajitnovas, darbuotojai juo žavėjosi pirmąsias porą savaičių. Kai žaidimas tapo prieinamas visiems, pramogų produkto šlovė per kelias dienas pasklido visuose miestuose. Per porą mėnesių visas pasaulis žaidė Tetris. Šiuo metu Aleksejus Pajitnovas kartu su kolegomis nusprendžia kurti nauja versijažaidimai, kuriuose figūros jau bus įvairiaspalvės, taip pat bus vedama rekordų statistika, kad žmonės galėtų varžytis tarpusavyje.

Kol visas pasaulis mėgavosi žaidimu, Aleksejus dar daug metų gyveno įprastą gyvenimą ir dirbo SSRS mokslų akademijos skaičiavimo centre. Faktas yra tas, kad jis neturėjo galimybės užsidirbti pinigų iš žaidimo, nes teisės priklausė Mokslų akademijai. Viskas buvo paaiškinta tuo, kad žaidimas buvo rašomas darbo valandomis veikiančiu kompiuteriu.

Aleksejus Pajitnovas: žaidimo „Tetris“ kūrėjo statusas

Kaip žinote, 1996 m. Pajitnovas pradėjo dirbti „Microsoft“, kur sukūrė galvosūkių seriją „Pandoros skrynia“. Čia jis dirbo iki 2005 m. ir per tą laiką sugebėjo iš šios bendrovės įsigyti keletą didelių akcijų, kurios iki šių dienų jam atneša tam tikrą procentą. Pats Aleksejus nelaiko savęs milijonieriumi. Viename interviu jis pasakė taip: „Milijonierius yra tas, kuris išleidžia milijonus, bet ne tas, kuris turi milijoną. Gyvenu gana kukliai ir nesimėtau pinigų į dešinę ir į kairę, todėl niekada nepavadinčiau savęs milijonieriumi.

Priklausomybė nuo kompiuterių – kūrėjų ar vartotojų kaltė?

IN modernus pasaulis daugelis žmonių per daug įsitraukia į vaizdo žaidimus, taip sukeldami sau problemų Kasdienybė. Jie prisiriša psichologiškai Kompiuteriniai žaidimai ir internetą ir gali skirti savo laiką sėdėjimui prie kompiuterio ištisas dienas. Informacinių technologijų amžius gerokai pakeitė žmonių protus. Kartą Pajitnovo paklaustas, kaip galėtų pakomentuoti šią situaciją, jis atsakė taip:

„Žmonės dažnai man sako, kad pavogiau daug laiko, kai jie sužino, kad esu „Tetris“ kūrėjas. Aš visada jų klausiu: „Tas laikas buvo geras ar blogas? Jie visi atsako kaip vienas, o tai yra gerai. Taigi aš daviau šį laiką ir jo nepavogiau.

Pirmiausia reikia suprasti, kad svetainė įvairiose svetainėse skiriasi. Jei lygintume sklypo statybą su statyba, tai yra „pavėsinės“ ir „trobeles“ aikštelės, taip pat yra „dangoraižiai“ ar dideli „prekybos centrai“. Kuo sudėtingesnė svetainė, tuo ji gali būti brangesnė mėgėjui, kuris gali lengvai atlikti paprastas užduotis mažose svetainėse.

Kalbėsime apie reikalavimus vienam programuotojui, atsakingam už nedidelę internetinę parduotuvę (30-3000 prekių kortelių, 1-10 užsakymų per dieną). Šis specialistas turėtų būti generalistas, tai yra, vienodai susipažinęs su backend - plėtra serverio pusėje ir su frontend - plėtra vartotojo naršyklės pusėje).

1. Minimalūs reikalavimai

Jei internetinė parduotuvė jau turi svetainę, tuomet kandidato gyvenimo aprašyme turi būti visos arba beveik visos svetainėje naudojamos technologijos. Sąrašą galite patikrinti su kūrėju.

Jei įmonė ketina kurti svetainę nuo nulio, programuotojas turėtų žinoti:

  • viena iš įprastų kalbų: PHP/Python/Ruby/C#;
  • viena iš DBVS: MySQL/PostrgreSQL/MSSQL/Oracle/MongoDB;
  • viena iš labiausiai paplitusių turinio valdymo sistemų (TVS): Bitrix, UMI, Drupal, ShoppingCart, WordPress;
  • turėti Linux ir žiniatinklio serverio administravimo įgūdžių, pavyzdžiui, vieną iš Nginx/Apache/IIS arba turėti žiniatinklio serverių prieglobos AWS debesies platformose, Google Cloud, Azure patirties.

Šių įgūdžių nebuvimas nereiškia, kad jis yra mėgėjas. Tai tiesiog tau netinka.

2. Susirašinėjimo pažintis

Silpno programuotojo požymius galima nustatyti dar prieš tęsiant pokalbį, ištyrus portfolio. Jei programuotojas nurodė savo darbus (svetaines), turėtumėte juos atidaryti „Google Chrome“, eikite į naršyklės meniu skyrių „Papildomi įrankiai“, pasirinkite elementą „Kūrėjo įrankiai“ ir atidarykite skirtuką „Console“.

Tada leiskitės į „kelionę“ svetainėje kaip įprastas lankytojas: atidarykite kelis puslapius, pabandykite užduoti klausimą naudodami atsiliepimų formą arba užpildykite užsakymo krepšelį. Jei konsolėje atsiranda klaidų, jos automatiškai paryškinamos raudonai, tai yra blogas ženklas. Galbūt ne dėl konkretaus kūrėjo kaltės, jei jis dirbo komandoje, tačiau tai nepadeda visos komandos.

Portfelio neturėjimas arba atsisakymas juo demonstruotis yra tikras nepatyrusio kūrėjo ženklas.

3. Plaukėme, nežinome

Natūralu, didelę reikšmę turi praktinės patirties. Jei pokalbio metu, atsakydamas į klausimus apie praeities įvykius, kandidatas „plaukia“ ir negali paaiškinti savo veiksmų, turėtumėte būti atsargūs.

Pavyzdžiui, programuotojas kalba apie sistemos kūrimą naudojant MySQL, bet negali įvardyti alternatyvių technologijų ir priežasties, kodėl pasirinko šią. Tuo pačiu net variantas „Aš tiesiog ją geriau pažįstu“ tinka kaip „teisingas“ atsakymas.

Kompetentingas specialistas galės išsamiai papasakoti apie savo plėtrą ir paaiškinti, kodėl naudojo konkrečias technologijas.

Kaip patikrinti: užduokite programuotojui klausimų apie praeities projektų detales ir paklauskite, kodėl kūrimas buvo atliktas taip, kaip buvo. Jei kandidatas aiškiai neatsako, tikėtina, kad jis prisiima nuopelnus už komandos ar kitų kolegų darbą. Tuo pačiu svetainės savininkui nereikia suprasti programavimo subtilybių, užtenka užduoti patikslinančius klausimus.

4. Paukščio liežuvis

Kitas svarbus dalykas – kandidato gebėjimas kalbėti „žmogiška“ kalba. Geras specialistas gebėti paaiškinti savo darbą paprastais žodžiais. Bet jei pareiškėjas kalba tik terminais, jam bus sunku bendrauti su kolegomis ir įmonės savininku.

Kaip patikrinti: paprašykite jo pakalbėti apie kažkokią klaidą, dėl kurios jį „skraidino“ vadovybė. Pavyzdžiui, „atsiliepimo“ forma svetainėje neveikė 2 savaites. Įsivaizduokite, kad tai jūsų svetainė.

Nurodykite, kokia buvo klaidos esmė, kaip jis apie tai sužinojo, kaip rado priežastį ir pašalino klaidą. Jei pareiškėjas kalbės „abstrakčiais“ – paprašykite paaiškinimo. Jei vis dar nesate patenkintas paaiškinimu, bus sunku su juo dirbti.

5. OpenSource

Daugelis ekspertų skelbia savo pokyčius „GitHub“ (arba „BitBucket“). Jei programuotojas turi kelis viešus projektus, o juo labiau, juos pastebėjo ar nukopijavo (šakės) kiti vartotojai, tai nemenkas pliusas. Didelis skaičius apie kopijavimą kalbama aukštas lygis profesionalumas.

Ieškos Dano Abramovo lygio programuotojo didelė kompanija, lygis (jis šiuo metu ten dirba), bet jei jūsų kandidatas turi projektų su ne nuliu balais ir „žalioji zona“ taip pat užpildyta – puiku! Nedvejodami skambinkite jam pokalbiui.

Kaip patikrinti: paprašykite pareiškėjo atsiųsti nuorodą į paskyrą GitHub (BitBucket) ir išvardyti projektus, kuriais jis didžiuojasi. Atkreipkite dėmesį į „paskyros amžių“, projektų skaičių ir kitų vartotojų kodo kopijų skaičių.

6. Senas bagažas

Kompetentingas specialistas turėtų stebėti naujų priemonių ir technologijų atsiradimą. Vienas dalykas, jei programuotojas yra priverstas dirbti su parašyta svetaine pasenusi kalba, kita – kai jis laikosi pernelyg konservatyvaus požiūrio.

Šiuolaikinės priemonės gali žymiai sutrumpinti kūrimo laiką. Beje, vaikytis ir nepagrįstai įvesti viską, kas nauja, irgi yra blogai.

Kaip patikrinti: paklauskite, kokių įrankių ar technologijų kandidatas išmoko per pastaruosius metus ar dvejus ir kaip jos padėjo jam darbe.

7. Kainos nuo lubų

Natūralu, kad gero programuotojo darbas nėra pigus, tačiau nereikia skubėti tobulėti brangiausiam specialistui rinkoje. Jei kandidatas iš karto paskelbia visos svetainės kūrimo išlaidas, nepatikslindamas jai keliamų reikalavimų, tai bent jau keista.

Atlikdami tokias paprastas užduotis kaip „mygtuko spalvos keitimas“ arba „svetainės schemos kūrimas“, turėtumėte tikėtis greitų atsakymų – atitinkamai „užtrunka 5 minutes“ arba „galiu tai padaryti per 2 valandas“.

Be to, iš kelių specialistų galite gauti sąnaudų ir vykdymo laiko sąmatas ir jas palyginti. Jei programuotojas užtrunka valandą, kad atliktų penkių minučių užduotį, greičiausiai jis nėra profesionalas arba tiesiog žaidžia tam, kad uždirbtų daugiau.

Kaip patikrinti: paklauskite kandidato per kiek laiko jis pakeis internetinėje parduotuvėje mygtuko „Pirkti“ spalvą ir pasidarys svetainės žemėlapį.

8. Rankų darbo

Yra juokaujama, kad geras programuotojas yra tingus programuotojas, bet tame yra dalis tiesos. Kompetentingi specialistai rašo kodą taip, kad sumažintų ne tik tų, kurie tada dirba su programa, bet ir savo pastangas. Jie bando naudoti kažkieno paruoštą kodą (OpenSource) ir tame nėra nieko blogo.

Jei programuotojas nežino, kaip optimizuoti savo darbą, jis suleis daug darbdavio laiko ir pinigų toms pačioms užduotims atlikti.

Kaip patikrinti: paaiškinkite, kaip programuotojas elgiasi kurdamas kodą, paprašykite pavyzdžio. Gerai, jei iš pradžių jis ieško paruošto sprendimo, o jei jo nėra, kodą parašo pats. Pavyzdžiui, galite paklausti programuotojo, kaip jis sukurs kalendorių, kurio gali prireikti užsakymo formoje, kad pasirinktumėte pristatymo datą. Geras atsakymas yra rasti paruoštą komponentą.

9 papildomi dvyniai

Pasikartojantis kodas yra tikras nepatyrusio programuotojo ženklas.

Paimkime, pavyzdžiui, kontaktų puslapyje esančią „atsiliepimų“ formą, kurią reikia patalpinti kataloge ir prekių kortelėse. Jei kūrėjas tiesiog nukopijuoja dalį kodo ir įklijuoja jį į reikiamus puslapius, specialisto profesionalumas palieka daug norimų rezultatų. Nes kai reikės pakoreguoti grįžtamojo ryšio formą, geriausiu atveju teks atlikti trigubą darbą, o blogiausiu – programuotojas pamirš pakeisti vieną iš kodų.

Patyręs specialistas parašys funkciją, kuri įkels „atsiliepimų“ formą skirtinguose puslapiuose iš to paties šaltinio. Taigi, prireikus kodą pataisyti, pakeitimai automatiškai atsiras visuose svetainės, kurioje jis pateikiamas, puslapiuose.

Kaip patikrinti: paklauskite kandidato, ar jis dubliuoja kodą. Ne mėgėjas pasakys „taip, taip atsitinka“, bet jis tai paaiškins neracionaliu laiku, skirtu atsikratyti dublikatų. Jei atsakymas yra „ne“, vadinasi, programuotojas meluoja, mažai rašo arba yra perfekcionistas – bet kuris iš šių paaiškinimų yra blogas pasirinkimas.

10. Supjaustykite gyvą

Gerąja prasme programuotojas turėtų pasidaryti svetainės kopiją, joje išbandyti pakeitimus ir tik patikrinęs pakeitimus perkelti juos į pagrindinį šaltinį.

Kaip patikrinti: paklauskite kandidato, kaip jis atnaujino svetainę ankstesnėje darbo vietoje.

11. Pasitiki, bet netikrina

Bet kokie svetainės pakeitimai turi būti išbandyti. Didelėse įmonėse užduotį sprendžia bandytojai, tačiau vidutinėse ir mažose įmonėse ji krenta ant kūrėjo pečių.

Nepatikrinus svetainės būklės po pakeitimų, vartotojai gali rasti daug klaidų. Problemos atstums potencialius klientus, o tai neigiamai paveiks įmonės pelną.

Svarbu, kad programuotojas patikrintų ne tik svetainės veikimą, bet ir patikrintų, ar nėra klaidų, kurias gali padaryti vartotojai. Taigi, kuriant atsiliepimo formą, reikia patikrinti ne tik jos teisingą siuntimą, bet ir svetainės atsakymą, jei laukeliai būtų užpildyti klaidingai. Pavyzdžiui, patikrinkite, ar netyčia įvedus telefono numerį lauke „El. paštas“, vartotojui bus rodomas klaidos pranešimas.

Kaip patikrinti: jei kyla abejonių dėl programuotojo, išbandykite svetainę patys. Tarkime, integravę svetainę su mokėjimo sistemomis, pabandykite sumokėti už užsakymą, pavyzdžiui, per Yandex.Money. Viskas turėtų vykti sklandžiai.

12. Šypsokitės ir mojuokite


Dabartinis svetainės pakeitimų tempas neleidžia pašalinti visų klaidų, tai labai brangu ir lėta. Todėl kompetentingas kūrėjas sukuria stebėjimo sistemą ir sužino apie problemas dar prieš tai, kai vartotojai jį informuoja.

Blogai, jei programuotojas ilgai taiso problemas arba jas ignoruoja. Geras specialistas vadovaujasi savo kodeksu ir, iškilus problemoms, gali greitai nustatyti priežastį ir ją pašalinti.

Kaip patikrinti: paprašykite programuotojo papasakoti, kaip jis sužinojo apie klaidas ankstesniuose projektuose.

Darbas Vakaruose pritraukia daug mūsų tautiečių, turinčių profesionalių žinių programavimo srityje ir norinčių realizuoti savo potencialą Europoje ar Šiaurės Amerika. Prisimenu, kad kartą šių eilučių autorė pagal studentų mainų programą išvyko dvejiems metams studijuoti į užsienį. Jei turėčiau galimybę pabendrauti su žmonėmis, kurie ten jau studijavo iki manęs, tada būtų daug lengviau adaptuotis. O klausimas – išvykti ar ne – sukeltų mažiau abejonių. Todėl šiandien užduodame klausimus Andrejui Šulinskiui, žmogui, kuris dirbo programuotoju Rusijoje ir išvyko į Torontą, Kanadą, norėdamas ten tęsti savo karjerą. profesinę veiklą...

Interviu

Aleksejus Perevertailovas: Laimei, vienas kitą pažįstame asmeniškai, iškart pereisime prie „tu“ ir ne tokio formalaus pokalbio formato. Pirmas klausimas – kada išvykote iš Rusijos ir kokie buvo tokio apskritai rimto žingsnio, daugeliui žmonių reikalaujančio daug apmąstymo, motyvai?


Andrejus Šulinskis: Mano išvykimas gražus Ilga istorija. Toks sprendimas priimtas po liūdnai pagarsėjusios 1998-ųjų bankų krizės. Dėl daugelio priežasčių imigracijos procesas labai užsitęsė, 2001 m. lapkritį turėjau pokalbį, o 2002 m. gruodį gavau vizą. Pasibaigė kitų metų vasarį, todėl iš karto išvykau porai savaičių į Kanadą, išduotas Reikalingi dokumentai ir grįžo į Maskvą. Galiausiai 2003 m. spalį jis persikėlė į savo naująją tėvynę.
Kodėl pakeičiau aplinką? Turbūt nieko naujo nepasakysiu. Tikėjosi geresnių profesinių perspektyvų. Visada labai nemėgau daugelio rusiško gyvenimo bruožų: kasdienybės grubumo, purvo, nepastovumo. Minėta krizė man buvo labai stiprus smūgis, sugriuvo gražios iliuzijos... Taip pat labai mėgstu keliauti, ką padaryti su Kanados pasu daug lengviau.


Aleksejus Perevertailovas Kl.: Ar pavyko iš karto susirasti darbą? Kokius pasiūlymus apsvarstėte ir kokie buvo reikalavimai kandidatams?

Andrejus Šulinskis: Pirmąją sutartį gavau 2003 m. lapkritį. Mano draugas padėjo. Projektas buvo nedidelis, bet gana įdomus ir labai padėjo tiek psichologiškai, tiek profesine prasme. Ištempiau raumenis prieš rimtesnį darbą, kuris mane surado 2004 m. sausio pabaigoje.
Reikalavimai, išskyrus liūdnai pagarsėjusią Šiaurės Amerikos patirtį, yra gana įprasti – trumpai tariant, „temos išmanymas“. :-) Deja, daugelis įmonių ir verbuotojų tikrai nemėgsta dirbti su naujokais, o kiti, atvirkščiai, naudojasi naujų emigrantų noru sutikti su bet kokiomis sąlygomis. Nesakysiu, kad tai plačiai paplitusi praktika, bet tai nėra taip jau reta.
Šis puodelis mane aplenkė, nors jau buvau pasiruošęs eiti skenuoti dokumentų. Apskritai visada ruošiausi tam, kad nebus lengva ir, galbūt, teks daryti tai, kas nėra mano mėgstamiausia. Pateikiau gyvenimo aprašymą į visas pareigas, kurias jis bent kažkiek atitiko.


Aleksejus Perevertailovas: Koks tu programuotojas? Kokius diplomus ir pažymėjimus turite?

Andrejus Šulinskis: Esu tipiškas bendrųjų programų programuotojas/analitikas/architektas. Jis baigė Maskvos valstybinio universiteto Sistemų programavimo katedrą, tačiau per savo gyvenimą neparašė nė vienos „sistemos“ kodo eilutės. :-) Anksčiau rašiau C++, bet prieš keletą metų perėjau į Java. Ilgą laiką dirbo bankininkystės sektoriuje, tada buvo pora telekomunikacijų projektų. Kanadoje jis pirmą kartą sukūrė dokumentų saugojimo ir apdorojimo sistemą rinkodaros kompanijai skambiu Arnoldo vardu. Dabar dirbu įmonėje „Novator“, kuriu „variklio“ „Java“ versiją svetainėms, susijusioms su mažmenine prekyba internetu.
Turiu vieną diplomą. Gautas 1996 m. Maskvos Kompiuterinės matematikos ir kibernetikos fakultete Valstijos universitetas. Prieš išvykdamas išlaikė Sun Certified Java programuotojo 1.4 egzaminą. Planavau gauti likusius šios linijos sertifikatus, bet daug dirbu ir nerandu tam laiko.



Aleksejus Perevertailovas: Apskritai, ar galite pasakyti - kurios programavimo kalbos ir kurie programuotojai dabar yra paklausesni užsienyje ir visame pasaulyje?

Andrejus Šulinskis A: Visų pirma .NET ir J2EE. Ką galvojai išgirsti? ;-) Šios 2 platformos dengia dangų... Tačiau, sprendžiant iš skelbimų darbo paieškos svetainėse, vis dar yra tam tikra paklausa C++, Cobol, Perl ekspertams. Kartais reikia – ir net labai – siaurų specialistų, išmanančių kažkokį „įmantrų“ SAP. Tačiau, žinoma, didžioji dalis programuotojų ir kitų vyresniųjų kūrėjų yra „javistai“ ir „taškininkai“. :-)


Aleksejus Perevertailovas: Iš savo patirties pasakykite – ar tarp programuotojų yra konkurencija įmonėje? Ar yra kokių nors griežtų taisyklių? Už ką jie gali būti atleisti? Ar yra a karjerą? Ar dirbami viršvalandžiai ir jei taip, kaip jie apmokami? Dirbote programuotoju Rusijoje, galite palyginti, tad kyla klausimas: kokius profesinių reikalavimų ir darbo eigos organizavimo skirtumus pastebėjote šalyje ir užsienyje? Ar jums buvo sunku rasti bendrą kalbą su projekto vadovu?


Andrejus Šulinskis: Tose įmonėse, kuriose turėjau galimybę dirbti, nebuvo akivaizdžios konkurencijos, dar žinomos kaip „socialinė konkurencija“. :-) Bet tuo pačiu galioja paprastas dėsnis: jei gerai dirbi, tai pastebės ir įvertins. Bent jau pas mane taip buvo. Ir atlyginimą pakėlė, ir įdomesnius darbus patikėjo.
Žinoma, jie gali būti atleisti. Iš esmės taip yra dėl įmonės problemų (mažinimo) arba dėl aiškaus neatitikimo tarp žmogaus galimybių ir jo pareigų. Labai nemėgstamas bandomasis laikotarpis gali būti naudingas. Taigi interviu per daug neperdėti savo sugebėjimų. Pasitaiko ir atleidimo iš darbo dėl neteisėtos darbuotojo veiklos.
Kalbant apie griežtas taisykles - neturėtumėte laikyti gigabaitų vaikų pornografijos veikiančio kompiuterio standžiajame diske - už tai gali būti baudžiama. Visose sutartyse yra daugiau ar mažiau standartinių sąlygų dėl informacijos neatskleidimo, įmonės intelektinės nuosavybės teisių į jūsų kodą (abejotinas turtas, IMHO :-)). Dažnai draudžiama pereiti į toje pačioje pramonėje veikiančias įmones, papildomai užsidirbti iš šono. Tokios paranojos laipsnis priklauso nuo daugelio veiksnių. Stambūs bankai ir kitos „kietos“ įmonės priversti pasirašyti sąrašus po 8 lapus. Bet tas pats yra ir Rusijoje, bet čia, manau, kiek griežčiau stebi šių sąlygų vykdymą.
Profesiniai reikalavimai Toronte ir Maskvoje yra vienodi. Įtariu, kad jie sutampa su Londono ir Tokijo firmų reikalavimais ir yra artimi Paryžiaus pageidavimams. Skirtumas tas, kad Prancūzijoje jums gali prireikti prancūzų kalbos. Gali, bet neturėtų – kalbėjausi su įdarbintojais, kurie samdė žmones dirbti Lione įsikūrusioje įmonėje. Nuoširdžiai prisipažinau, kad prancūziškai nemoku net turėdamas žodyną. „Ak, ten visas dokumentų srautas yra anglų kalba“, – buvo atsakymas man. :-)
Darbo eigos organizavimas labai priklauso nuo projektui vadovaujančių žmonių. Jei jie nuo pat pradžių gerai įvykdė ir neleis projektui sužlugdyti net tada, kai jis yra visur, tada viskas vyksta gana sklandžiai. Kitu atveju – įprasta netvarka. Mieli skaitytojai, tikriausiai jau atspėjote, kas nutinka dažniau. :-)
Niekada neturėjome problemų su projektų vadovais. Visada nesunkiai rasdavau bendrą kalbą su žmonėmis – tiek Rusijoje, tiek Kanadoje. Turbūt pastebėjote, kaip dažnai kartoju žodžius „tas pats“, „tas pats“, „nėra skirtumo“. Iš tiesų, aš pastebėjau, kad rusai ir kanadiečiai nesiskiria vienas nuo kito, kaip įprasta manyti. Žinoma, yra vertimo sunkumų. Tačiau, kaip ir viename nuostabiame filme, jie dažniausiai siejami su individualiomis žmonių savybėmis, o ne su „civilizaciniais“ skirtumais. Štai kaip aš tai gavau IMHO. :-)


Aleksejus Perevertailovas: Ar programuotojai Kanadoje yra labai apmokama profesija, palyginti su kitais? Jei lygintume šį santykį su Rusija, kur geriau dirbti programuotoju (pagal finansinę naudą)?

Andrejus Šulinskis: Taip, atlyginimai vis tiek viršija vidutinį. Konkurencija išaugo, bet atlyginimas vis dar geras. Tačiau tai tik subjektyvi nuomonė, o Kanadoje esu mažiau nei dvejus metus. :-)


Aleksejus Perevertailovas: Kur, Jūsų nuomone, lengviau tobulinti savo profesinį lygį – šalyje ar užsienyje? Ar tai apskritai kažkaip priklauso nuo šalies (o tiksliau priklauso nuo konkretaus žmogaus)?

Andrejus Šulinskis: Mano nuomonė – pirmiausia iš žmogaus. Kas ieško, visada ras naudingų knygų, žurnalai, forumai ir, žinoma, tie, su kuriais galite bendrauti profesinės temos. Žinoma, manau, kad dirbate šalyje, kurioje IT pramonė yra gerai išvystyta.


Aleksejus Perevertailovas: Kokias priemones naudojate (kūrimo aplinkas ir pan.)? Manau, kad Kanadoje visa programinė įranga, kurią naudoja programinės įrangos kūrimo įmonės, yra licencijuota ar ne?

Andrejus Šulinskis: Sakykim – dauguma programų yra arba perkamos, arba gaunamos nemokamai. :-) Kartais žmonės įdeda ką nors nelegaliai gauto, bet tai daroma tik dėl pažinties – jei nėra bandomoji versija. Įmonės arba apskritai draudžia naudoti piratinę programinę įrangą, arba verčia pasirašyti dokumentą, pagal kurį jūs pats esate atsakingas už kietojo disko turinį.
Naudojamos įvairios programos. IDE: Eclipse, IDEA, NetBeans. Duomenų bazės įrankiai: DbVisualizer, Aqua Data Studio. Kodas ir dokumentai saugomi CVS. Nuo įsigyto susidorojo su WebSphere. Visi pažįstami veidai, tiesa? :-) Ir, žinoma, .NET – sprendimų yra visoms progoms.


Aleksejus Perevertailovas: Ar prisimenate kokių nors juokingų ar juokingų atvejų darbe?

Andrejus Šulinskis: Prašau. Bosas ką tik paklausė vieno iš savo kolegų, ar jis ilgai atnaujino kodą. „Eh...prieš tris dienas...“ – grėsmingas žvilgsnis – „mmm... gal dvi“ – ​​grėsmingas žvilgsnis – tyla – sufleruoju: „vienas, kitaip sandoris nepavyks“ – situacija prastėja. :-)


Aleksejus Perevertailovas: Norėčiau užduoti keletą bendro pobūdžio klausimų, jei neprieštaraujate... Kaip manote, ar realu organizuoti savo verslą užsienyje? Programuotojo atveju – sukurti savo komercinį programinės įrangos produktą ir jį parduoti, vystyti, palaikyti? Kaip manote, ko tam reikia?

Andrejus Šulinskis: Mano nuomonė – taip, tai tikra. Čia verslininkas gali nesibaiminti banditų ir valdžios reketo, užsiregistruoti ir valdyti savo verslą yra gana paprasta. Bet, žinoma, be dviejų pagrindinių bet kokios sėkmės komponentų – geros idėjos ir noro skirti visą laiką ir pastangas jai įgyvendinti – niekas neišeis. „Ideologinis darboholikas“ turi šansą. Pavyzdys – mano dabartinės įmonės prezidentas, kuris savo namo rūsyje parašė pirmąją sistemos versiją. :-) Dabar „Inovatoriui“ sekasi gerai.


Aleksejus Perevertailovas: Koks jūsų požiūris į atvirojo kodo bendruomenę?

Andrejus Šulinskis: Žinoma, teigiama. Manau, kad šios bendruomenės darbas yra didžiulė pažanga apskritai ir pagrindinė Java technologijų sėkmės priežastis, o tai taip pat neabejotinai naudinga pramonei. Vargu ar kitaip pavyktų sėkmingai konkuruoti su garsiuoju monstru. :-) Žinoma, naudojant atvirojo kodo produktus yra tam tikra rizika. Tuo pačiu metu daugelis šių sprendimų turi puikią reputaciją, yra rinkoje jau daug metų – ir jums nereikia nuodugniai pažinti jų „vidaus“. Visuomenė padės išspręsti beveik bet kokią problemą, o to toli gražu nedaro jokia komercinės paramos tarnyba.


Aleksejus Perevertailovas: Kaip manote apie patentų teisę šioje srityje programinė įranga? Ar tai slopina pažangą? Kokie, jūsų nuomone, yra geriausi programinės įrangos naujovių apsaugos mechanizmai?

Andrejus Šulinskis: Deja, aš nesu pasiruošęs atsakyti į šį klausimą. Tai gana rimta tema, kurios medžiagos aš nežinau pakankamai gerai.


Aleksejus Perevertailovas: Savo darbe turite susidurti su pažeidžiamumų paieškomis sukurtas produktas? Dabar daug dėmesio skiriama saugaus kodo rašymui, todėl mažesnė tikimybė išnaudoti įvairias buferio perpildymo klaidas ir pan. Ar savo darbe stebite galimą kodo saugumą? Ar turite kokių nors nurodymų šiuo klausimu?

Andrejus Šulinskis: Testavimas, tik bandymas - ir dar kartą bandymas! Vienetų testavimą laikau pagrindine priemone, užtikrinančia kodo saugumą. Paprastai visos programinės įrangos kūrimo įmonės stengiasi sukurti ir palaikyti testų rinkinį. Deja, tai retai įmanoma – daugiausia dėl trumpų projektų pristatymo terminų. Tačiau ilgalaikį kompetentingo testavimo poveikį sunku pervertinti. Dėl to ir iki tam tikros datos „Galatea“ jokiu būdu nėra iškritusi iš skulptorių rankų, o aplikacijos kūrimas iki kiek stabilios būsenos ilgam vėluoja, sukeldamas stresą visai komandai.
Taip pat labai svarbi yra kodavimo ir geros architektūros kūrimo disciplina. Asmeniškai aš daug išmokau iš Martino Fowlerio ir Rodo Johnsono knygų.


Aleksejus Perevertailovas: Ir pabaigai toks klausimas – jei būtų hipotetinė galimybė viską pradėti nuo pradžių – ar vis tiek taptum programuotoju?

Andrejus Šulinskis: Taip. Būtent specialybė padėjo man beveik neskausmingai persikelti į kitą šalį, įveikti įprastą emigrantų psichologinę ir materialinės problemos. Mano kvalifikacija ir profesionalumas yra paklausūs, kolegos klauso mano nuomonės, aš čia priklausau, bent jau dabar žinau Anglų kalba blogiau nei Java. :-) Be to, aš labai myliu savo darbą. Kiekvienas, kuris buvo susijęs su programavimu, tikriausiai prisimena akimirkas, kai ji – programa – pradeda veikti taip, kaip sumanei. Tomis akimirkomis vis dar esu tikrai laiminga.
Ir toliau. Esu labai dėkinga savo tėvams už didelę pagalbą renkantis profesinis kelias ir stovėdamas ant jo. Ne visiems pavyksta rasti _svoe_ verslą. Be jų dalyvavimo man tai nebūtų buvę įmanoma.
P.S. Žinoma, padėjo ir tai, kad buvau tokia protinga ir graži. :-)


Aleksejus Perevertailovas: Dėkojame už atsakymus, linkime visokeriopos sėkmės profesinėje veikloje!

Andrejus Šulinskis: Ačiū, sėkmės jums asmeniškai ir F-centrui apskritai. :-)
Įkeliama...