2.03.20227 min

Piotr SrokaTechnical WriterHitachi Energy

Jak programiści z Krakowa tworzą soft dla gigantów branży energetycznej

Poznaj Asset Performance Management, który pozwala optymalizować koszty i ryzyko awarii technologii z zakresu dystrybucji energii elektrycznej.

Jak programiści z Krakowa tworzą soft dla gigantów branży energetycznej

W ubiegłym roku Kraków zajął wysokie, 20. miejsce w Tholons Global Innovation Index (TGII) – prestiżowym rankingu 100 najlepszych „Super Miast”. Po nieco słabszym wyniku w 2022 (miejsce 25) obserwujemy, że miasto znów pnie się ku światowej czołówce, notując bardzo wysoki wzrost w kategorii Innowacje i Cyfryzacja. 

Co wypływa na tak świetne wyniki? Niewątpliwie niesłabnący trend przenoszenia się nad Wisłę kolejnych globalnych, innowacyjnych i mocnych technologicznie korporacji, które właśnie w stolicy Małopolski chcą budować i rozwijać swoje oprogramowanie. Równolegle, w Krakowie wciąż rośnie w siłę kreatywną i zaawansowana technologicznie społeczność startupowa.

Nie bez znaczenia jest również działalność takich organizacji jak ASPIRE Poland, która swoimi inicjatywami wspiera krakowski sektor biznesowo-technologiczny. 

Właśnie takie innowacyjne rozwiązania powstają w Hitachi Energy, a konkretnie w przynależnym do firmy Centrum Technologicznym, którym zarządza Krystyna Pietrzykowska. 


Bez awarii na wielką skalę 

Hitachi Energy jest światowym liderem technologicznym, który obsługuje klientów z sektora użyteczności publicznej, przemysłu i infrastruktury. Mieszczące się w sercu Krakowa Centrum Technologiczne dostarcza innowacyjnych i niezawodnych technologii z zakresu generacji, transmisji oraz dystrybucji energii elektrycznej. 

Na czym polega innowacyjność rozwiązań powstających w naszym Centrum? Wyjaśnię to na przykładzie systemu APM (Asset Performance Management). 

W ostatnich latach obserwujemy znaczne postępy we wczesnej identyfikacji degradacji sprzętu, zanim wynikająca z tego awaria funkcjonalna wpłynie na jego bezpieczeństwo lub działanie. Rozwój niedrogiego sprzętu komunikacyjnego, różnego rodzaju czujników i sensorów oraz oprogramowania analitycznego również przyspieszył tempo innowacji w prognozowaniu predykcyjnym. 

Nasze rozwiązanie APM (Asset Performance Management) wykorzystuje te trendy i pozwala na optymalizację kosztów utrzymania oraz zarządzania ryzykiem wystąpienia awarii. Mamy tu na myśli kluczowe aktywa przedsiębiorstw o znaczeniu strategicznym, takich jak elektrownie czy fabryki. Stabilność i bezpieczeństwo tych urządzeń i systemów zapewnia bezpieczeństwo dostaw dla odbiorcy końcowego. 

Projekt APM od strony technicznej realizowany jest przez międzynarodowy zespół specjalistów w oparciu o najnowocześniejsze metodyki i technologie wytwarzania oprogramowania (więcej informacji można znaleźć w ofertach pracy, które obecnie mamy otwarte).

Trzonem projektu jest krakowski zespół inżynierów oraz właścicieli produktu, którzy mają kluczowy wpływ na sposób i kierunek jego rozwoju. Nic nie ma przed nami tajemnic – znamy projekt „od podszewki”, architekturę wypracowaliśmy sami, czuwamy nad bezpieczeństwem naszych rozwiązań, tworzymy dokumentację techniczną. 

Dariusz Gubernat, Chief Software Development Engineer / Architect, który od lat związany jest z Hitachi Energy i APMem, w taki sposób krótko charakteryzuje nasz produkt:

“Kluczowym elementem podczas projektowania architektury systemu jest skorelowanie jej ze wspieranymi procesami biznesowymi przy jednoczesnym uwzględnieniu kwestii bezpieczeństwa, wydajności oraz kosztów wytwarzania, utrzymania i wdrożenia rozwiązania. Dobra architektura powinna zapewniać skalowalność oraz elastyczność i umożliwiać łatwe dodawanie kolejnych funkcjonalności do systemu bez naruszania jego podstawowych elementów.”

APM, na podstawie danych zebranych przez inżynierów oraz otrzymanych z czujników pomiarowych (#bigdata), z wykorzystaniem predykcyjnych modeli matematycznych, potrafi określić, jaki jest poziom degradacji sprzętu oraz jakie jest prawdopodobieństwo awarii w określonym przedziale czasu. Jest to kluczowa informacja dla osoby zarządzającej flotą aktywów, pozwalająca na priorytetyzowanie zadań. 

Predykcyjne modele matematyczne tworzone są w oparciu o działanie mechanizmów sztucznej inteligencji (#machinelearning) oraz na podstawie wielu lat doświadczeń inżynierów w zakresie obsługi urządzeń takich jak transformatory, wyłączniki obwodów, zespoły ogniw magazynujących energię, sieci przesyłowych energii, turbiny wiatrowe itp. 

Maluje się nam obraz bardzo złożonego produktu, co jest oczywiście naturalne, biorąc pod uwagę odbiorców, do których skierowany jest nasz produkt. Wchodzimy tutaj w obszar produktów, które wykorzystuje się do podejmowania kluczowych dla organizacji decyzji. Jak jest więc z obsługą takiego oprogramowania?

W tej kwestii możemy polegać na umiejętnościach i doświadczeniu osób takich jak Senior Software Engineer Łukasz Stalmasiński i Senior UX Designer Konrad Szklarski, którzy zajmują się projektowaniem oraz implementacją aplikacji webowych z wykorzystaniem ReactJS, Redux, TypeScript i JavaScript. Powołując się na słowa Łukasza, wiemy, że:

“Nasi użytkownicy oczekują narzędzi, które pomogą im w podejmowaniu kluczowych dla organizacji decyzji. Narzędzia tego typu zazwyczaj są złożone oraz skomplikowane, co nie oznacza, że muszą być one trudne w obsłudze. Naszym zadaniem jest przygotowanie aplikacji tak, aby jej obsługa była prosta i intuicyjna, a jej możliwości były idealnie dopasowane do potrzeb użytkowników.” 

To co przy okazji podkreśla Konrad Szklarski to, że:

“Tworzone przez nas produkty adresowane są przede wszystkim do wykwalifikowanych specjalistów — ludzi, którzy wiedzą, co robią. Nasz proces, oparty na metodologii Design Thinking, to poznanie problemów użytkowników, środowiska ich pracy, a następnie zaprezentowanie i sprawdzenie precyzyjnych rozwiązań. Najważniejsze jednak: w odróżnieniu od produktów typowo konsumenckich, powinny one służyć jako rozszerzenie możliwości naszych użytkowników, pozwalając im na swobodną pracę i kreatywność, w odpowiednim czasie usuwając się im z drogi.
Innymi słowy: nasze narzędzia nie powinny wymagać instrukcji obsługi, muszą być intuicyjne i nowoczesne.”

Pozostańmy jeszcze na chwilę przy produkcie. Zapytany o to, co pomaga tworzyć dobry software, nasz Principal QA Engineer Maciej Barański zwraca uwagę na jakość: 

“Aby sprostać oczekiwaniom i potrzebom naszych klientów, nasz zespół wypracował atmosferę, w której dbałość o najwyższą jakość jest naturalnym składnikiem procesu wytwarzania oprogramowania. Atmosfera ta towarzyszy nam od momentu analizy pierwszych wymagań, podczas przeglądów kodu i automatyzacji testów do wdrożenia rozwiązania, a także w czasie użytkowania produktu przez klienta.” 


Prawdziwy zespół do zadań specjalnych 

Według niezależnych badań rynku (DC MarketScape 2020-2021 vendor assessment), tworzone przez nas rozwiązanie pozycjonowane jest jako lider w przemyśle. Zaufało nam wielu klientów reprezentujących między innymi wytwarzanie czy dystrybucję energii elektrycznej na poziomie krajowym. To duża odpowiedzialność, która niesie ze sobą konieczność ciągłego doskonalenia oraz rozwoju.

Nasze plany są bardzo ambitne, a zespół jest zmotywowany, aby je realizować. Nie byłoby to możliwe, gdyby nie pełne wsparcie organizacji i potencjał, jaki dostrzeżono już dawno w naszym Centrum. Ze słów Wojciecha Zająca, Enterprise Software Krakow Site Leader możemy dowiedzieć się, jakie były początki APM-a w Krakowie:

“APM to jeden z pierwszych produktów, za który wzięliśmy w Krakowskim Centrum Technologicznym pełną odpowiedzialność. Zespół nie tylko sprostał wyzwaniu, budując rozwiązanie, które jest wdrażane z sukcesem na całym świecie, ale również wytyczył nowe ścieżki w organizacji, dostarczając rozwiązanie klasy enterprise w modelu SaaS (Software as a Service). Umiejętność sprostania zmiennym wymaganiom klientów, którzy podejmują na podstawie m.in. naszego rozwiązania decyzje stanowiące o przyszłości sieci energetycznej krajów, dostarczając nową wersję oprogramowania co dwa tygodnie, daje nam ogromną satysfakcję i napawa dumą. Zespół APM pokazuje najlepsze praktyki tworzenia oprogramowania, dzięki czemu coraz więcej produktów jest realizowanych właśnie w naszym centrum." 

W zespole APM mamy jasno określony cel, dzięki czemu jesteśmy efektywni i wydajni. Wypracowany przez nas skuteczny proces tworzenia oprogramowania sprawia, że jesteśmy w stanie dostarczyć to, czego wymaga od nas nasza organizacja. Ponadto, dużo łatwiej o zaangażowanie i „polubienie się” z produktem, który tworzymy, jeśli zespół ma swobodę działania, swoistą autonomię i możliwość realizacji zadań w sposób, który uzna za najlepszy – w naszym Centrum Technologicznym (na szczęście) jest na to pełna zgoda i przestrzeń.

O tym, jak udaje się budować zaangażowanie w zespole, najlepiej świadczą słowa Jakuba Kowalczyka, który zajmuje stanowisko Product Line Director for Lumada APM, a co za tym idzie, kieruje całym zespołem: 

“Plany rozwojowe Lumada APM są bardzo ambitne, więc nasz zespół musi być dobrze zorganizowany i zmotywowany, by im sprostać. Kluczem do budowy, ale przede wszystkim utrzymania zespołu gotowego na tak duże wyzwania jest możliwość budowy i modyfikacji procesu produkcji zgodnie z najnowszymi trendami, operacyjna niezależność i autonomia, realny wpływ zespołu na proces decyzyjny oraz gwarancja czasu na zapewnienie jakości i powtarzalności procesu. Ważnymi aspektami są też nowoczesne i odpowiednio dobrane technologie tak by ludzie rozwijali się i budowali swoją pozycję na rynku IT." 

W naszym projekcie duży nacisk kładziemy na dzielenie się wiedzą. Zdajemy sobie sprawę, że problemy, z którymi się stykamy, nie zawsze da się rozwiązać w pojedynkę. I tutaj z pomocą przychodzą nam inne osoby w zespole. Wprowadzamy zmiany, dużo zmian — tylko w taki sposób można coś ulepszyć.

Pracując w metodyce Agile (#agile, #scrum), wspólnie cieszymy się z sukcesów, a z niepowodzeń wyciągamy wnioski. Dzielimy się otwarcie opiniami i doświadczeniem, które zdobywamy na co dzień. Niepowodzenie to często pierwsza albo kolejna próba, która, przy zaangażowaniu całego zespołu w radzenie sobie z wyzwaniami, przynosi ostatecznie oczekiwane rezultaty. 

Co więcej, pracując nad APM-em, pozwalamy, aby zdobycze technologiczne pomagały nam w pracy. Według Kamila Żydka, Lead DevOps Enginneer, kluczem do sukcesu przy tak zaawansowanym oprogramowaniu jest automatyzacja:

“Z punktu widzenia zespołu DevOps, APM jest produktem pełnym wyzwań. Mówimy tutaj o produkcie, który musi działać na różnych architekturach procesorów, różnych rozwiązaniach chmurowych, a także bezpośrednio u klienta w ofercie “on premises”. Dodatkowo nasza oferta rozwiązań chmurowych, to częste wydawanie nowych wersji na instancje produktu rozsiane po całym świecie. Jednak dzięki postawieniu nacisku na automatyzacje oraz na wykorzystanie nowoczesnych technologii jesteśmy w stanie dostarczać produkt na czas w bezpieczny sposób.” 

Na koniec ważna, jeżeli nie najważniejsza składowa tego produktu – zaangażowany, zorientowany na ambitny cel, zgrany zespół. To jest prawdziwe źródło powodzenia APM – bo za każdym wyjątkowym sukcesem stoi wyjątkowa współpraca.

Łatwo to dostrzec będąc w mojej roli Technical Writera, gdzie oprócz bliskiej współpracy na poziomie poszczególnych osób i zespołów deweloperskich, mam też kontakt z szerszym gronem interesariuszy i pełniejszy obraz tego produktu.

Nie jest tajemnicą, że zespół APM-a ma bardzo wysoki próg wejścia, jeśli chodzi o technologiczną złożoność produktu, co czyni go jeszcze ciekawszym miejscem pracy. Natomiast to, co można tylko doświadczyć, decydując się na pracę u nas, to poczucie, że wszyscy gramy razem do jednej bramki i wzajemnie doceniamy nasze umiejętności eksperckie z różnych dziedzin.

<p>Loading...</p>