zany np. z jakością kodu jest konieczny, by dostarczyć funkcję systemu odpowiednio szybko. Ważne tylko, by nie wpaść w spiralę zadłużenia finansowo prowadzi to do bankructwa, a w projektach informatycz- nych do sytuacji, w której dodanie kolejnego ficzera lub poprawa błędu są tak kosztowne, że nieopłacalne i system przestaje być rozwijalny.
KOMUNIKACJA TO PODSTAWA Możliwe, że znasz jeden z żartów na temat przesadnej precyzji ludzi IT i traktowania przez nich wszystkiego bardzo dosłownie. Cóż, to, co może przeszkadzać w codziennym życiu i komunikacji, jest wielką za- letą w pracy: komputer zrobi dokładnie to, do czego zostanie poin- struowany. Nie domyśli się niczego z kontekstu, nie dopyta, niczego nie założy. Dlatego ważne jest, by jako programistka czy programista przestawić się na precyzyjny sposób myślenia i brać pod uwagę też pesymistyczne scenariusze i przypadki brzegowe. Umiejętność pre- cyzyjnej komunikacji, dobrego posługiwania się językiem i przywiązy- wania wagi do znaczenia słów to chyba jedna z najmniej oczywistych cech przypisywanych ludziom z IT, a moim zdaniem, bardzo istotna dla bycia dobrym specjalistą (specjalistką).
PLANOWANIE PRACY Na zakończenie jedna z bardziej wstydliwych cech charakteryzują- cych ludzi z IT delikatnie ujmując, nie jesteśmy dobrzy w szacowaniu czasochłonności przedsięwzięć! Notorycznie projekty informatyczne wymykają się deadline om, zadania przeciągają, a ficzery działają tylko na lokalnym środowisku zamiast szaleć na produkcji. Jedyną radą, jaką na to znam, jest ustalanie sobie wewnętrznych terminów z odpowied- nim marginesem, dzięki czemu nawet kiedy się nie wyrobimy, wpływ na całość przedsięwzięcia jest mniejszy.
KAŻDY ZNAJDZIE COŚ DLA SIEBIE IT potrzebuje więcej różnorodności! Jeśli zastanawiasz się czy się prze- branżowić, ale boisz się, że sobie nie poradzisz, nie nadajesz się, nie dogadasz się z Tymi Dziwnymi Ludźmi nie zastanawiaj się dłużej, a zamiast tego przekonaj się próbując! Praca programisty (programist- ki) to nie tylko znajomość algorytmów i języków programowania, to często przede wszystkim próba zrozumienia domeny biznesowej, pro- blemów, jakie mają ludzie i wymyślenie, jak ułatwić im życie (a że nie zawsze wychodzi, to już zupełnie inna historia ). Jest wiele ścieżek kariery w ramach IT, można wybierać między projektowaniem, pro- gramowaniem, testowaniem, prowadzeniem projektu czy zespołu, a najważniejsze, że można między tymi ścieżkami przechodzić. Myślę, że jeśli tylko chcesz, odnajdziesz w IT coś dla siebie! |
i trzymania kciuków, by zadziałały. Cóż, kto nigdy nie był w desperacji, niech pierwszy rzuci kamieniem! Portal Stack Overflow wyprodukował nawet specjalną klawiaturę z zaledwie trzema przyciskami: Ctrl/Cmd, C i V, które nawiązują do skrótu klawiszowego kopiuj wklej . Szkoda, że nie ma równie kompleksowego zbioru rozwiązań i porad dotyczących codzienności, które można przenieść i wykorzystać bez większych mo- dyfikacji w swoim życiu ze sporą szansą, że zadziałają.
GUMOWA KACZKA PRAWDĘ POWIE Oczywiście programiści i programistki stykają się z wieloma problema- mi, których nie da się rozwiązać przez użycie fragmentu kodu z Internetu. Zresztą, często, żeby zrozumieć, jakie pytanie zadać, trzeba najpierw do- ciec, w którym momencie wykonania programu coś idzie nie po naszej myśli. Proces analizowania kodu pod kątem znalezienia błędu nazywa się debugowaniem. Programista (programistka) decyduje, w których liniach kodu źródłowego się zatrzymać i zbadać bliżej stan programu przez ustawienie breakpointu. Dzięki temu można prześledzić krok po kroku zachowanie programu i wyłapać nieścisłości w pośrednich punk- tach. Czasami warto połączyć to z próbą wytłumaczenia na głos, za co dana linijka kodu jest odpowiedzialna. Istnieją nawet specjalne narzędzia wspomagające tę technikę gumowe kaczuszki cierpliwie towarzyszą- ce podczas długich godzin szukania błędu. Takie małe śledztwa uczą pokory, zwłaszcza gdy okaże się (a nierzadko tak jest!), że przyczyną była zwykła literówka. Jeśli zobaczysz gdzieś człowieka rozmawiającego z gu- mową zabawką, poślij trochę dobrej energii w jego stronę, najprawdo- podobniej bardzo jej potrzebuje!
ZAWSZE MOŻE BYĆ LEPIEJ Cechą wspólną dla wielu programistów i programistek jest chęć ciągłej poprawy i dążenie do doskonałości. Jedna z zasad, jakich powinien prze- strzegać programista, to parafraza dewizy skautów: kod po modyfika- cjach powinien być lepszy niż przed nimi . Zgodnie z teorią rozbitych okien (tak, to prawdziwa teoria!) to ważne, żeby zachować dyscyplinę i nie pozwalać sobie na odstępstwa. Z drugiej strony, programiści i pro- gramistki muszą też umiejętnie zaciągać dług. Koncepcja długu tech- nicznego została wprowadzona, żeby w sposób zrozumiały przedsta-
wić szanse i zagrożenia związane z korzystaniem ze skrótów. W idealnym świecie moglibyśmy sobie pozwolić na wszystko, czego potrzebujemy i sfinansować to na bieżąco korzystając
z dostępnych środków. Niestety, czasem do realizacji celu potrze- bujemy więcej zasobów niż to, czym dysponujemy wtedy może
opłacać się wzięcie kredytu. Owszem, sumarycznie koszt wzrośnie, ale za to zrealizu- jemy przedsięwzięcie szyb- ciej. Podobnie jest z sys- temami informatycznymi, czasem kompromis zwią-
19PRZEWODNIK PRACODAWCY 2022/2023 RYNEK PRACY