Ponadczasowe kompetencje programisty. Szukając niezmiennego w zmiennym.

Wysokie tempo transformacji cyfrowej w każdym możliwym sektorze rekonstruuje diametralnie nasze środowisko życia, wprowadzając do niego szereg usprawnień i automatyzacji, które nie były wcześniej możliwe — zdalna praca i edukacja, natychmiastowy dostęp do informacji, cyfrowy obieg pieniędzy. Jednocześnie w trakcie rozwoju i szerszej dystrybucji są technologie oparte między innymi o sztuczną inteligencję, internet rzeczy, druk 3D i autonomiczne pojazdy. Taki postęp wymaga od nas bardzo szybkiej adaptacji, ale również krytycznego myślenia, stanowiącego niezbędne narzędzie w ocenie ryzyk określonych kierunków rozwoju technologicznego.

Niestety proces podnoszenia poziomu zrozumienia złożoności otaczającej nas infrastruktury informacyjnej jest wolniejszy od samych zmian ją powodujących. Budowanie nowych systemów i dodawanie kolejnych zależności między nimi jest realizowane bardzo szybko przez wiele podmiotów jednocześnie, przez co ciężko utrzymać aktualny obraz całej sytuacji, nie mówiąc już o trafnej predykcji przyszłych wydarzeń. Niezależnie czy mówimy tutaj o poziomie zespołu pracującym nad projektem, czy firmami operującymi na globalnym rynku. Ta luka pomiędzy poziomem skomplikowania implementacji technologii, a naszym jej zrozumieniem stale rośnie i dodatkowo powiększa się, co przejawia się nie tylko w obrębie samego środowiska IT, ale też w globalnych strukturach społeczno-ekonomicznych, które doświadczają cyklicznych kryzysów. Holistyczna perspektywa ma tutaj duże znaczenie ze względu na ilość i jakość powiązań ekosystemów danych, stanowiących nierozerwalną część systemów informatycznych.

Całościowa percepcja ułatwia identyfikację ryzyk oraz usprawnia procesy decyzyjne, co pozwala nam relatywnie bezpiecznie docierać do wyznaczonego celu. Tworzone oprogramowanie co do zasady odzwierciedla realne procesy biznesowe, a zatem funkcjonuje interdyscyplinarnie, uwzględniając główne obszary przedsiębiorstwa takie jak np. marketing, sprzedaż, księgowość, logistyka, zarządzanie ludźmi i finansami. Dlatego kompletna świadomość sytuacyjna jest kluczowa, zarówno wewnątrz i na zewnątrz organizacji, jak i z punktu widzenia kariery pojedynczego specjalisty w obecnej firmie i na rynku pracy.

Mgła dynamiki zmian wciąż się utrzymuje przesłaniając nam pole widzenia, a dotychczasowe paradygmaty planistyczne i predykcyjne poddawane są ciężkiej próbie. Aby w takiej sytuacji móc polepszyć postrzeganie problemów w szerszym kontekście i długoterminowej perspektywie należy zacząć od przyjęcia założeń, wynikających z charakterystyki obecnego stanu rozwoju technologicznego. Główne cechy jakie możemy wyróżnić to zmienność, niepewność, złożoność i niejednoznaczność. Stanowią one części akronimu VUCA (volatility, uncertainty, complexity, ambiguity) stosowanego początkowo w teorii przywództwa głównie w obszarze wywiadowczym i militarnym.



Obecnie chaos i niestabilność są już codziennością w każdym sektorze, a termin “czarny łabędź” określający trudne do przewidzenia wydarzenia, wszedł na dobre do głównego obiegu i stał się integralną część naszego życia. Zatem spodziewanie się niespodziewanego stało się normą. O tym, że zmiana jest zasadą rządzącą rzeczywistością wiedzieli już starożytni, jednak aktualna sytuacja jest o tyle trudniejsza, że ta zmiana następuje szybko, nieoczekiwanie i bardzo często jest skomplikowana oraz połączona z wieloma innymi systemami, które wpływają na siebie nawzajem. Ta dynamika procesów na poziomie zespołów tworzących oprogramowanie prowadzi niestety do większego stresu i presji czasowej na realizację projektów. Potwierdzają to badania dotyczące stresu w miejscu pracy i wypalenia zawodowego. Według instytutu Gallupa wskaźnik stresu w miejscu pracy wzrósł z poziomu 31 do 44 punktów między rokiem 2009 a 2021. Z kolei z raportu firmy Yerbo z 2022 roku wynika, że 42% specjalistów IT z wysokim poziomem ryzyka wypalenia zawodowego rozważa odejście z pracy w przeciągu 6 miesięcy, a dwie na pięć osób doświadczyło objawów wypalenia.

Taka kondycja psychiczna i morale zespołów w konsekwencji prowadzą do mniejszej efektywności pracowników, co potwierdzają wyniki raportu “The State of Burnout”, który podaje, że 51% ankietowanych na próbie ponad 30.000 osób uważa, że osiąga mniej niż powinni. To z kolei powoduje tworzenie niskiej jakości oprogramowania generującego kolejne problemy i zwiększenie niestabilności tworzonych produktów. W taki sposób ten negatywny cykl zatacza koło i powtarza się do czasu gruntownej przebudowy procesów w danej organizacji lub na poziomie zespołu.

Nie kodujemy programów, tylko świat

Cyfrowe połączenia i ich złożoność przenikają wszystkie obszary życia codziennego, od interakcji społecznych, ekonomicznych, politycznych, aż po rynek pracy i związane z nim umiejętności wymagane do adaptacji i rozwoju. Powszechny dostęp do zasobów cyfrowych sprawia, że ludzie mogą osiągnąć więcej w krótszym czasie i przy mniejszym nakładzie pracy. Jednocześnie negatywne konsekwencje wpływu jaki można wywierać poprzez technologię rosną wykładniczo. Dodatkowo funkcjonowanie w systemach opartych o wymianę informacji wiąże się z zagrożeniami związanymi z bezpieczeństwem, prywatnością i zaufaniem. Dlatego twórcy oprogramowania będą musieli projektować swoje rozwiązania z uwzględnieniem społecznego kontekstu. Sposób działania algorytmów Facebooka może wpłynąć na wybory w danym państwie, a kod odpowiadający za sposób unikania wypadków w autonomicznych samochodach wpłynie bezpośrednio na ludzkie życie.

Wiąże się z tym ogromna odpowiedzialność, która nie może leżeć jedynie w rękach dyrektorów, menedżerów i liderów zmian, ale również w rękach programistów, analityków i designerów, od których jako specjalistów oczekuje się mówienia „tak, damy radę, to dobry kierunek”, ale również „nie, to jest ryzykowne i nie powinniśmy tego robić, bo koszty tej decyzji zapłacimy wszyscy”.

Aby lepiej zrozumieć skalę wpływu oprogramowania na świat, należy uświadomić sobie fakt, że jesteśmy całkowicie zanurzeni w internecie, który wchłania kolejne obszary poprzez podłączanie do sieci samochodów, sprzętu RTV, AGD, publicznej infrastruktury i wszystkich urządzeń agregujących istotne dane, tworząc w ten sposób internet rzeczy (IoT, internet of things). Jednak nie tylko pojedyncze przedmioty są integrowane z cyberprzestrzenią. Całe fizyczne lokalizacje — atrakcyjne geograficznie miejsca, budynki, miasta — są przenoszone obecnie do wirtualnej rzeczywistości i rozszerzane o nowe, istniejące tylko w cyfrowym meta świecie. Docelowo każdy produkt będzie w mniejszym lub większym stopniu zarejestrowany w bazie danych i monitorowany podczas swojego cyklu życia — od produkcji, przez sprzedaż, aż do jego “śmierci” — przy użyciu najnowszych zdobyczy elektroniki, jak na przykład technologii RFID (Radio Frequency Identification). W tak zdigitalizowanym środowisku siłą utrzymującą porządek i wiodącą postęp jest oprogramowanie.


„Nasze społeczeństwo działa na oprogramowaniu. W dzisiejszych czasach nic nie dzieje się w naszym społeczeństwie bez oprogramowania”
Robert C. Martin, Guru programowania, autor bestsellerów IT


W hiperpołączonym świecie jako współtwórcy oraz liderzy rozwoju oprogramowania musimy liczyć się z dużą odpowiedzialnością i stroną etyczną w realizowanej pracy, która coraz dobitniej pokazuje swoje ciemne strony i ryzyka, których ogólnie przyjęty techno optymizm często nie pozwala dostrzec z odpowiednim wyprzedzeniem.

Copyright © 2022 Publigo. Szkolenia napędza platforma Publigo