Peaaegu iga arendaja mĂ”tleb, kuidas oma oskusi arendada ja millist karjÀÀrisuunda valida: kas vertikaalne â s.t. juhtimine, vĂ”i horisontaalne â fullstack. Aastatepikkune töö ĂŒhe tootega ei ole vastupidiselt mĂŒĂŒtidele takistus, vaid vÀÀrtuslik vĂ”imalus. Selles artiklis jagame meie backend arendaja Alexei kogemusi, kes on pĂŒhendanud 6 aastat sertifitseerimisele ja lĂ€binud sel ajal tee arhitektiks.

Kes on arhitekt
IT arhitekt (tehnilise juhi) â on kĂ”rgema taseme arendaja, kes tegeleb globaalsete kĂŒsimustega IT projektides. Ta sĂŒveneb kliendi Ă€riprotsessidesse ja aitab lahendada tema probleeme tehnoloogiate abil, mÀÀrates samuti, kuidas on ĂŒles seatud see vĂ”i teine infotehnoloogia sĂŒsteem.
Sellisel professionaalil on vaja mitte ainult mĂ”ista ĂŒksikuid valdkondi, vaid ka nĂ€ha kogu protsessi:
- Ăriprobleemi seadmine.
- Arendus, sealhulgas programmeerimine, andmete ettevalmistamine, hoidmine ja töötlemine.
- Infrastruktuuri juurutamine ja toetamine.
- Testimine.
- Rakendamine.
- AnalĂŒĂŒs ja hooldus.
See tĂ€hendab oskust panna end iga spetsialisti vĂ”i meeskonna kohta arenduse elutsĂŒklis, mĂ”ista sĂŒgavalt hetkeolukorda sĂŒsteemides, tuvastada vigu ja sĂ”nastada eesmĂ€rke. MĂ”nikord ka isiklikult teostada operatiivset sekkumist.
Professionaalne areng arendajast arhitektiks nĂ”uab pikka aega â tavaliselt mitmeid aastaid. Selleks vajab arendaja nii praktilisi oskusi kui ka teoreetilist teadmist, mida saab tĂ”estada rahvusvahelise sertifikaadiga.
Rohkem kui 5 aastat ĂŒhes projektis â rutiin vĂ”i vĂ”imalus kasvamiseks?
MĂ”ned aastad tagasi alustasime koostööd suure meditsiinilise IT-sĂŒsteemi kallal vĂ€lismaalase kliendiga. Selles ulatuslikus projektis esines mitmeid probleeme:
- piiratud ligipÀÀsud;
- ebastabiilne tootmine;
- uskumatult pikad sprindid ja pikad kooskÔlastused.
âAeg on oma oskusi tĂ”staâ, â jĂ”udis sellisele otsusele ĂŒks juhtiv arendaja Aleksei, et ĂŒletada nimetatud raskused ja paremini sĂŒveneda sĂŒsteemi.
Aleksandr jagab kogemusi, kust alustada Ôppimist, millised sertifikaadid on olulised, kuidas ja miks neid omandada.
Esimene samm: arenda oma inglise keelt.
Programmeerimiskeeled on arendamise alus, kuid suhtlemiseks vajalikud keeled on sama tÀhtsad. Eriti ingliskeelsete klientidega suhtlemisel!
Kogemustest
Ăhel kaunil pĂ€eval helistab Aleksandrile kliendi esindaja. Sel ajal ei saanud meie arendaja kiidelda hulga sertifikaatidega â ei tehnoloogiate, juhtimise ega ka suhtlemise alal. VĂ”ib-olla ei olnud nad vajalikud â oskuslik spetsialist vĂ”ib olla ka ilma lisakategooriateta. Kuid probleem tekkis ikkagi.
Tuleb mÔista, et rÀÀgitav keel erineb radikaalselt kirjutatud keelest. Kui te tunnete end ingliskeelsete spetsifikatsioonide seas suurepÀraselt, kuid ei harjuta kuulmist ja rÀÀkimist, siis on meil teile halbu uudiseid. Sel juhul vÔivad telefonikÔned partneritega osutuda ummikuks.
Aleksei kuulis telefonikĂ”nes mĂ”ningaid tuttavaid sĂ”nu, kuid tema kolleegi kĂ”ne oli nii kiire ja eriline, et kĂŒsimuste peamine sisu pÀÀses temast mööda. LĂ€bi viisakuse ja soovimata olukorda keerulisemaks muuta, nĂ”ustus Aleksei kiiresti kĂ”igi ettepanekutega.
Kas on vaja rÀÀkida, et töö kÀigus tehti ebameeldivaid avastusi? Meie arendaja kirjutas alla sellele, millele ta oleks tÀiesti teadlikult vastanud, kui ettepanek oleks esitatud arusaadavas keeles.
Sel hetkel sai selgeks, et kuulamis- ja rÀÀkimisoskuste arendamine on hÀdavajalik. Parim viis selleks olid sertifitseerimised.
Inglise keele sertifitseerimine
Kuna kommunikatsioonide parandamiseks meie meditsiiniprojektis Ă”ppis Aleksei korraga mitmes programmis, sooritas ta tulemuseks FCE sertifitseerimise â First Certificate in English. See aitas tal hakata klienti paremini kuulma ja oma mĂ”tteid edastama.
EluhÀki:
VÀltige algtaseme inglise keele kursuseid. Oskus peab olema suunatud. Kui on vajalik inglise keel Àrikommunikatsiooniks, siis tuleb seda Ôppida. Kuid ei tohi ka liialdada ja sooritada CAE (Certificate in Advanced English). Selle eripÀra on keerukad sÔnad ja erilised vÀljendid, mida rahvusvahelises suhtluses peaaegu ei kasutata.

Teine samm: sertifitseerimine kogu tehnoloogia virnas
Alguses pÔhines projekt objektide ja relatsioonide kaardistamise tehnoloogial ORM. Tellija arendajate meeskond oli oma loominguga uhke, kuna kÔik oli tehtud uusimate kontseptsioonide kasutamisega, keeruliselt ja Àgedalt.
Siiski esines tootmises probleeme â eelkĂ”ige pidevalt kokkujantud SQL-server, mis ei olnud haruldane. Juhtus, et mure lahendamiseks oli tavaks teenuse taaskĂ€ivitamine. Tellija helistas tiimijuhile ja teatas, et on aeg taaskĂ€ivitada. LĂ”puks otsustasime sellega lĂ”petada.
Kliendi soov oli sĂŒsteemi soovituste parandamine â selleks oli vaja ellu viia profilaine ja regulaarselt optimeerimist. Profiliseerimise tööriistana valiti sellel ajal â umbes 2015. aastal â Ants Profiler, kuid see osutus nĂ”rgaks. Kerge detailisuse juures oli keeruline saada kasulikku teavet kriitilise koodibloki kohta. Maksimaalse detailituse korral hakkas Ants Profiler koodi muutma nii, et sĂŒsteemide töö oli ohus â seal, kus oli seadistatud profiilimine, kĂ”ik lihtsalt kokku kukkus. SeetĂ”ttu muudeti lĂ€henemist.
Alustasime statistika analĂŒĂŒsist
Statistika analĂŒĂŒsi kĂ€igus selgus, et 95% serveri töödest sisaldab primitiivset Ă€riloogikat neljas reas. Nende jaoks piisab ĂŒhest SQL-pĂ€ringust, mitte tĂ€ielikust pĂ€ringute kogumist, mille genereerib Ă€riloogika plokk koos ORM-iga.
Aleksandr pakkus vĂ€lja ja rakendas salajase protseduuri tööde liigutamiseks ilma ORM-ideta. Idee oli vastuolus projekti tavapĂ€rase paradigma, tiimijuht kohtus sellega ettevaatlikult, kuid tellija vĂ”ttis selle vastu ja nĂ”udis rakendamist. See polnud ĂŒllatav, kuna uus meetod vĂ”imaldas vĂ€hendada töötlemise viivitusi tootmises neljast tunnist mĂ”ne minuti peale â keskmiselt 98 korda.
Kuid meil olid endiselt kahtlused: kas see on Ă”ige otsus vĂ”i isiklike eelistuste kĂŒsimus? Usaldus igavese C# ja ORM-i vastu kĂ”ikus juhuslikkuse tĂ”ttu, mis nĂ€itas lihtsate lahenduste tĂ”elist jĂ”udu.
Teine juhtum
Meeskond kirjutas andmete töötlemiseks pĂ€ringu ORM-i paradigma raames, koostades selle kĂ”igi reeglite kohaselt, vigadeta. Selle töötlemine kestis 2-3 minutit ja need parameetrid tundusid vastuvĂ”etavad. Siiski, alternatiivne rakendus lihtsate select-ide ja view-de abil tagas tulemuse kiiremini â 2 sekundi jooksul.
Sai selgeks, et on aeg valida spetsialist, kes lĂ€bib kogu projekti teknoloogia sertifitseerimise, et mĂ”ista kĂ”iki nĂŒansse ja valida optimaalne meetod. Selle ĂŒlesande vĂ”ttis enda peale Aleksandr.
Esimesed sertifikaadid
Sisuga tutvumiseks lÀbis Aleksandr , katab kogu projekti tehnoloogilist tÔuket.
- TS: Windowsi rakenduste arendamine Microsoft .NET Framework 4 abil
- TS: Andmete ligipÀÀs Microsoft .NET Framework 4 programmeerimisel C#-s
- TS: Microsoft .NET Framework 3.5 Windows Forms rakenduste arendamine
- PRO: Windowsi rakenduste projekteerimine ja arendamine Microsoft .NET Framework 3.5 abil
- PRO: Windowsi-pÔhiste rakenduste projekteerimine ja arendamine Microsoft .NET Frameworki abil
- TS: Microsoft .NET Framework 2.0 â Windowsi-pĂ”hine kliendiarendus
Uue projekti töö optimeerimisega pĂŒĂŒdles meeskond jĂ€rgmistele jĂ€reldustele:
- SĂŒsteemide toimimiseks tuleb jĂ€rgida koodikirjutamise reegleid: mitte niidid ja kommentaarid, vaid tehnilised spetsifikatsioonid â andmebaasidesse pöördumiste arv, serveri koormus ja palju muud.
- Karmide ideede rakendamine vÔib tuua kaasa probleeme. Andmebaaside kontseptsioon on kogumite teooria, samas kui ORM on operatsiooniidee.
- Ideed, mis rikuvad tavapÀrast korda, vÔivad meeskonnas kohtuda vastupanu. Arendamine on ka suhete loomine ja oma seisukoha argumendiga esitamine.
- Sertifitseerimine laiendab silmaringi ja aitab mÔista, mida saab kasutada, samuti mida ei ole vaja kasutada.

Kolmas samm: uurige mitte ainult koodi
Masta IT-lahenduste loomisel on oluline arvestada mitmete teguritega. NĂ€iteks ei pöörata igal arendajal alati tĂ€helepanu vĂ”rguparameetritele â kuid isegi selle lĂ€bilaskevĂ”ime vĂ”ib mĂ”jutada Ă€riprobleemi lahendamist.
Seda tunnetust annavad 98. seeria sertifikaadid:
Need vĂ”imaldavad laiemat arusaama asjadest ja pÀÀseda vĂ€lja piiratud mĂ”ttemaailmast "ainult kood". Need on alused, kuid need on olulised, et mĂ”ista kĂ”ike sĂŒgavamal tasemel.
98. seeria sertifikaadid koosnevad vĂ€ikestest testidest â 30 kĂŒsimust 45 minuti jooksul.
Neljas samm: protsesside haldamine
Töötamine kliinikutes on vastutustundlikum ettevĂ”tmine kui nĂ€iteks mobiilimĂ€ngu loomine. Siin ei saa lihtsalt funktsiooni lisada ja toodet vĂ€lja anda â oluline on jĂ€rgida kooskĂ”lastamisprotsessi ja teha arvukalt muudatusi tellijalt, kuna mĂ€ngus on inimeste tervis ja elu.
TĂŒĂŒpiline Agile ei andnud selle projekti puhul soovitud tulemusi, ja iga sprindi kestus oli piisavalt pikk. Deployd toimusid iga 6 kuu kuni aasta tagant.
Lisaks on tehniliselt vĂ”imatu tuua kĂŒmne teenindatava kliiniku protsessid mingisse ĂŒhisnimekirja.
Nendes tingimustes kiiremate tulemuste saavutamiseks vajatigi arendajatelt isiklikku vastutust ning laiapindset protsesside nĂ€gemist â seega pidevat tĂ€helepanu ja kĂ”rget kvalifikatsiooni.
Kui spetsialist on protsessi sĂŒvenenud, nĂ€eb ta selgelt tulemusi, pĂ”hjuste ja tagajĂ€rgede terviklikku pilti. See on samavÀÀrselt tĂ€iendava motivatsiooni ja teadlikkuse faktor, mis parandab ĂŒlesannete ja probleemide lahendamise oskust.
Heasti korraldatud infrastruktuuri, Ă”igesti ĂŒles ehitatud arhitektuuri ja optimeeritud koodi korral vĂ”ib ĂŒks inimene vĂ”tta enda kanda palju protsesse. Kuid see ei tĂ€henda, et peaksime kasvatama universaalseid sĂ”dureid, kes suudavad ĂŒksi projekti juhtida. Kommunikatsioon ja meeskonnatöö on kriitilise tĂ€htsusega.
Meeskonnas mÔistab iga arendaja, et tema tegevustest sÔltuvad kolleegid. 5 minuti sÀÀstmine arendusetapis vÔib tÀhendada 5 tÀiendavat tundi testimist. Selle mÔistmiseks on oluline luua korralikud suhted.
Meie projektis aitasid Alekseyt protsesside omandamisel :
- M_o_R sihtasutuse sertifikaat riskijuhtimises
- Agile Scrum sihtasutus
- IT teeninduse haldamise sihtasutus
- EXIN Àrinfotehnoloogia haldamise sihtasutus
- PRINCE2 sihtasutuse sertifikaat projektijuhtimises
- Testimise inseneri sertifikaat
- Microsoft Operations Frameworki sihtasutus
- Agile teenuse projektid
Olen edX-is lĂ€binud kursused, mis aitasid vaadata sĂŒsteemi statistika ja Ă”hukese programmeerimise vaatenurgast ning hiljem toetasid mind arhitekti sertifikaadi saamisel:
- Lean tootmine
- Six Sigma: analĂŒĂŒsi, paranda, kontrolli
- Six Sigma: mÀÀratle ja mÔÔda
Six Sigma pÔhimÔtte kohaselt tagab statistiline kontroll kvaliteetse tulemuse ÀÀrmiselt suure tÔenÀosusega.
Oma taseme tÔstes jÔuab arendaja tavaliselt jÀrgmistele jÀreldustele:
- Töötage mitte palju, vaid efektiivselt.
- Ărge keerake elu keeruliseks, pĂŒĂŒdes jĂ€rgida vĂ€list poolt: keerukad tehnoloogiad ei pruugi probleeme lahendada paremini.
- SĂ”brunege spetsialistidega kogu tsĂŒkli jooksul ja selgitage vĂ€lja nende mured. Arhitekt peab valdama protsesse: probleemide tuvastamine, ĂŒlesande mÀÀramine, vĂ”rgu topoloogia projekteerimine, arendus, testimine, tugi ja kasutamine.
- Kontrollige iga funktsioon algusest lÔpuni.
- Tavaliselt ei vasta IT-protsessid Àriprotsessidele, ja selle probleemiga tuleb tegeleda.

Viies samm: mÔista arhitektuuri lÀbi Big Data prisma
Projektis tegime koostööd ĂŒsna suurte andmebaasidega. TĂ€pselt nii see tundus kuni teatud hetkeni. Kui Aleksei hakkas Ă”ppima suurandmeid edX-is, selgus, et 1,5 Tb projektis on vĂ€ike andmebaas. TĂ”sised mahud algavad 10 Tb-st, ja seal on vajalikud teised meetodid.
JÀrgmine samm sertifitseerimise teel oli kursus suurandmetest. See aitas mÔista andmevoogude korraldust ja kiirendada operatsioone tootmises. Samuti tuleks tÀhelepanu pöörata vÀikestele tööriistadele, nÀiteks alustada Exceli kasutamist eraldi mikrotegevuste lahendamiseks.
Sertifikaat:
Microsofti professionaalne programm: Big Data sertifikaat

Kuues samm: arendajast - arhitektiks
PĂ€rast kĂ”igi ĂŒlaltoodud sertifikaatide saamist, olles endiselt arendaja, hakkas Aleksei mĂ”istma, et saadud informatsioon on kĂ”rge abstraktsioonitasemega, ja see ei ole sugugi halb.
Mastaapne nĂ€gemus protsessidest viib arhitektuuri tasemele, mis on ĂŒks kĂ”rgeid sertifitseerimistasemeid.
Aleksei leidis arhitekti sertifitseerimise Sundblad & Sundbladilt. See programm on Microsofti poolt tunnustatud, selle arendamine algas juba 14 aastat tagasi koostöös ettevĂ”tte peakorteriga ja Rootsi kontoriga. Programm katab .NET Frameworki, nĂ”uete kogumise, teabevoo juhtimise ja paljusid teisi kĂŒsimusi kĂ”rgel tasemel, olles oluline tĂ”end arhitekti oskustest.
Programmi raames oli mitmeid Ă”pikursuseid. Sertifitseerimine aitas struktureerida teadmisi ja viia arendaja uuele tasemele â arhitektiks.

KokkuvÔtteks
Kuna Aleksei rĂ”hutab, on suurte IT-sĂŒsteemidega töötamisel oluline meeles pidada, et programmeerimine ei ole kallis meelelahutus, vaid tööriist Ă€riĂŒlesannete lahendamiseks. Iga vĂ€ljakutsega silmitsi seistes tuleb kindlasti vĂ€lja tuua business value, et projekt ei satuks ummikusse.
Arhitektil on programmeerimise ja selle elementaarsete koostisosade osas eriline vaatenurk:
- Andmevoo loomine ja/vÔi toetamine
- Teabevoo eraldamine andmevoo alusel
- VÀÀrtuse voogude eraldamine teabevoo alusel
- VÀÀrtusvoo monetiseerimine
Kui vaadata projekti arhitekti silmadega, tuleb alustada lÔpust: sÔnastada vÀÀrtus ja seejÀrel liikuda sellele andmevoo kaudu.
Arhitekt jĂ€rgib arendusreegleid, omades projekti ĂŒleĂŒldist nĂ€gemust. Selleni jĂ”udmine lĂ€bi praktika ja isiklike vigade on praktiliselt vĂ”imatu â tĂ€psemalt öeldes, on see vĂ”imalik, kuid vĂ€ga pikaajaline. Sertifitseerimine vĂ”imaldab laiendada silmaringi ja vaadata igat kĂŒsimust tĂ€ispildis, tutvuda tuhandete professionaalide kogemustega ning arendada oskust tĂ”husate probleemide lahendamiseks.
Praegu töötame eespool kirjeldatud meditsiinisĂŒsteemiga ĂŒle viie aasta ja oleme saavutanud mĂ€rkimisvÀÀrseid edusamme. Selle aja jooksul on Aleksei sooritanud ĂŒle 20 sertifitseerimiseksami:
- TS: Windowsi rakenduste arendamine Microsoft .NET Framework 4 abil
- TS: Andmete ligipÀÀs Microsoft .NET Framework 4 programmeerimisel C#-s
- TS: Microsoft .NET Framework 3.5 Windows Forms rakenduste arendamine
- PRO: Windowsi rakenduste projekteerimine ja arendamine Microsoft .NET Framework 3.5 abil
- PRO: Windowsi-pÔhiste rakenduste projekteerimine ja arendamine Microsoft .NET Frameworki abil
- TS: Microsoft .NET Framework 2.0 â Windowsi-pĂ”hine kliendiarendus
- 98-361: Tarkvaraarenduse alused
- 98-364: Andmebaaside alused
- M_o_R sihtasutuse sertifikaat riskijuhtimises
- Agile Scrum sihtasutus
- IT teeninduse haldamise sihtasutus
- EXIN Àrinfotehnoloogia haldamise sihtasutus
- PRINCE2 sihtasutuse sertifikaat projektijuhtimises
- Testimise inseneri sertifikaat
- Microsoft Operations Frameworki sihtasutus
- Agile teenuse projektid
- Lean tootmine
- Six Sigma: analĂŒĂŒsi, paranda, kontrolli
- Six Sigma: mÀÀratle ja mÔÔda
- Microsofti professionaalne programm: Big Data sertifikaat
- Sertifitseeritud tarkvara arhitekt â Microsofti platvorm

KÔik eksamid sooritades tÔusis Aleksei juhtivast arendajast projekti arhitektiks. Samuti oli sertifitseerimine vÔimas vahend nii ametialase arengu kui ka maine kujundamise osas kliendi silmis.
âSertifitseerimise puksâ aitas pÀÀseda juurde eraldi kriitilistele protsessidele, mis vajasid kontrolli ja arendamist. Euroopa IT-lahenduste kliendid hindavad tavaliselt sertifitseeritud spetsialiste kĂ”rgelt ning on valmis neile andma rohkem tegutsemisvabadust.
AitÀh tÀhelepanu eest! Loodame, et artikkel oli teile kasulik.
Allikas: habr.com
