unity wiedza

Czas czytania: 7 minut

Czym zajmuje się Programista Integracji Systemów IT?

programista-integracji

Stanowisko „programista integracji systemów IT” to dla deweloperów, zwłaszcza tych na początku kariery w branży IT, niewiele mówiące hasło. Aby rozjaśnic nieco temat, w poniższym artykule opiszę: 

– Na czym polega praca programisty integracji  

– Jakich kompetencji wymaga 

– Dlaczego warto rozwijać swoją karierę w tym kierunku 


Zanim trafiłem do Unity Group i zostałem programistą integracji, miałem za sobą już kilka lat doświadczenia jako Full Stack Developer Java. Jednak to dopiero podczas procesu rekrutacji pierwszy raz usłyszałem o szynie danych Mule ESB, a ponieważ staram się być na bieżąco z nowinkami technologicznymi – temat wzbudził moje zainteresowanie. Rekrutację oczywiście przeszedłem pozytywnie i jeszcze przed oficjalnym dołączeniem do zespołu zacząłem na własną rękę poszerzać wiedzę o integracji. Mimo, że byłem już doświadczonym specjalistą i niejedno na konsoli widziałem, zaciekawiły mnie możliwości jakie oferuje MuleSoft Anypoint Platform w połączeniu z Javą. W moim przypadku atrakcyjna była również szansa na zmianę branży – z systemów bankowości korporacyjnej przechodziłem do realizacji innowacyjnych projektów omnichannelowych i dedykowanych. Postrzegałem to jako same zalety. Ale co dalej? 

Jak wygląda praca programisty integracji? 

Pomijam oczywistą oczywistość, że dzień programisty zaczyna się od kawy – choć dokładnie taka jest prawda 😊 Realnie rozpoczynam pracę od przejrzenia kalendarza i zadań na dany dzień. W miarę mojego rozwoju w obszarze integracji zwiększyła się oczywiście liczba projektów, spotkań czy kontaktu z klientem, których początkowo nie było aż tak dużo. Oprócz programowania, pełnię także funkcję lidera technicznego i czerpię sporą satysfakcję z przekazywania mojej wiedzy innym członkom zespołu.  

Programowanie w Mule ESB odbywa się przez GUI, może się zatem wydawać, że cała „magia” dotyczy logicznego układania konkretnych „klocków”, ale konfiguracja szyny danych jest znacznie bardziej złożona niż można to sobie początkowo wyobrażać. Dużym wyzwaniem jest, aby wszystko efektywnie, wydajnie i stabilnie działało. Ogólnie mówiąc, należy skrupulatnie zaplanować architekturę całego rozwiązania, którego szynusług jest jednym z elementów, uwzględniając oczywiście potencjalne przyszłe funkcjonalności i procesy, które nasze rozwiązanie będzie wspierać. 

A dokładniej?

Nasze codzienne zadania odbywają się w zespole, który łączy deweloperów, analityka i testera, pracujemy zgodnie z filozofią Agile. Obecnie pewna część naszego zespołu to osoby pracujące w 100% zdalnie. Projekty są oczywiście różne, ale opierają się na potrzebie klienta dotyczącej sprawnego przepływu informacji między różnymi – separatywnymi – systemami IT. Obecnie każde przedsiębiorstwo posiada przynajmniej kilka systemów IT takich jak: ERP, CRM, WMS, PIMCMS i wiele innych, a także korzysta z systemów partnerów i kontrahentów. Systemy te mogą działać dużo efektywniejjeśli będą w stanie sprawnie i szybko się ze sobą komunikowaćTu właśnie z pomocą przychodzi szyna danychDzięki niej możemy połączyć systemy, które wystawiają swoje API na różnych interfejsach, ale także te, które takiego API nie posiadają i musimy “podpiąć” się do bazy danych lub też pobierać dane z plików. Dzięki szynie danych nie musimy wprowadzać żadnych zmian po stronie systemów dziedzinowych. Szyna posiada setki konektorów, dzięki którym jest w stanie wpiąć się praktycznie w każdy system dziedzinowy. Kiedy wiadomość przechodzi przez szynę, dokonujemy jej transformacji do postaci, którą są w stanie zrozumieć poszczególny elementy.  

Można powiedzieć, że codziennością w tym obszarze branży IT są zadania dotyczące budowania architektury rozwiązań i mierzenie się z dotyczącymi tego wyzwaniami z wydajnością, skalowalnością czy reużywalnością. 

Dobrą ilustracją procesu integracji jest np. integracja technologii Pimcore (system klasy PIM) z systemem zewnętrznym e-commerce B2B lub B2C (np. Samsung), gdzie korzystając z ich API pobieramy dane o produktach – opisy, multimedia itp. i wykonujemy transformację wiadomości, aby dopasować się do interfejsów i formatów danych wspieranych przez system Pimcore  

Często realizujemy projektdla dużych i znanych klientów, np. Volkswagen Group PolskaHolding One (właściciel marki Traficar), LPP (właściciel marki Reserved), GATX i wielu innych. 

Jakie technologie powinien znać programista integracji? 

Do wykonywania tej pracy niezbędna jest znajomość języka Java. Spotkałem się z opiniami, że programowanie w integracjach ma w istocie niewiele wspólnego z „prawdziwym” programowaniem w Java. Moim zdaniem nie jest to prawda. Na co dzień w swojej pracy wykorzystuję nowe funkcjonalności, które daje nam Java 8, co pozwala mi pozostawać na bieżąco ze zmianami w tej technologii. Jeśli więc dla kogoś wydaje się to barierą – obawy są nieuzasadnione. Przydatna jest również znajomość Hibernate, JPA, czy JUnitNiezbędna będzie wiedza z zakresu baz danych – SQL, oraz znajomość silników bazodanowych. Dla mnie w kilku projektach istotna była również wiedza z zakresu architektury SOA oraz mikroserwisowej, ale to nastąpiło dopiero na dalszym etapie pracy w integracjach.  

Na pewno dla osób, która podobnie jak ja, nie miały wcześniej do czynienia z tym obszarem w IT, integracje mogą się wydawać zagadnieniem trudnym do opanowania i wymagającym przyswojenia sporej ilości wiedzy, aby móc wydajnie pracować. Uważam, że w Unity Group bardzo fajnie podchodzimy do wdrożenia nowych osób. Podczas rozpoczęcia pracy świeży członek zespołu otrzymuje czas na naukę nowych technologiiwewnętrznych zasad programowania oraz jest pod opieką mentora, który wspiera jego początkowy rozwój. 

Jeśli chodzi o narzędzia i technologie, których używamy w obszarach integracji możemy wymienić m.in.: Mule ESB, WSO2, Apache Camel, czy Talend.  Początkowo zdobycie wiedzy z tego zakresu wydaje się sporym wyzwaniemale zapewniam, że jest to jak najbardziej przyswajalna, a co być może ważniejsze – niezwykle ceniona na rynku pracy kompetencja. Tak jak wspomniałem wcześniej, podczas nauki jesteśmy pod opieką doświadczonego specjalisty. Dzięki sprawnej komunikacji, prócz mentora, zawsze możemy w ramach zespołu liczyć na pomoc innych osób. 

Dlaczego warto rozwijać karierę w tym kierunku? 

Moim zdaniem dużym plusem możliwości rozwoju w tym kierunku jest relatywnie – jak na branżę IT – niski próg wejścia merytorycznego. Oczywiście, tak jak już wspomniałem, istotna jest wiedza z zakresu Javy, ale to wiedza, którą można nabyć dosyć szybko w wystarczającym zakresieznając już np. inny język programowania lub mając chęć do nauki we własnym zakresie. Dlatego integracje systemów IT to idealna dziedzina dla osób, które chcą zmienić wiodącą technologię lub rozwinąć swoje kompetencje dotyczące Javy.  

Tak naprawdę zakładając, że kandydat posiadałby jedynie wiedzę z Javy na wymaganym przez nas poziomie, ale był osobą komunikatywną i ambitną, możemy przyjąć, że relatywnie szybko odnalazłby się w temacie integracji. Na takie osoby jesteśmy również otwarci w naszym zespole, ponieważ chętnie dzielimy się wiedzą i wierzymy, że najlepiej jest zdobywać ją bezpośrednio podczas pracy z projektem pod okiem doświadczonego mentora.  

Przede wszystkim wybór takiej ścieżki rozwoju jest przyszłościowy, ponieważ bardzo dużo systemów pisanych kiedyś jest zaprogramowanych do komunikacji „point to point”, a dla organizacji dążących do transformacji cyfrowej jedyną możliwością na płynne przejście tego procesu jest efektywne skomunikowanie już istniejących. Przez najbliższe lata pracy będzie zatem pod dostatkiem i jest ona doceniana zarówno przez pracodawców, jak i klientówPrzy tym technologie stosowane w szynach danych są naprawdę innowacyjne – dla osób lubiących mierzyć się z nowościami powinien być to jeden z głównych atutów.  

Zamiast podsumowania – obalamy mity 

Praca przy integracjach nie zawiera efektu wow, jest mało interesująca  pogląd ten wziął się prawdopodobnie z kwestii związanych z programowaniem webowymBez wątpienia efekt pracy, który możemy zobaczyć natychmiast i dodatkowo ładnie go ostylować budzi w programiście żywsze emocje niż konieczność główkowania nad projektowaniem i optymalizacją przepływów pomiędzy systemami IT. Ale zaręczam, że kiedy zaprojektujemy oraz zaprogramujemy szynę danych, a następnie połączymy wszystko w dobrze działającą całośćkiedy wszystkie systemy mogą ze sobą “rozmawiać”przepływ wiadomości odbywa się bardzo szybko pomiędzy elementami oraz w łatwy sposób możemy dołączać kolejne systemy oraz najważniejsze, rozwiążemy problemy klienta – satysfakcja jest ogromna 😊 

W integracjach niewiele jest „prawdziwego” programowania w Javie  o tym już wspominałem. Nie ma powodów do obaw – praca z Javą na tym stanowisku jest nieodzowna. I nie chodzi tu o napisanie najprostszej klasy czy uzupełnienie jej danymi. Integracje to nie tylko nauka Javy, ale również projektowania obiektowego. 

Zastanawiasz się nad rozwojem Twojej kariery w obszarze Integracji IT? Porozmawiajmy! 

Wyrażam zgodę na przetwarzanie danych osobowych na zasadach określonych w polityce prywatności. Jeśli nie wyrażasz zgody na wykorzystywanie cookies we wskazanych w niej celach, w tym do profilowania, prosimy o wyłącznie cookies w przeglądarce lub opuszczenie serwisu. więcej

Akceptuj