I dopiero mieszanka świetnego inżyniera oprogramowanie oraz podstaw wiedzy modułowej tworzy najlepszych konsultantów SAP ABAP. Jak widać stworzenie takiego zespołu to angażujące i trudne zajęcie, a przy tym… nasza hicronowa specjalność.
Konsultanci na start
Jak wygląda początek naszej pracy? Konsultanci funkcjonalni zbierają wymagania biznesowe klientów i modelują procesy działające w firmie. Zespół Technologii SAP wspiera ich, gdy wymagania wykraczają poza standard SAP i potrzebna jest technologiczna wiedza… czyli często. Jeżeli mamy do czynienia z rzadkim przypadkiem klienta, którego zadowalają możliwości standardu oferowanego przez SAP, konsultanci ABAP w gruncie rzeczy nie są potrzebni. W takim przypadku wystarczy skonfigurowanie SAP-a pod konkretny proces bez dopisywania żadnych rozszerzeń. Prawda jest jednak taka, że każdy biznes jest w jakiś sposób unikalny i niezwykle rzadko standard SAP jest wystarczający. Czasami w systemie brakuje całych specyficznych funkcjonalności koniecznych do sprawnego działania organizacji. W tym momencie wkraczają ABAP-erzy.
Standard + nieograniczone możliwości
Konsultant biznesowy zajmuje się projektowaniem procesu, za to doświadczony konsultant ABAP projektuje pod dany proces rozwiązanie techniczne. SAP nie ogranicza tego, co można zmienić za pomocą języka ABAP – zapewnia otwarty kod źródłowy, który można w zasadzie dowolnie zmienić za pomocą obiektów modyfikacji. Niesie to jednak nieuchronne konsekwencje. SAP wprowadza aktualizacje do swoich standardowych rozwiązań, ale o aktualizacje zmodyfikowanych obiektów musi dbać właściciel systemu. Dla przykładu możemy posłużyć się zmianami w przepisach podatkowych. Po ich wprowadzeniu (przez rząd) pojawia się aktualizacja funkcjonalności systemu przygotowana przez SAP. Jeśli jednak kod w standardowym obiekcie został wcześniej zmieniony aktualizację trzeba robić ręcznie. SAP nie dostosuje aktualizacji do wprowadzanych zewnętrznie zmian, dlatego naszym klientom zalecamy jak najmniej zmian w standardzie. Dzięki zachowaniu standardu system jest łatwiejszy i tańszy w utrzymaniu.
Zupełnie inaczej ma się sprawa z dodawaniem funkcjonalności „obok” standardu. Wtedy ich utrzymanie i aktualizacje od początku są przypisane właścicielowi, nie zagrażają one jednak nowym wersjom (aktualizacjom) standardu.
Przepis na idealny zespół
W Hicron zazwyczaj stawiamy na zespoły zróżnicowane pod względem doświadczenia. Dzięki temu, dajemy szanse młodszym stażem ABAP-erom pracować przy ciekawych projektach pod okiem świetnych ekspertów. Z kolei doświadczeni specjaliści mogą skupić się na najtrudniejszych zadaniach. Dodatkowo w ten sposób kształcimy kolejnych programistów. Bo trzeba pamiętać, że nauka języka ABAP nie jest popularna i w zasadzie nie jest w programie nauczania technicznych szkół wyższych. Nasz system kształcenia z powodzeniem sprawdza nam się już od wielu lat, a jego kontynuacją i rozszerzeniem stał się projekt Hicron Academy, podczas którego szkolimy naszych stażystów, zazwyczaj świeżych absolwentów kierunków informatycznych lub studentów ostatnich lat.
Stream Lead – łącznik biznesu z kodem
Obecnie nasz zespół liczy kilkadziesiąt osób o zróżnicowanym poziomie doświadczenia. Kompletując zespół projektowy dbamy o to, by w grupie znaleźli się eksperci, którzy posiadają wiedzę modułową. Jednak siła dobrego konsultanta SAP-a tkwi nie tylko w umiejętności pisania kodu w języku ABAP, ale również na znajomości procesów biznesowych. I to także jest umiejętność, którą przekazujemy naszym stażystom i juniorom: konieczność zrozumienia pisanego kodu, a nie tylko ślepe trzymanie się specyfikacji.
Cieszę się, że mam w zespole konsultantów technologii, których poziom wiedzy na temat procesów plasuje się na poziomie porównywalnym do tego, reprezentowanego przez konsultantów biznesowych. Ułatwia to przekazywanie informacji i wymagań dotyczących tworzenia danych rozwiązań. Dzięki takiemu zaangażowaniu i wtajemniczeniu można przeskoczyć kilka poziomów i pominąć długie wyjaśnienia. Taka osoba łącząca umiejętności programowania w ABAP-ie i wiedzę na temat biznesu przy dużych projektach obiera rolę zwaną Stream Lead. Do jej zadań należy sprawdzanie kodu i jego dostosowania do wymagań biznesowych oraz pomaganie mniej doświadczonym członkom zespołu.
Gotowi, do testu, start!
Środowisko w SAP-ie podzielone jest zazwyczaj na trzy części: system developerski, na którym pisze się kod, system testowy, na którym odbywają się testy i system produkcyjny, czyli końcowy, na którym już działa biznes. Developerzy najczęściej działają na tym pierwszym. Po napisaniu kodów przez developera, wykonaniu unitestów i sprawdzeniu kodu, obiekty zostają przetransportowane na system testowy. W tym systemie odwzorowane jest mniej-więcej środowisko produkcyjne klienta, dzięki czemu można sprawdzić czy efekty pracy są zgodne z oczekiwaniami. Klient także weryfikuje czy dostarczone rozwiązania odpowiadają jego wymaganiom. Jeżeli wszystko się zgadza – ustalamy datę startu i przenosimy kody do systemu produkcyjnego.
Biznes klienta ciągle ewoluuje, dlatego wsparcie ABAP-era jest konieczne także po wdrożeniu. Z tego też powodu pozostajemy w ścisłej współpracy z zespołami zajmującymi się utrzymaniem i rozwojem systemów. Biznes nie stoi w miejscu, a tym samym zmieniają się jego potrzeby.
Zdalnie czy na miejscu?
Jako firma IT, Hicron już od dawna był przygotowany do świadczenia swoich usług w trybie pracy zdalnej. Jednak nawet konsultanci ABAP-a bywają postawieni w sytuacjach, w których swoją pracę muszą wykonywać na miejscu u klienta. Zdarza się tak najczęściej, gdy w grę wchodzą wyjątkowe przepisy dotyczące bezpieczeństwa danych. Na przykład, gdy klientem jest organizacja wojskowa lub firma z branży o specyficznych wymaganiach i hermetycznym systemie, do którego dostęp z zewnątrz jest niemożliwy. Fizyczna obecność ułatwia komunikację między programistą, konsultantem i klientem w momencie startu projektu (zwłaszcza dla klientów, którzy preferują projekty waterfall’owe). Jednak w nowych, covidowych realiach tego typu kontakty ograniczane są do minimum, a najczęściej całkowicie wyeliminowane.
ABAP-er nie jest stereotypowym programistą zamkniętym w swoim boksie, skupionym na tzw. „klepaniu” kodu. Jest blisko biznesu klienta i co ważne, a przy tym dość ekscytujące, stosunkowo szybko widzi efekty swojej pracy, aktywnie uczestnicząc w usprawnieniu procesów biznesowych.