Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Pothuajse çdo zhvillues bën pyetje se si duhet të zhvillojë aftësitë e tij dhe çfarë drejtimi të rritjes të zgjedhë: vertikale - domethënë të bëhesh menaxher, ose horizontale - të plotë. Puna shumëvjeçare në një produkt, në kundërshtim me mitet, bëhet jo një kufizim, por një mundësi e dobishme. Në këtë artikull, ne ndajmë përvojën e zhvilluesit tonë të backend Alexey, i cili i kushtoi 6 vjet certifikimeve dhe gjatë kësaj kohe punoi për t'u bërë arkitekt.

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Kush është arkitekt

Një arkitekt IT (udhëheqës i teknologjisë) është një zhvillues i nivelit të lartë që merret me çështjet globale në projektet e IT. Ai zhytet në proceset e biznesit të klientit dhe ndihmon në zgjidhjen e problemeve të tij duke përdorur teknologjinë, dhe gjithashtu përcakton se si do të strukturohet ky apo ai sistem informacioni.

Një profesionist i tillë duhet jo vetëm të kuptojë fusha individuale lëndore, por edhe të shohë të gjithë procesin:

  • Vendosja e një problemi biznesi.
  • Zhvillimi, duke përfshirë programimin, përgatitjen, ruajtjen dhe përpunimin e të dhënave.
  • Vendosja dhe mbështetja e infrastrukturës.
  • Testimi.
  • Vendosni.
  • Shërbimet analitike dhe operacionale.

Kjo do të thotë aftësi për të vënë veten në vendin e çdo specialisti ose ekipi në ciklin jetësor të zhvillimit, për të kuptuar gjendjen aktuale të sistemeve nga brenda, për të identifikuar gabimet e bëra dhe për të formuluar qëllime. Ndonjëherë ju duhet të kryeni vetë operacionin.

Rruga e zhvillimit profesional nga zhvilluesi në arkitekt zgjat shumë - zakonisht disa vjet. Për ta bërë këtë, zhvilluesi ka nevojë për aftësi praktike dhe njohuri teorike, të cilat mund të konfirmohen nga certifikimi ndërkombëtar.

Më shumë se 5 vjet në një projekt - rutinë apo mundësi për rritje?

Disa vite më parë, ne filluam punën në një sistem të madh IT mjekësor për një klient të huaj. Kishte disa probleme në këtë projekt në shkallë të gjerë:

  • akses i kufizuar;
  • prod i paqëndrueshëm;
  • sprinte tepër të gjata dhe miratime të gjata.

"Është koha për të përmirësuar aftësitë tuaja"", - një nga zhvilluesit kryesorë Alexey erdhi në këtë vendim për të kapërcyer vështirësitë e listuara dhe për të kuptuar më mirë sistemin.

Alexey ndau përvojën e tij, ku është më mirë të filloni trajnimin, cilat certifikata janë të rëndësishme për të marrë, si dhe pse ta bëni atë.

Hapi i parë: përmirësoni anglishten tuaj

Gjuhët e programimit janë një pjesë themelore e zhvillimit, por gjuhët për komunikim janë po aq të rëndësishme. Sidomos në komunikimin me një klient anglishtfolës!

Nga praktika

Një ditë të bukur, Alexey mori një telefonatë nga një punonjës nga ana e klientit. Në atë kohë, zhvilluesi ynë nuk mund të mburrej ende me një mori certifikatash - as në teknologji, as në menaxhim, as në komunikim. Ndoshta ato nuk do të ishin të dobishme - në fund të fundit, ju mund të jeni një specialist kompetent pa regale shtesë. Por problemi u shfaq akoma.

Duhet të kuptojmë se gjuha e folur është rrënjësisht e ndryshme nga gjuha e shkruar. Nëse jeni njohës i mirë i specifikimeve të anglishtes, por nuk praktikoni të dëgjuarit dhe të folurit, atëherë kemi një lajm të keq për ju. Në këtë rast, bisedat telefonike me partnerët mund të çojnë në një rrugë pa krye.

Alexey kapi disa fjalë të njohura në thirrje, por fjalimi i kolegut të tij ishte aq i shpejtë dhe ndryshe nga shqiptimi klasik nga mësimet audio, saqë thelbi kryesor i pyetjeve të saj shkoi diku. Nga mirësjellja dhe ngurrimi për të ndërlikuar situatën, Alexey shpejt ra dakord me të gjitha propozimet.

Duhet të them se zbulime të pakëndshme u bënë gjatë punës? Zhvilluesi ynë u regjistrua për diçka që ai do ta kishte refuzuar absolutisht qëllimisht nëse oferta do të kishte ardhur në gjuhë të kuptueshme.

Në atë moment u bë e qartë se ishte thjesht e nevojshme të përmirësoheshin aftësitë e të dëgjuarit dhe të të folurit. Mënyra më e mirë për ta bërë këtë ishte nëpërmjet çertifikimeve.

Certifikimi i Gjuhës Angleze

Për të përmirësuar komunikimet në kuadër të projektit tonë mjekësor, Alexey studioi në disa programe menjëherë. Si rezultat, ai kaloi certifikimin FCE - Certifikata e Parë në Anglisht. Kjo më ndihmoi të filloja të dëgjoja klientin dhe t'i përcillja atij mendimet e mia.

Hakerimi i jetës:

Shmangni programet bazë në anglisht. Aftësia duhet të synohet. Nëse keni nevojë për anglisht për komunikim biznesi, duhet ta merrni atë. Thjesht mos shkoni në ekstreme dhe merrni CAE (Certificate in Advanced English). E veçanta e tij janë fjalët e sofistikuara, shprehje specifike që pothuajse nuk përdoren kurrë në komunikimin ndërkombëtar.

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Hapi i dytë: certifikimi në të gjithë grumbullin e teknologjisë

Fillimisht, projekti u bazua në teknologjinë e hartës relacionale të objektit ORM. Ekipi i zhvillimit në anën e klientit ishte krenar për idenë e tyre, sepse gjithçka ishte bërë duke përdorur koncepte të avancuara, komplekse dhe të lezetshme.

Megjithatë, problemet në prodhim - në veçanti, një server SQL që ngrinte vazhdimisht - nuk ishin të rralla. Arriti në pikën ku zgjidhja tipike e problemit ishte rinisja e shërbimit. Klienti thirri drejtuesin e ekipit dhe tha se ishte koha për të rifilluar. Më në fund vendosëm t'i jepnim fund.

Klienti dëshironte të përpunonte performancën e sistemit - për këtë ishte e nevojshme të prezantohej profilizimi dhe të kryhej rregullisht optimizimi. Në atë kohë, rreth vitit 2015, Ants Profiler u zgjodh si mjet profilizimi, por performoi dobët. Me detaje të ulëta, ishte e vështirë për të marrë informacion në lidhje me një bllok kritik të kodit. Në detaje maksimale, Ants Profiler filloi të ndryshojë kodin në atë mënyrë që funksionaliteti i sistemeve të rrezikohej - aty ku ishte konfiguruar profilizimi, gjithçka thjesht u rrëzua. Kështu që ne ndryshuam qasjen tonë.

Ne filluam me analizimin e statistikave

Kur analizuam statistikat e shitjeve, u bë e qartë se 95% e punës në server ka logjikë primitive biznesi prej 4 rreshtash. Për ta, mjaftonte një pyetje SQL dhe jo një grup i plotë pyetjesh të krijuara nga një bllok logjik biznesi me një ORM.

Alexey propozoi dhe zbatoi një procedurë të ruajtur për lëvizjen e punës pa ORM. Ideja binte në kundërshtim me paradigmën e zakonshme të projektit, drejtuesi i ekipit e përshëndeti atë me kujdes, por klienti pranoi gjithçka dhe kërkoi zbatimin. Kjo nuk ishte befasuese, sepse metoda e re bëri të mundur uljen e vonesave në përpunim në prodhim nga katër orë në disa minuta - mesatarisht 98 herë.

Megjithatë, ne kishim dyshime: a është ky vendimi i duhur apo një çështje e preferencës personale? Besimi në C# dhe ORM të plotfuqishëm u trondit nga një aksident që tregoi fuqinë e plotë të zgjidhjeve të thjeshta.

Rasti dy

Ekipi shkroi një pyetje për të punuar me të dhënat brenda paradigmës ORM, të përpiluar sipas të gjitha rregullave, pa gabime. Përpunimi i tij zgjati 2-3 minuta dhe këto parametra dukeshin të pranueshëm. Megjithatë, një zbatim alternativ duke përdorur përzgjedhës të thjeshtë dhe pamje ofron rezultate më të shpejta - në 2 sekonda.

U bë e qartë se ishte koha për të zgjedhur një specialist i cili do t'i nënshtrohej certifikimit në të gjithë grupin e projektit, në mënyrë që të kuptonte të gjitha nuancat dhe të zgjidhte metodën optimale. Alexey mori përsipër këtë detyrë.

Certifikatat e para

Për të kuptuar thelbin, Alexey kaloi disa certifikata të Microsoft-it, duke mbuluar të gjithë grumbullin teknologjik të projektit:

  • TS: Zhvillimi i aplikacioneve të Windows me Microsoft .NET Framework 4
  • TS: Qasja e të dhënave me programimin Microsoft .NET Framework 4 në C#
  • TS: Microsoft .NET Framework 3.5 Zhvillimi i aplikacioneve të Windows Forms
  • PRO: Projektimi dhe zhvillimi i aplikacioneve të Windows duke përdorur Microsoft .NET Framework 3.5
  • PRO: Projektimi dhe zhvillimi i aplikacioneve të bazuara në Windows duke përdorur Microsoft .NET Framework
  • TS: Microsoft .NET Framework 2.0 - Zhvillimi i klientit i bazuar në Windows

Duke u përpjekur për të optimizuar punën në projektin e ri, ekipi arriti në përfundimet e mëposhtme:

  • Që sistemet të funksionojnë, është e nevojshme të ndiqni rregullat e shkrimit të kodit: jo shënimet dhe komentet, por karakteristikat teknike - numri i thirrjeve në bazat e të dhënave, ngarkesa në server dhe shumë më tepër.
  • Zbatimi i koncepteve kontradiktore mund të çojë në telashe. Koncepti i bazave të të dhënave është teoria e grupeve, ndërsa ORM është një koncept operacionesh.
  • Idetë që prishin rendin e zakonshëm të gjërave mund të hasin në rezistencë brenda ekipit. Zhvillimi ka të bëjë gjithashtu me marrëdhëniet dhe aftësinë për të argumentuar këndvështrimin tuaj.
  • Certifikimi zgjeron horizontet tuaja dhe ju lejon të kuptoni se çfarë mund të përdoret dhe çfarë nuk mund të përdoret.

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Hapi i tretë: Mësoni më shumë se kodi

Kur punoni në zgjidhje të TI-së në shkallë të gjerë, shumë faktorë janë të rëndësishëm. Për shembull, jo çdo zhvillues i kushton vëmendje parametrave të rrjetit, por edhe gjerësia e brezit të tij mund të ndikojë në zgjidhjen e një problemi biznesi.

Kuptimi i kësaj është dhënë Certifikimi i serisë 98:

Ato ju lejojnë t'i hidhni një vështrim më të gjerë gjërave dhe të dilni nga koncepti i kufizuar "vetëm kodi". Këto janë bazat, bazat, por janë të rëndësishme për të kuptuar gjithçka në një nivel më të thellë.

Certifikimet e serisë 98 janë teste të shkurtra - 30 pyetje për 45 minuta.

Hapi i katërt: Menaxhimi i procesit

Të punosh me klinika është një ndërmarrje më e rëndësishme sesa, të themi, krijimi i një loje celulare. Këtu nuk mund të shtoni një veçori dhe ta nxirrni atë për prodhim - është e rëndësishme të ndiqni procesin e miratimit dhe të bëni modifikime të shumta nga klienti, sepse shëndeti dhe jeta e njerëzve janë në rrezik.

Typical Agile nuk dha rezultatet e dëshiruara në këtë projekt dhe çdo sprint zgjati një kohë mjaft të gjatë. Midis vendosjeve u deshën nga 6 muaj në një vit.

Për më tepër, teknikisht ishte e pamundur të silleshin proceset e dhjetë klinikave të shërbyera në një emërues të përbashkët.

Për të arritur rezultate më shpejt në këto kushte, zhvilluesit kishin nevojë për përgjegjësi personale dhe një vizion në shkallë të gjerë të proceseve - që do të thotë përqendrim i vazhdueshëm dhe kualifikime të larta.

Kur një specialist është i zhytur në proces, ai sheh qartë rezultatet, shkaqet dhe pasojat, të gjithë pamjen. Ky është në të njëjtën kohë një faktor motivimi dhe ndërgjegjësimi shtesë, duke përmirësuar aftësinë për të zgjidhur problemet dhe problemet.

Me një infrastrukturë që funksionon mirë, arkitekturë të ndërtuar mirë dhe kod optimal, një person mund të marrë përsipër shumë procese. Sidoqoftë, kjo nuk do të thotë se është e nevojshme të rriten ushtarë universalë që janë të aftë të udhëheqin projektin vetëm. Komunikimi dhe puna ekipore janë kritike.

Në një ekip, çdo zhvillues e kupton se kolegët e tij varen nga veprimet e tij. Kursimi i 5 minutave gjatë fazës së zhvillimit do të thotë ndoshta 5 orë shtesë testimi. Për ta kuptuar këtë, është e rëndësishme të vendosni komunikime.

Në projektin tonë, Alexey mori ndihmë në zotërimin e proceseve certifikata nga EXIN:

  • Certifikata e Fondacionit M_o_R në Menaxhimin e Riskut
  • Fondacioni Agile Scrum
  • Fondacioni i Menaxhimit të Shërbimeve IT
  • Fondacioni për Menaxhimin e Informacionit të Biznesit EXIN
  • Certifikata e Fondacionit PRINCE2 në Menaxhimin e Projekteve
  • Certifikata e inxhinierit të testimit
  • Microsoft Operations Framework Foundation
  • Projektet e Shërbimit Agile

U morën kurse në edX që ndihmuan për të parë sistemin nga pikëpamja e statistikave dhe programimit të dobët dhe më vonë u shtynë për të marrë certifikatë arkitekti:

  • Prodhim i dobet
  • Six Sigma: Analizo, Përmirëso, Kontrollo
  • Six Sigma: Përcaktoni dhe matni

Sipas parimit Six Sigma, kontrolli statistikor siguron një rezultat të cilësisë së lartë me një probabilitet jashtëzakonisht të lartë.

Duke ngritur nivelin e tij, zhvilluesi, si rregull, vjen në përfundimet e mëposhtme:

  • Mos punoni shumë, por punoni me efikasitet.
  • Mos e ndërlikoni jetën tuaj duke ndjekur jashtë: teknologjia e zbukuruar nuk i zgjidh domosdoshmërisht problemet më mirë.
  • Bëni miq me specialistë në të gjitha fazat e ciklit dhe zbuloni pikat e tyre të dhimbjes. Një arkitekt duhet të zotërojë proceset: identifikimi i një problemi, vendosja e një problemi, dizajnimi i një topologjie rrjeti, zhvillimi, testimi, mbështetja, funksionimi.
  • Kontrolloni çdo veçori brenda dhe jashtë.
  • Ndodh që proceset e TI nuk korrespondojnë me proceset e biznesit, dhe kjo duhet të trajtohet.

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Hapi i pestë: kuptoni arkitekturën përmes lenteve të të dhënave të mëdha

Gjatë projektit u morëm me baza të dhënash mjaft të mëdha. Të paktën kështu dukej deri në një moment të caktuar. Kur Alexey filloi të studionte të dhëna të mëdha në edX, doli që 1,5 Tb në projekt ishte një bazë e vogël e të dhënave. Peshore serioze - nga 10 Tb, dhe metoda të tjera kërkohen atje.

Hapi tjetër drejt certifikimit ishte një kurs mbi të dhënat e mëdha. Ai ndihmoi për të kuptuar organizimin e rrjedhës së të dhënave dhe për të përshpejtuar operacionet e prodhimit. Dhe gjithashtu kushtojini vëmendje mjeteve të vogla, për shembull, filloni të përdorni Excel për të zgjidhur mikro-detyrat individuale.

Certifikata:
Programi profesional i Microsoft: Certifikata e të dhënave të mëdha

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Hapi i gjashtë: nga zhvilluesi në arkitekt

Pasi mori të gjitha certifikatat e listuara, ndërsa ishte ende një zhvillues, Alexey filloi të kuptonte se informacioni i marrë kishte një nivel të lartë abstraksioni, dhe kjo nuk ishte aspak e keqe.

Një vizion në shkallë të gjerë i proceseve të çon në nivelin e një arkitekti, një nga nivelet më të larta të certifikimit.

Në kërkim të certifikimit të arkitektit, Alexey erdhi në mendje Arkitekt i Certifikuar Software - Platforma Microsoft nga Sundblad & Sundblad. Ky është një program i njohur nga Microsoft, zhvillimi i tij filloi 14 vjet më parë me bashkëpunimin e drejtuesve të kompanisë dhe zyrave suedeze. Ai mbulon .NET Framework, mbledhjen e kërkesave, menaxhimin e rrjedhës së informacionit dhe shumë tema të tjera të nivelit të lartë dhe konsiderohet një testament i fortë për aftësitë e një arkitekti.

Në kuadër të programit kishte kurse për të studiuar. Certifikimi sistematizoi njohuritë dhe na lejoi të hynim në një fazë të re zhvillimi - nga zhvilluesi te arkitekti.

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Përmbledhur

Siç vëren Alexey, kur punoni me një sistem IT në shkallë të gjerë, është e rëndësishme të mbani mend se programimi nuk është një argëtim i shtrenjtë, por një mjet për zgjidhjen e problemeve të biznesit. Kur përballeni me këtë apo atë sfidë, patjetër që duhet të shkruani vlerën e biznesit në mënyrë që projekti të mos arrijë në një rrugë pa krye.

Arkitekti ka një pamje të veçantë të programimit dhe komponentëve të tij elementar:

  • Krijimi dhe/ose mbajtja e një rrjedhe të dhënash
  • Nxjerrja e rrjedhës së informacionit nga rrjedha e të dhënave
  • Nxjerrja e rrjedhës së vlerës nga rrjedha e informacionit
  • Monetizimi i rrjedhës së vlerës

Nëse shikoni një projekt me sytë e një arkitekti, duhet të filloni nga fundi: formuloni vlerën dhe më pas shkoni tek ai përmes rrjedhës së të dhënave.

Arkitekti ndjek rregullat e zhvillimit, duke pasur një vizion global të projektit. Është pothuajse e pamundur ta arrish atë përmes praktikës dhe gabimeve të tua - ose më saktë, është e mundur, por do të duhet shumë kohë. Certifikimi ju lejon të zgjeroni horizontet tuaja dhe të shikoni kontekstin e plotë të çdo çështjeje, të njiheni me përvojën e mijëra profesionistëve dhe të zhvilloni aftësinë e zgjidhjes efektive të problemeve.

Deri më sot, ne kemi punuar me sistemin mjekësor të përshkruar më sipër për më shumë se pesë vjet dhe kemi arritur përmirësime të rëndësishme. Gjatë kësaj kohe, Alexey kaloi më shumë se 20 provime certifikimi:

  1. TS: Zhvillimi i aplikacioneve të Windows me Microsoft .NET Framework 4
  2. TS: Qasja e të dhënave me programimin Microsoft .NET Framework 4 në C#
  3. TS: Microsoft .NET Framework 3.5 Zhvillimi i aplikacioneve të Windows Forms
  4. PRO: Projektimi dhe zhvillimi i aplikacioneve të Windows duke përdorur Microsoft .NET Framework 3.5
  5. PRO: Projektimi dhe zhvillimi i aplikacioneve të bazuara në Windows duke përdorur Microsoft .NET Framework
  6. TS: Microsoft .NET Framework 2.0 - Zhvillimi i klientit i bazuar në Windows
  7. 98-361: Bazat e zhvillimit të softuerit
  8. 98-364: Bazat e të dhënave
  9. Certifikata e Fondacionit M_o_R në Menaxhimin e Riskut
  10. Fondacioni Agile Scrum
  11. Fondacioni i Menaxhimit të Shërbimeve IT
  12. Fondacioni për Menaxhimin e Informacionit të Biznesit EXIN
  13. Certifikata e Fondacionit PRINCE2 në Menaxhimin e Projekteve
  14. Certifikata e inxhinierit të testimit
  15. Microsoft Operations Framework Foundation
  16. Projektet e Shërbimit Agile
  17. Prodhim i dobet
  18. Six Sigma: Analizo, Përmirëso, Kontrollo
  19. Six Sigma: Përcaktoni dhe matni
  20. Programi profesional i Microsoft: Certifikata e të dhënave të mëdha
  21. Arkitekt i Certifikuar Software - Platforma Microsoft

Rruga e Arkitektit: Certifikimi dhe zhytja e produktit

Pasi kaloi të gjitha provimet, Alexey u ngrit nga zhvilluesi kryesor në arkitekt projekti. Në të njëjtën kohë, certifikimi është bërë një mjet i fuqishëm si për zhvillimin profesional ashtu edhe për ndërtimin e reputacionit në sytë e klientit.

"Rami i Certifikimit" ndihmoi për të pasur akses në procese individuale kritike që kishin nevojë për kontroll dhe përpunim. Klientët evropianë të zgjidhjeve të IT-së, si rregull, vlerësojnë shumë specialistë të certifikuar dhe janë të gatshëm t'u japin atyre më shumë liri veprimi.

Faleminderit per vemendjen! Shpresojmë që artikulli të ishte i dobishëm për ju.

Burimi: www.habr.com

Shto një koment