projektowanie architektury systemów informatycznych zgodnie z obowiązującymi/przyjętymi standardami architektonicznymi IT;
tworzenie i utrzymywanie standardów architektonicznych oraz dobrych praktyk programistycznych;
identyfikowanie, projektowanie, proponowanie zmian w istniejącej architekturze IT na podstawie wymagań biznesowych tworzonych w trakcie analiz;
nadzorowanie poprawności tworzenia oprogramowania zgodnie z przyjętą architekturą i wymaganą funkcjonalnością przy zachowaniu staranności i dbałości o jak najlepszą jakość powstającego produktu;
tworzenie modeli systemów i przepływu danych pomiędzy nimi;
dobór technologii i narzędzi wspierających skalowalność, wysoką dostępność i wydajność systemu;
wsparcie projektów w zakresie opracowywania koncepcji rozwiązań IT;
dokumentowanie architektury IT.
requirements-expected :
wykształcenie wyższe związane z informatyką, inżynierią oprogramowania lub pokrewnymi dziedzinami;
minimum 7 lat doświadczenia jako programista lub inżynier oprogramowania;
minimum 1 rok doświadczenie w pracy na stanowisku związanym z architekturą oprogramowania (architekt, Tech Lead);
doskonała znajomość przynajmniej dwóch popularnych języków programowania, np. Java, C#, Python, JavaScript itp.;
znajomość i doświadczenie w pracy z różnymi technologiami i platformami, np. .NET, Java EE, Node.js, itp.;
doskonała znajomość i doświadczenie w zastosowaniu różnych wzorców projektowych, takich jak MVC, MVVM, Clean Architecture, itp.;
praktyczna znajomość i doświadczenie w użyciu/ umiejętność wykorzystania architektur mikroserwisów, RESTful API, SOA, Event-Driven Architecture itp.;
znajomość zasad projektowania SOLID, DDD, architektur event-driven i rozwoju mikrousług;
biegłość w ocenie opcji technologicznych i propagowaniu zasad zwinnych (np. TDD, CI);
znajomość narzędzi CASE;
znajomość notacji BPMN, UML, C4;
znajomość procesów tworzenia oprogramowania (Discovery, Define, Develop, Delivery);