Mastodon
top of page

IT to głównie rozwiązywanie zagadek

Mit „Magika od komputerów”

Ileż to razy słyszałem w pracy „IT to czarna magia”, „Nie rozumiem, jak możesz wykonywać tę pracę”, „IT to magicy” i inne, temu podobne.

W powszechnym wyobrażeniu gość od IT to postać w bluzie z kapturem, która w mroku nocy uderza w klawisze z prędkością karabinu maszynowego, a na ekranie przesuwają się kaskady zielonych znaków (pozdrawiam fanów Matrixa!). Rzeczywistość jest jednak znacznie ciekawsza (moim zdaniem), choć zdecydowanie mniej filmowa. Użytkownicy często nazywają nas „magikami od komputerów”. Jeśli myślisz, że moja praca polega wyłącznie na klepaniu w klawiaturę”, to tak jakbyś powiedział, że praca pisarza polega na „stawianiu liter”. Litery to tylko narzędzie. Prawdziwa magia dzieje się tam, gdzie zaczyna się tłumaczenie z języka użytkownika na język techniczny, gdzie problem zamienia się w rozwiązanie, a wszystko wygląda jak czary ;)


1. Stukanie w klawiaturę to tylko mała część

Prawda jest nieco inna, niż wyobraża sobie większość: najwięcej czasu spędzam nie na pisaniu, ale na zgadywaniu. . Tak, dobrze przeczytaliście, zgadywaniu. Praca w IT to w większości proces detektywistyczny. Musisz zrozumieć mnóstwo rzeczy, np:

Jeśli trzeba napisać lub uzupełnić kod jakiegoś programu czy skryptu automatyzacji i czytam, co autor miał na myśli (nawet jeśli tym autorem jestem ja sprzed pół roku) i za żadne skarby świata nie ogarniam, dlaczego ta funkcja jest tak napisana. Bez sensu. Tak wiem, dobrze udokumentowany kod łatwo się czyta. Niech pierwszy rzuci klawiaturą ten, kto ma zawsze idealną dokumentację własnego kodu. Śmiało, zaczekam…

Dlaczego system zachowuje się tak, a nie inaczej? Co robiłem, zanim się wysypało? Czy to przeze mnie się wysypało?

Co ma na myśli użytkownik, kiedy mówi np. “Drukarka mi nie działa.”? Z doświadczenia wiem, że przyczyną takiego komunikatu rzadko jest w istocie drukarka.

Gdzie ukryła się ta jedna, mała wredota, która kładzie cały projekt? Przykład z ostatniego projektu na Heathrow w Londynie: mieliśmy pętlę na switchu i za żadne skarby świata nie umieliśmy jej znaleźć. Dopiero po kilku godzinach udało się to mojemu koledze, przez przypadek ;) bo często tak właśnie rozwiązuje się problemy w IT.

Klepanie w klawiaturę to tak naprawdę ostatni etap mojej pracy – to jedynie zapisanie rozwiązania zagadki, którą właśnie udało się rozwikłać w głowie. Dokumentacja procesu myślowego i budowanie Bazy Wiedzy, z której mogą czerpać Twoi koledzy magicy.


2. Architektura, czyli budowanie z klocków bez instrukcji

Wyobraź sobie, że dostajesz zadanie: zbuduj zamek z klocków. nie masz jednak żadnej instrukcji, a klocki co chwilę zmieniają kształt, bo „biznes zmienił wymagania”. Rozwiązywanie zagadek w IT to projektowanie takich systemów, które przetrwają te zmiany.

Jak przełączyć starą sieć na nową, by biznes nie zauważył zmian?

Jak sprawić, by system obsłużył 100 użytkowników tak samo sprawnie jak 100 000?

Dlaczego pani Halinka z kadr nie może drukować, skoro 50 innych osób w biurze nie ma tego problemu?

Dlaczego nasze systemy bezpieczeństwa wpadają w panikę, kiedy odpalamy nasz nowy mega drogi program księgowy? No przecież dostawca ma wszystkie certyfikaty ISO, NIS, RODO i co tylko sobie jeszcze zażyczymy.

Tak na marginesie to miałem dokładnie taki przypadek w pracy. Ogromny dostawca oprogramowania finansowego, wszystkie certyfikaty i audyty przechodził śpiewająco. I co się okazało? Okazało się, że logowanie wymaga jedynie odgadnięcia przewidywalnego tokena. Token przesyłany był otwartym tekstem (nie przez HTTPS czy TLS), nie był nawet w zaszyfrowanej formie (jakimś SHA-256 czy czymkolwiek). Zwykły tekst. Odgadnięcie kolejnego tokena dawało dostęp do danych finansowych wielu dużych firm, które ten software obsługiwał. Bug zgłosiłem, ale czy go załatali, tego nie wiem. Mam nadzieję, że tak.


3. "It's Not a Bug" – moment oświecenia

Największe zagadki w IT to te, w których system działa, choć albo nie powinien, albo powinien działać inaczej

Szukanie przyczyny błędu (debugowanie) to najczystsza forma pracy śledczej. Analizujesz logi, sprawdzasz ślady, stawiasz hipotezy i je obalasz. Testujesz inne rozwiązania. A kiedy w końcu znajdziesz przyczynę – to uczucie „AHA!” jest lepsze niż jakikolwiek napisany skrypt.


4. Komunikacja, czyli tłumaczenie z "ludzkiego" na "komputerowy"

Najtrudniejszą zagadką w IT jest często... zrozumienie drugiego człowieka. Przekłucie problemu, który użytkownik opisuje jako “komputer mi nie działa”, na zestaw informacji, który pozwoli na diagnozę to sztuka sama w sobie.. Musisz być tłumaczem, psychologiem i strategiem w jednym. Musisz zrozumieć, że ktoś może nie rozumieć. To bywa bardzo trudne.


Podsumowanie:

Jeśli szukasz pracy, w której będziesz tylko "przepisywać" polecenia, IT Cię rozczaruje. Jeśli natomiast kochasz ten moment, gdy po długim główkowaniu wszystkie elementy układanki wskakują na swoje miejsce, rozumiesz potrzeby użytkowników i to, że często są oni nietechniczni – witaj w domu. Tutaj każda linijka kodu, każdy kabelek i każde kliknięcie to rozwiązanie małej bitwy intelektualnej.

 
 
 

Komentarze

Oceniono na 0 z 5 gwiazdek.
Nie ma jeszcze ocen

Oceń
bottom of page