Parę słów o zawodzie z całkiem trafną nazwą.
Jak normalny architekt?
Nazwa nie wzięła się znikąd, to faktycznie taki trochę architekt od budowy ale oprogramowania. Też ma projekty, szkice i plany. Ale też praca architekta oprogramowania ma wiele definicji. Jest to stanowisko, które obejmuje bardzo dużo różnego rodzajów obowiązków i może być wykonywane przez różne osoby o zupełnie różnych orientacjach. Do tego w różnych firmach kładzie się inny nacisk na poszczególne z tych obowiązków co dodatkowo różnicuje pracę architektów oprogramowania.
Na przykład niektórzy są integralną częścią zespołu badawczo-rozwojowego, podczas gdy innym bliżej do konsultantów (czasami nawet wykonawców). Niektórzy koncentrują się na konkretnym projekcie lub produkcie, podczas gdy inni przyjmują znacznie szerszy kąt widzenia. Niektórych interesuje wyłącznie wewnętrzna perspektywa a już ich koledzy z innych firm są bardziej zorientowani na klienta.
Inaczej w korpo, inaczej w małej firmie
Ma to również wiele wspólnego z rodzajem organizacji, dla której architekt pracuje, i etapem, na którym wszedł na pokład. Na przykład duża korporacja prawdopodobnie będzie miała jakiś wydział architektów oprogramowania, w którym każdy z nich będzie koncentrował się na określonym produkcie lub aspekcie organizacji. Z kolei rola architekta w startupie jest zwykle bardziej elastyczna, a dołączając do nowego startupu w początkowym okresie, może będziesz nawet mógł ukształtować swoją pracę zgodnie z własnym pojmowaniem tej funkcji.
Fundamenty tej pracy
Architekt oprogramowania to w każdym razie taki ogólny punkt kontaktowy w sprawie ogólnych aspektów przyjętego rozwiązania informatycznego. Jego sprawą jest dobre zrozumienie podstawowego produktu, ale także tego jak działają poszczególne rozwiązania (komponenty), które organizacja już posiada i tego jak one ze sobą współpracują. Do tego musi wiedzieć dużo na temat sposobu przepływu danych i używanego stosu technologicznego.
Oczywiście nie można oczekiwać, że jakakolwiek osoba będzie wiedziała wszystko lub była ekspertem w każdym aspekcie. Architekt musi jednak mieć niezbędne przygotowanie, aby dobrze rozumieć tematykę, być wystarczająco pewnym siebie, aby wyrazić opinię (nawet jeśli wymagane są dodatkowe, specjalistyczne wiadomości) i zawsze chętnie się uczyć i ewoluować. Problemy z jakimi mierzy się architekt czasami dotyczą sedna produktu ale zwykle są na wyższym poziomie i dotyczą infrastruktury, integracji między komponentami, spraw klientów, kwestii bezpieczeństwa itp.
Sprawdź oferty pracy na TeamQuest
Pracę architekta dzieli się czasem na cztery główne aspekty: projekt, infrastrukturę, API i integrację.
Projekt najważniejszy
Najczęściej architekci spędzają najwięcej czasu nad projektem. To jest element, od którego zależą wszystkie inne aspekty ich pracy. Jest to również część, w której wszystkie plany i szkice ożywają, tak jak rysunki architektoniczne przy pracach budowlanych.
Pamiętaj, że większość ludzi nie będzie zainteresowana wyrafinowanym projektem systemu (chociaż nadal możesz chcieć go mieć - przynajmniej dla siebie). Najprawdopodobniej będą o wiele bardziej wdzięczni, gdy zobaczą prostszy i bardziej elegancki diagram, a to z pewnością pomoże im lepiej zrozumieć Twój – architekta - sposób myślenia. Chodzi tu o projektowanie na wysokim poziomie elementów składowych, komunikacji, punktów integracji itp. Architekt musi się zwłaszcza upewnić, że mamy jasność co do tego, jak komponenty współpracują ze sobą, jakie technologie są zaangażowane i jak przepływają dane.
A o tym zawodzie słyszałeś?