Diversity w polskim IT
Ryan Susana
Ryan SusanaSoftware Architect

Jak zostać architektem oprogramowania w 2022 r.

Poznaj wskazówki, które pomogą Ci zostać Architektem w IT w 2022 r.
13.01.20224 min
Jak zostać architektem oprogramowania w 2022 r.

Widzieliśmy już wiele nazw stanowisk związanych z architekturą oprogramowania. Architekci rozwiązań, architekci systemowi, architekci chmury, architekci aplikacji, architekci informacji, architekci korporacyjni, itd...

Bardziej formalny tytuł czy też nie, to jednak zawsze powinieneś mieć w swojej organizacji ludzi, którzy:

  • Podejmują i wprowadzają długotrwałe decyzje co do architektury i wytycznych
  • Stale analizują i unowocześniają architekturę oprogramowania, mając na uwadze dług technologiczny
  • Są mentorami dla programistów
  • Sprawują nadzór nad tym, co ważne dla firmy, mając na uwadze politykę firmy
  • Poszerzają, pogłębiają i odnawiają zasób własnej wiedzy, ponieważ branża rozwija się w zawrotnym tempie


Ja nazywam takich ludzi architektami oprogramowania, ale nazywaj ich, jak chcesz. W 2021 roku byłem skoncentrowany tylko na tym, aby stać się świetnym architektem oprogramowania. W tym artykule dam ci kilka wskazówek i pokaże ci czego się nauczyłem. Roku 2022! Przybywaj!

Upewnij się, że przede wszystkim jesteś programistą

Czy widziałeś kiedyś sędziego, który nie był wcześniej prawnikiem? Architekci to w głębi serca dobrzy i doświadczeni programiści. Są przyzwyczajeni do problemów, z którymi wielu innych programistów boryka się na co dzień.

Architekt nie może tracić kontaktu z tym, co programiści uważają za ważne. Musi mówić ich językiem. Łatwość utrzymania jest najważniejszym czynnikiem wpływającym na koszty IT, dlatego musisz projektować z myślą o programistach.

Architekci, którzy zapominają o swoich korzeniach, tracą szacunek u zespołu. Skutecznie stają się oni wychwalanymi kierownikami projektów, a nikt już nie potrzebuje kolejnego kierownika.

Aby nie stać się architektem bez serca, należy poświęcić trochę czasu na:

  • Wypróbowanie z programistami nowych lub innych technologii
  • Czytanie treści związanych z tworzeniem oprogramowania. W formie kursów, filmów na YouTube, konferencji, webinarów itp.
  • Tworzenie hobbystycznych projektów rozwoju

Uniż się w pokorze

Może ci się wydawać, że jesteś najbystrzejszym programistą, który kiedykolwiek przyłożył ręce do klawiatury. I masz umiejętności, aby to zaprezentować. Świetna robota, zdobyłeś złoto na Olimpiadzie największego Ego! No i co teraz?

Istnieje kilka subtelnych różnic pomiędzy programistami a architektami. Jedną z najważniejszych umiejętności, które muszą posiadać architekci, jest Komunikacja, przez duże K. Możesz posiadać eleganckie lub sprytne rozwiązanie problemu, ale czy potrafisz to przekazać interesariuszom i programistom w sposób przyjemny i jednocześnie skuteczny? Twój zespół gardzi Tobą, zazdrości Ci, czy może cię podziwia? Ten nowy inżynier w Twoim zespole, czy nadąża za tempem? Powinieneś stale zadawać sobie te pytania.

Niektóre wskazówki, których mogę ci udzielić to:

  • Pozwól na włączenie się innych do głównych decyzji architektonicznych. Staraj się doprowadzić do konsensusu wśród deweloperów w kwestii decyzji technicznych.
  • Pozwól programistom na samodzielność, podejmowanie własnych decyzji i popełnianie błędów. Zachowaj równowagę między ryzykiem a możliwościami nauki.
  • Nadejdzie taki dzień, kiedy programista będzie od Ciebie lepszy w jakimś aspekcie. Zaakceptuj to. Pomóż im dostać się na szczyt!
  • Mów z entuzjazmem o swojej pracy. I ich pracy!
  • Bierz więcej odpowiedzialności, dawaj więcej pochwał

Jeśli coś zaprojektujesz, powinieneś być w stanie to zbudować

Pisanie odpowiedniej ilości dokumentacji to dobra umiejętność, którą warto posiadać. Zbyt mało specyfikacji i nikt poza Tobą nie zrozumie systemu. Zbyt dużo specyfikacji i zmiana systemu staje się kosztowna. Znalezienie punktu optymalnego zależy od projektu i zespołu, jednak jako architekt powinieneś o tym wiedzieć.

Bardzo łatwo jest dać się ponieść wymyślnym narzędziom i technikom diagramowania. Koniec końców nie ma to znaczenia, chyba że masz coś rzeczywiście do zaprezentowania. Wolę stosować praktyki wyszczuplonej dokumentacji, takie jak te zalecane w Modelu C4. Firmy pełne energicznych, zdolnych inżynierów również wydają się tutaj zgodne.

Jedną z kluczowych zasad, do której powinieneś się stosować: jeśli coś zaprojektujesz, powinieneś być w stanie to zbudować. A przynajmniej te najważniejsze fragmenty. Głupotą jest projektowanie systemu, którego nie jesteś w stanie zaimplementować. Twoim zadaniem, jako architekta, jest zrozumienie następstw podejmowanych decyzji technicznych i wytycznych, które stworzyłeś. Być może wiedza teoretyczna pozwoli Ci zajść daleko, to jednak nic nie pobije kogoś, kto jest w stanie praktycznie wykonać swoją pracę. Jeśli nie wiesz, czy jesteś w stanie to zrobić: Krok 1. Stwórz prototyp…

Pobrudź sobie ręce

Badania wykazały, że architekci powinni być praktyczni i powinni też pisać kod. Wielu ekspertów również zgadza się w tej kwestii. Myśląc o projekcie oprogramowania, sugeruję, aby architekci zaangażowali się w projekt. Może to oznaczać:

  • W przypadku projektów typu greenfield należy wspierać zespoły przy pomocy Spacerującego Szkieletu
  • Napisz testy jednostkowe architektury lub inne funkcje fitness dla swoich projektów
  • Uczestnictwo we wzajemnych ocenach
  • Refaktoryzacja kodu dla lepszego designu
  • Napisz kilka nowych funkcji


Nie tylko polepsza to Twoje własne umiejętności, ale także pomaga budować lepsze relacje z programistami. Zamiast kierować ludźmi przez autorytet, kieruj nimi, dając przykład.

Wnioski

W tym artykule omówiłem kilka porad, które udało mi się zebrać w ciągu ostatniego roku. Głównymi punktami były: doskonalenie swoich umiejętności technicznych oraz bycie pokornym i pomocnym liderem. Mam nadzieję, że te wskazówki okażą się dla Ciebie pomocne, a także, że uda mi się to robić raz do roku.


Oryginał tekstu w języku angielskim przeczytasz tutaj.

<p>Loading...</p>