La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Preskaŭ ĉiu programisto demandas pri kiel li devus disvolvi siajn kapablojn kaj kian direkton de kresko elekti: vertikala - tio estas, iĝi administranto, aŭ horizontala - plena stako. Multjara laboro pri unu produkto, kontraŭe al mitoj, fariĝas ne limigo, sed utila ŝanco. En ĉi tiu artikolo, ni dividas la sperton de nia backend-programisto Alexey, kiu dediĉis 6 jarojn al atestiloj kaj dum ĉi tiu tempo laboris ĝis iĝi arkitekto.

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Kiu estas arkitekto

IT-arkitekto (teknika ĉefo) estas altnivela programisto, kiu traktas tutmondajn problemojn en IT-projektoj. Li mergas sin en la komercaj procezoj de la kliento kaj helpas solvi liajn problemojn uzante teknologion, kaj ankaŭ determinas kiel tiu aŭ alia informsistemo estos strukturita.

Tia profesiulo bezonas ne nur kompreni individuajn temojn, sed ankaŭ vidi la tutan procezon:

  • Fiksi komercan problemon.
  • Evoluo, inkluzive de programado, preparado, stokado kaj prilaborado de datumoj.
  • Deplojo kaj subteno de infrastrukturo.
  • Testado.
  • Deploji.
  • Analizaj kaj funkciaj servoj.

Ĉi tio signifas la kapablon meti vin en la ŝuojn de iu ajn specialisto aŭ teamo en la evolua vivociklo, kompreni la nunan staton de sistemoj de interne, identigi erarojn faritajn kaj formuli celojn. Kelkfoje vi devas mem fari kirurgion.

La vojo de profesia evoluo de programisto ĝis arkitekto daŭras longan tempon - kutime plurajn jarojn. Por fari tion, la programisto bezonas kaj praktikajn kapablojn kaj teoriajn sciojn, kiuj povas esti konfirmitaj per internacia atestado.

Pli ol 5 jaroj en unu projekto - rutino aŭ ŝanco por kresko?

Antaŭ pluraj jaroj, ni komencis labori pri granda medicina IT-sistemo por eksterlanda kliento. Ekzistis certaj problemoj en tiu grandskala projekto:

  • limigita aliro;
  • malstabila prod;
  • nekredeble longaj spurtoj kaj longaj aproboj.

"Estas tempo plibonigi viajn kapablojn"", - unu el la ĉefaj programistoj Alexey venis al ĉi tiu decido por venki la listigitajn malfacilaĵojn kaj pli bone kompreni la sistemon.

Alexey dividis sian sperton, kie estas pli bone komenci trejnadon, kiajn atestojn gravas akiri, kiel kaj kial fari ĝin.

Paŝo unu: plibonigu vian anglan

Programlingvoj estas fundamenta parto de evoluo, sed lingvoj por komunikado estas same gravaj. Precipe en komunikado kun anglalingva kliento!

De praktiko

Unu belan tagon, Alexey ricevis vokon de dungito de la flanko de la kliento. Tiutempe nia programisto ankoraŭ ne povis fanfaroni pri amaso da atestiloj - nek pri teknologio, nek pri administrado, nek pri komunikado. Eble ili ne estus utilaj - finfine vi povas esti kompetenta specialisto sen aldonaj regosimboloj. Sed la problemo ankoraŭ aperis.

Ni devas kompreni, ke parola lingvo estas radikale diferenca de skriba lingvo. Se vi bone konas anglajn specifojn, sed ne praktikas aŭskultadon kaj paroladon, tiam ni havas malbonajn novaĵojn por vi. En ĉi tiu kazo, telefonaj konversacioj kun partneroj povas konduki al sakstrato.

Aleksej kaptis kelkajn konatajn vortojn dum la voko, sed la parolado de lia kolego estis tiel rapida kaj malsimila al la klasika prononco de aŭdaj lecionoj, ke la ĉefa esenco de ŝiaj demandoj iris ien pretere. Pro ĝentileco kaj malemo kompliki la situacion, Aleksej rapide konsentis pri ĉiuj proponoj.

Ĉu mi bezonas diri, ke oni faris malagrablajn malkovrojn dum la laboro? Nia programisto subskribis por io, kion li absolute intence rifuzus, se la oferto estus veninta en komprenebla lingvo.

En tiu momento evidentiĝis, ke simple necesas plibonigi aŭskultadon kaj parolkapablon. La plej bona maniero fari tion estis per atestoj.

Angla Lingva Atestilo

Por plibonigi komunikadon kadre de nia medicina projekto, Alexey studis en pluraj programoj samtempe. Kiel rezulto, li pasigis la FCE - Unuan Atestilon en angla atestado. Ĉi tio helpis min komenci aŭdi la klienton kaj transdoni miajn pensojn al li.

Viva hackeado:

Evitu bazajn anglajn programojn. La kapablo devas esti celita. Se vi bezonas la anglan por komerca komunikado, vi devus preni ĝin. Nur ne iru al ekstremoj kaj prenu la CAE (Atestilo en Altnivela Angla). Ĝia propreco estas kompleksaj vortoj, specifaj esprimoj, kiuj preskaŭ neniam estas uzataj en internacia komunikado.

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Paŝo du: atestado tra la tuta teknologia stako

Komence, la projekto estis bazita sur la ORM objekt-rilata mapa teknologio. La disvolva teamo flanke de la kliento fieris pri sia ideo, ĉar ĉio estis farita per altnivelaj konceptoj, kompleksaj kaj mojosaj.

Tamen, problemoj en produktado - precipe, konstante frosta SQL-servilo - ne estis maloftaj. Ĝi alvenis al la punkto kie la tipa solvo al la problemo estis rekomenci la servon. La kliento vokis la teamgvidanton kaj diris, ke estas tempo rekomenci. Fine ni decidis fini ĝin.

La kliento volis ellabori la agadon de la sistemo - por tio necesis enkonduki profiladon kaj regule efektivigi optimumigon. En tiu tempo, ĉirkaŭ 2015, Ants Profiler estis elektita kiel profililo, sed ĝi funkciis malbone. Kun malalta detalo, estis malfacile akiri informojn pri kritika bloko de kodo. Plej detale, Ants Profiler komencis ŝanĝi la kodon tiel, ke la funkcieco de la sistemoj estis en risko - kie profilado estis agordita, ĉio simple kraŝis. Do ni ŝanĝis nian aliron.

Ni komencis per analizo de statistiko

Kiam oni analizis vendajn statistikojn, evidentiĝis, ke 95% de la laboro en la servilo havas primitivan komercan logikon de 4 linioj. Por ili, unu SQL-demando sufiĉis, kaj ne kompleta aro de demandoj generitaj de komerca logika bloko kun ORM.

Alexey proponis kaj efektivigis stokitan proceduron por movi laboron sen ORM. La ideo kontraŭdiris la kutiman projektparadigmon, la teamestro salutis ĝin singarde, sed la kliento akceptis ĉion kaj petis efektivigon. Ĉi tio ne estis surpriza, ĉar la nova metodo ebligis redukti prokrastojn en prilaborado de produktado de kvar horoj ĝis pluraj minutoj - averaĝe 98 fojojn.

Tamen, ni havis dubojn: ĉu ĉi tio estas la ĝusta decido aŭ afero de persona prefero? Fido al la ĉiopova C# kaj ORM estis skuita de akcidento, kiu montris la plenan potencon de simplaj solvoj.

Kazo du

La teamo skribis demandon por labori kun datumoj ene de la paradigmo ORM, kompilita laŭ ĉiuj reguloj, sen eraroj. Ĝia prilaborado daŭris 2-3 minutojn, kaj ĉi tiuj parametroj ŝajnis akcepteblaj. Tamen alternativa efektivigo uzante simplajn elektilojn kaj vidojn donis rezultojn pli rapide - en 2 sekundoj.

Evidentiĝis, ke estis tempo elekti specialiston, kiu submetos atestilon tra la tuta projekta stako por kompreni ĉiujn nuancojn kaj elekti la optimuman metodon. Aleksej prenis ĉi tiun taskon.

Unuaj atestiloj

Por kompreni la esencon, Alexey trairis pluraj Microsoft-atestiloj, kovrante la tutan teknologian stakon de la projekto:

  • TS: Vindoza Aplika Disvolviĝo kun Microsoft .NET Framework 4
  • TS: Aliro al Datumoj kun Microsoft .NET Framework 4 Programado en C#
  • TS: Mikrosofto .NET Framework 3.5 Windows Forms Aplika Disvolviĝo
  • PRO: Dezajnante kaj Evoluigante Vindozajn Aplikaĵojn uzante Microsoft .NET Framework 3.5
  • PRO: Dezajnante kaj Disvolvante Vindoz-bazitajn Aplikojn per Uzado de la Microsoft .NET Framework
  • TS: Microsoft .NET Framework 2.0 - Vindozo-bazita Klienta Evoluo

Provante optimumigi laboron en la nova projekto, la teamo venis al la sekvaj konkludoj:

  • Por ke la sistemoj funkciu, necesas sekvi la regulojn pri skribado de kodo: ne indentaĵoj kaj komentoj, sed teknikaj karakterizaĵoj - la nombro da vokoj al la datumbazoj, la ŝarĝo sur la servilo, kaj multe pli.
  • Apliki konfliktajn konceptojn povas kaŭzi problemojn. La koncepto de datumbazoj estas aroteorio, dum ORM estas operaciokoncepto.
  • Ideoj kiuj interrompas la kutiman ordon de aferoj povas renkonti reziston ene de la teamo. Evoluo temas ankaŭ pri rilatoj kaj la kapablo argumenti vian vidpunkton.
  • Atestado plilarĝigas viajn horizontojn kaj permesas vin kompreni kio povas esti uzata kaj kio ne povas esti uzata.

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Paŝo Tri: Lernu Pli Ol Kodo

Kiam vi laboras pri grandskalaj IT-solvoj, multaj faktoroj estas gravaj. Ekzemple, ne ĉiu programisto atentas retajn parametrojn, sed eĉ ĝia larĝa bando povas influi la solvon de komerca problemo.

Kompreni ĉi tion estas donita Atestilo pri 98 serioj:

Ili permesas al vi pli larĝan rigardon al aferoj kaj eliri el la limigita koncepto "nur kodo". Ĉi tiuj estas Fundamentoj, la bazaĵoj, sed ili estas gravaj por kompreni ĉion sur pli profunda nivelo.

Serio 98-atestiloj estas mallongaj testoj - 30 demandoj dum 45 minutoj.

Paŝo Kvar: Proceza Administrado

Labori kun klinikoj estas pli grava entrepreno ol, ekzemple, krei moveblan ludon. Ĉi tie vi ne povas aldoni funkcion kaj efektivigi ĝin por produktado - gravas sekvi la procezon de aprobo kaj fari multajn ŝanĝojn de la kliento, ĉar la sano kaj vivo de homoj estas en ludo.

Tipa Agile ne produktis la deziratajn rezultojn en ĉi tiu projekto, kaj ĉiu spurto daŭris sufiĉe longe. Inter deplojoj daŭris de 6 monatoj ĝis jaro.

Krome, estis teknike neeble alporti la procezojn de la dek klinikoj servitaj al iu komuna denominatoro.

Por akiri rezultojn pli rapide en ĉi tiuj kondiĉoj, programistoj bezonis personan respondecon kaj grandskalan vizion de procezoj - kio signifas konstantan koncentriĝon kaj altajn kvalifikojn.

Kiam specialisto estas mergita en la procezo, li klare vidas la rezultojn, kaŭzojn kaj konsekvencojn, la tutan bildon. Ĉi tio estas samtempe faktoro de plia instigo kaj konscio, plibonigante la kapablon solvi problemojn kaj problemojn.

Kun bone funkcianta infrastrukturo, bone konstruita arkitekturo kaj optimuma kodo, unu persono povas preni multajn procezojn. Tamen tio ne signifas, ke necesas kreskigi universalajn soldatojn, kiuj kapablas gvidi la projekton sole. Komunikado kaj teamlaboro estas kritikaj.

En teamo, ĉiu programisto komprenas, ke liaj kolegoj dependas de liaj agoj. Ŝpari 5 minutojn dum la evolufazo signifas eble 5 pliajn horojn da testado. Por kompreni ĉi tion, gravas establi komunikadojn.

En nia projekto, Alexey ricevis helpon por regi la procezojn atestiloj de EXIN:

  • M_o_R Foundation-Atestilo pri Riska Administrado
  • Agile Scrum Foundation
  • IT Service Management Foundation
  • EXIN Business Information Management Foundation
  • PRINCE2 Fundamenta Atestilo pri Projekt-Administrado
  • Testa Inĝeniero Atestilo
  • Microsoft Operations Framework Foundation
  • Legilaj Servaj Projektoj

Kursoj estis prenitaj pri edX kiuj helpis rigardi la sistemon el la vidpunkto de statistiko kaj svelta programado kaj poste puŝis akiri atestilo pri arkitekto:

  • Svelta Produktado
  • Ses Sigma: Analizi, Plibonigi, Kontroli
  • Ses Sigma: Difini kaj Mezuri

Laŭ la Ses Sigma principo, statistika kontrolo certigas altkvalitan rezulton kun ekstreme alta probablo.

Pliigante sian nivelon, la programisto, kiel regulo, venas al la sekvaj konkludoj:

  • Ne laboru forte, sed laboru efike.
  • Ne kompliku vian vivon persekutante la eksteron: ŝika teknologio ne nepre solvas problemojn pli bone.
  • Amikiĝu kun specialistoj en ĉiuj etapoj de la ciklo kaj eksciu iliajn dolorpunktojn. Arkitekto devas regi la procezojn: identigi problemon, fiksi problemon, dezajnante retan topologion, evoluon, testadon, subtenon, funkciadon.
  • Kontrolu ĉiun funkcion interne kaj ekstere.
  • Okazas, ke IT-procezoj ne respondas al komercaj procezoj, kaj ĉi tio devas esti traktita.

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Paŝo kvin: komprenu la arkitekturon per la lenso de Big Data

Dum la projekto ni traktis sufiĉe grandajn datumbazojn. Almenaŭ tiel ŝajnis ĝis certa momento. Kiam Alexey komencis studi grandajn datumojn pri edX, montriĝis, ke 1,5 Tb en la projekto estis malgranda datumbazo. Gravaj skaloj - de 10 Tb, kaj aliaj metodoj estas bezonataj tie.

La sekva paŝo al atestado estis kurso pri grandaj datumoj. Li helpis kompreni la organizon de datumfluo kaj akceli produktadoperaciojn. Kaj ankaŭ atentu malgrandajn ilojn, ekzemple, komencu uzi Excel por solvi individuajn mikro-taskojn.

Atestilo:
Mikrosofta Profesia Programo: Granda Datuma Atestilo

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Paŝo ses: de programisto ĝis arkitekto

Post ricevi ĉiujn listigitajn atestojn, dum ankoraŭ programisto, Alexey komencis kompreni, ke la informoj ricevitaj havas altnivelan abstraktadon, kaj ĉi tio ne estas malbona.

Grandskala vizio de procezoj kondukas al la nivelo de arkitekto, unu el la plej altaj niveloj de atestado.

Serĉante arkitektan atestadon, Alexey venis al Atestita Programaro-Arkitekto - Microsoft Platformo de Sundblad & Sundblad. Ĉi tio estas programo rekonita de Microsoft, ĝia evoluo komenciĝis antaŭ 14 jaroj kun la kunlaboro de la ĉefo de la kompanio kaj svedaj oficejoj. Ĝi kovras la .NET Framework, postulkolekton, informfluan administradon, kaj multajn aliajn altnivelajn temojn kaj estas konsiderata kiel forta atesto pri la kapabloj de arkitekto.

Estis kursoj por studi ene de la programo. Atestado sistemigis scion kaj permesis al ni eniri novan etapon de evoluo - de programisto ĝis arkitekto.

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Supre

Kiel Alexey notas, kiam vi laboras kun grandskala IT-sistemo, gravas memori, ke programado ne estas multekosta distro, sed ilo por solvi komercajn problemojn. Kiam vi alfrontas ĉi tiun aŭ alian defion, vi certe devas noti la komercan valoron por ke la projekto ne atingu sakstraton.

La arkitekto havas specialan vidon de programado kaj ĝiaj elementaj komponentoj:

  • Krei kaj/aŭ konservi datumfluon
  • Eltiro de informa fluo de datumfluo
  • Ekstraktado de valorfluo de informa fluo
  • Valorfluo Monetigo

Se vi rigardas projekton per la okuloj de arkitekto, vi devas komenci de la fino: formuli la valoron kaj poste iri al ĝi tra la fluo de datumoj.

La arkitekto sekvas la evoluajn regulojn, havante tutmondan vizion de la projekto. Estas preskaŭ neeble atingi ĝin per praktiko kaj viaj propraj eraroj—aŭ pli ĝuste, ĝi eblas, sed ĝi daŭros tre longan tempon. Atestado permesas al vi plilarĝigi viajn horizontojn kaj rigardi la plenan kuntekston de ĉiu afero, konatiĝi kun la sperto de miloj da profesiuloj kaj disvolvi la kapablon de efika solvado de problemoj.

Ĝis nun, ni laboras kun la supre priskribita medicina sistemo dum pli ol kvin jaroj kaj atingis signifajn plibonigojn. Dum ĉi tiu tempo, Alexey pasigis pli ol 20 atestajn ekzamenojn:

  1. TS: Vindoza Aplika Disvolviĝo kun Microsoft .NET Framework 4
  2. TS: Aliro al Datumoj kun Microsoft .NET Framework 4 Programado en C#
  3. TS: Mikrosofto .NET Framework 3.5 Windows Forms Aplika Disvolviĝo
  4. PRO: Dezajnante kaj Evoluigante Vindozajn Aplikaĵojn uzante Microsoft .NET Framework 3.5
  5. PRO: Dezajnante kaj Disvolvante Vindoz-bazitajn Aplikojn per Uzado de la Microsoft .NET Framework
  6. TS: Microsoft .NET Framework 2.0 - Vindozo-bazita Klienta Evoluo
  7. 98-361: Fundamentoj pri Programaro pri Disvolviĝo
  8. 98-364: Bazaj Fundamentoj
  9. M_o_R Foundation-Atestilo pri Riska Administrado
  10. Agile Scrum Foundation
  11. IT Service Management Foundation
  12. EXIN Business Information Management Foundation
  13. PRINCE2 Fundamenta Atestilo pri Projekt-Administrado
  14. Testa Inĝeniero Atestilo
  15. Microsoft Operations Framework Foundation
  16. Legilaj Servaj Projektoj
  17. Svelta Produktado
  18. Ses Sigma: Analizi, Plibonigi, Kontroli
  19. Ses Sigma: Difini kaj Mezuri
  20. Mikrosofta Profesia Programo: Granda Datuma Atestilo
  21. Atestita Programaro-Arkitekto - Microsoft Platformo

La Pado de la Arkitekto: Atestado kaj Produkta Mergado

Pasinte ĉiujn ekzamenojn, Alexey ekstaris de ĉefa programisto al projektarkitekto. Samtempe, atestado fariĝis potenca ilo por profesia disvolviĝo kaj reputacio en la okuloj de la kliento.

La "Atesta Virŝafo" helpis akiri aliron al individuaj kritikaj procezoj kiuj bezonis kontrolon kaj pliprofundigon. Eŭropaj klientoj de IT-solvoj, kutime, alte taksas atestitajn specialistojn kaj pretas doni al ili pli da libereco de agado.

Dankon pro via atento! Ni esperas, ke la artikolo estis utila al vi.

fonto: www.habr.com

Aldoni komenton