Skip to main content

3. Perėjimas nuo programuotojo prie architekto

Kodėl programuotojams sunku tapti architektais

Perėjimas – ne pareigų pakeitimas, o mąstymo pokytis.

Programuotojai:

  • Mąsto detalėmis
  • Sprendžia technines problemas
  • Įgyvendina sprendimus
  • Atsakingi už savo kodą

Architektai:

  • Mąsto visuma
  • Sprendžia technines ir socialines problemas
  • Projektuoja principus ir modelius
  • Atsakingi už visos sistemos kokybę

Mąstymo pokytis: nuo detalių prie visumos

Programuotojo mąstymas:

  • Konkretūs sprendimai
  • Efektyvumas kode
  • Vidaus perspektyva
  • Lokalūs optimizavimai

Architekto mąstymas:

  • Sistemos tikslai ir ribojimai
  • Aiškumas ir lankstumas
  • Išorinė perspektyva
  • Visuminė optimizacija

Ką turi daryti architektas kitaip?

  1. Suvokti kontekstą – verslas, naudotojai, organizacija
  2. Vertinti kompromisus – jokių tobulų sprendimų
  3. Galvoti ilgam laikotarpiui – evoliucija
  4. Kurti abstrakcijas – padėti komunikuoti ir suvokti

Kodo rašymo vs. sistemos kūrimo skirtumai

Kodo rašymas:

  • Konkreti implementacija
  • Efektyvumas ir skaitomumas
  • Rezultatas – kodas

Sistemos kūrimas:

  • Modeliai ir abstrakcijos
  • Aiškumas ir plečiamumas
  • Rezultatas – struktūra

Skirtumai srityse:

  • Problemų apibrėžimas: programuotojas įgyvendina, architektas padeda apibrėžti
  • Sprendimų vertinimas: efektyvumas vs. tikslų atitikimas
  • Komunikacija: techninė kalba vs. įvairios auditorijos
  • Atsakomybė: lokali vs. visuminė

Architektūrinis mąstymas kasdien

  1. Klausk „kodėl“
  2. Galvok apie sąsajas
  3. Dokumentuok priežastis
  4. Ieškok šablonų
  5. Galvok apie evoliuciją

Praktiniai žingsniai pereinant

  1. Plėsk žinias – principai, šablonai, praktikos
  2. Ieškok atsakomybių – mentorystė, projektai
  3. Praktikuok sisteminį mąstymą
  4. Tobulink komunikaciją
  5. Analizuok esamas sistemas
  6. Klausk patarimų – mentorystė
  7. Praktikuok sprendimus – reflektuok
  8. Dokumentuok ir pristatyk – aiškiai, tiksliai

Dažniausios klaidos ir kaip jų išvengti

KlaidaKaip išvengti
Fokusas į technologijasArchitektūra – daugiau nei framework’ai
Teorija be praktikosEksperimentuok mažais masteliais
Nepakankama komunikacijaAiškiai dokumentuok ir paaiškink sprendimus
Pernelyg sudėtingi sprendimaiRinkis paprastumą, pridėk sudėtingumo tik kai reikia
Ignoruojami praktiniai apribojimaiBūk realistiškas su resursais ir komandos galimybėmis
Vengimas kompromisųAiškiai įvardyk pliusus ir minusus
Per didelis pasitikėjimas teorijaNaudok teoriją kaip įrankį, ne dogmą
Baimė keisti kursąPripažink ir taisyk, kai paaiškėja naujos aplinkybės

Perėjimas į architekto rolę reikalauja naujo požiūrio, bet leidžia daryti sisteminį poveikį – kurti aiškias, lanksčias, ilgaamžes sistemas.