1. Zrozumieć użytkownika
Programy pisane są zwykle na czyjeś zlecenie. Należy poznać wymagania, które stawia nam zamawiający, ale przede wszystkim trzeba zrozumieć jego punkt widzenia. Do czego posłuży mu program? Co ułatwi jego użytkowanie? Jakie mają być rezultaty? Ze względu na to, że zamawiający i programiści nie są w bezpośrednim kontakcie ze sobą, czasami ciężko jest zrozumieć pracownikom, szczególnie nowym, czego dokładnie wymaga przyszły użytkownik. Powstał specjalny system komunikacji – Agile/Scrum, który ułatwia zespołom programistów poruszanie się w pewnych ramach postępowania, jednak dla nowych pracowników wyzwaniem mogą być zmieniające się w trakcie realizacji potrzeby użytkowników i umiejętność wyważenia potrzeb i możliwości w realizacjach.
2. Znaleźć łatwe rozwiązania trudnych kwestii
Zamawiający nie musi mieć żadnej wiedzy w dziedzinie IT i często jej nie ma. Prosząc o wykonanie dla niego jakiegoś produktu widzi, jaki powinien być jego efekt końcowy, ale nie wie, jakimi metodami i rozwiązaniami do niego dotrzeć, co będzie pomiędzy początkiem a końcem drogi tworzenia oprogramowania.
- Jeżeli nie jesteś pewien, co zleceniodawca miał na myśli, zapytaj osób, które mają z nim bezpośredni kontakt. Może to oszczędzić wielu kłopotów i poprawek w późniejszym etapie. To przecież dla konkretnych ludzi jest tworzony program i warto zapoznać się z ich opinią.
- Niektóre firmy, jak np. Apple wypuszczają na rynek wersje próbne swoich produktów, co daje im wiedzę na temat ich jakości. Ocena przyszłych użytkowników ma na celu poprawienie ewentualnych błędów, czyli ulepszenie ostatecznego produktu. Warto więc testować to, co zostało przez nas stworzone i oceniać funkcjonalność.
3. Naprawa błędów
Podczas pisania kodu błędy w jego zapisie są normalne i nie ma znaczenia, czy twórcą jest doświadczony programista, czy nowy pracownik w branży. Jednak czasami ilość wykrytych przez kontrolę jakości błędów i żmudna praca przy ich naprawianiu może być przytłaczająca. Trzeba przecież pracę wielu godzin przejrzeć i usprawnić funkcjonowanie programu. Może to powodować zniechęcenie do pracy i wizję wiecznych opóźnień z powodu poprawek. Im większe doświadczenie i stykanie się z poszczególnymi błędami, tym mniej takich wpadek w przyszłości. Należy pamiętać, że błędy da się poprawić, jednak trzeba do tego cierpliwości i samozaparcia. Działając na własną rękę czasami wystarczy odtworzyć błąd i rozwiązanie samo przychodzi do głowy. W innych przypadkach, gdy żaden pomysł nie przychodzi do głowy, warto poprosić o pomoc kogoś, kto świeżym okiem zerknie na całość i pomoże w rozwiązaniu problemu.
4. Technologia – wróg i sprzymierzeniec
Każda osoba, która wiąże swoją przyszłość z programowaniem z pewnością oczarowana jest wciąż rozwijającą się technologią. To jednak sprawia, że programista wciąż musi być na bieżąco i ciągle się szkolić. Co może sprawiać największe kłopoty?
- dezaktualizacja bibliotek, frameworków i narzędzi
- konieczność poświęcenia czasu na naukę, korzystania z nowych, poprawionych wersji programów
- częstotliwość i czas aktualizacji.
5. Nawiązywanie relacji
Praca nad wspólnym projektem, kiedy każdy pisze swój kod, który później wymagać będzie scalenia, może budzić trudności. Szczególnie, jeśli nałożony jest rygor czasowy, panuje nerwowa atmosfera, a ty dopiero wdrażasz się na nowe miejsce pracy. Spróbuj zbudować relacje z innymi pracownikami i nawiązać nić porozumienia. Pomoże to budować przyjacielską atmosferę i łatwiej będzie zapytać o coś lub poprosić o pomoc. Komunikacja z innymi członkami załogi będzie niezbędna, żeby dogadać szczegóły projektu i szybciej scalić rozdrobnioną na kilka osób pracę nad projektem. Pozornie może się wydawać, że fach informatyka jest idealny dla osoby nieśmiałej i zamkniętej w sobie, jednak taka osoba będzie miała utrudnione zadanie, gdy przyjdzie jej pracować w grupie. Szczególnie, kiedy zespół zna się od lat, ma swoje zwyczaje i zasady. Praca w zespole na pewno będzie wyzwaniem, ale przy odrobinie wysiłku nad własnym charakterem można dojść do porozumienia.
6. Wyznaczanie czasu
Rozpoczynając pracę trudność może sprawić oszacowanie czasu, w jakim jest się w stanie ukończyć projekt, a stresującym bywa fakt, że przy źle opracowanym harmonogramie może ucierpieć cały zespół. Czasami wyznaczony czas jest niezależny od ciebie i pomimo starań nie jesteś w stanie wyrobić się z zadaniami. Takie sytuacje się powtarzają, a kierownik patrzy na ciebie coraz mniej przychylnym okiem. Jak poradzić sobie z szacowaniem czasu potrzebnym na projekt? Przyjmij taktykę, która będzie mniejszymi kroczkami prowadzić cię do celu. Rozbij projekt na pomniejsze etapy i na każdy z nich przypisz określoną ilość czasu. Pamiętaj, że zawsze mogą pojawić się jakieś zakłócenia. Jeżeli wiesz mniej więcej, ile czasu zajmie ci konkretne zadanie, to dołóż sobie kilka zapasowych minut, by bez stresu je ukończyć.
7. Zdrowie
Praca programisty to długie godziny spędzane za biurkiem. Goniące cię terminy mogą spowodować, że przestaniesz przywiązywać wagę do odczuć ze strony ciała, by skupić się na pracy. A to może odbić się na zdrowiu: drętwienie karku lub nóg, ból ze strony pleców, otyłość. Monotonna praca przed komputerem może spowodować obniżenie nastroju lub szybsze męczenie się. Przyjmij dla własnego dobra strategię dbania o siebie, by nie spowodować we własnym ciele zgubnych konsekwencji spędzania czasu w jednym miejscu:
- pamiętaj, by przez dłuższy czas nie pozostawać w jednej pozycji, staraj się wstawać, chodzić, zmieniać sposób siedzenia, żeby pobudzić krążenie w ciele
- korzystaj z przerw w ten sposób, by zażyć trochę ruchu, odpoczywaj ruszając się, chociażby idąc na drugie śniadanie lub po filiżankę kawy
- staraj się być aktywny poza pracą, nawet jeśli sport to nie twój konik, poświęć trochę czasu na spacer, jogging lub po prostu jedź do pracy rowerem.
8. Bezpieczeństwo
Dobrze funkcjonujący kod to jedno, ale trzeba mieć na uwadze, że często dysponujemy danymi, które są prywatne lub po prostu nie powinny przedostać się w niepowołane ręce. Hakerzy czyhają na takie potknięcia, a błędy mogą popełniać osoby o mniejszym doświadczeniu, które skupiają się głównie na jakości swojej pracy, a mniej na bezpieczeństwie. Skup się na użyciu sparametryzowanych zapytań w języku programowania, które utrudnią złodziejom użycie iniekcji SQL. Łatwym sposobem i dobrym zwyczajem będzie wylogowywanie się za każdym razem po zakończonej pracy z używanego oprogramowania.
9. Przejęcie nadzoru nad kodem kolegi
Jednym z najtrudniejszych zadań, które stoją przed programistami jest konieczność kontynuowania pracy, którą zaczął ktoś inny. Zrozumienie sposobu pisania kodu, który rozpoczął kolega, może powodować problemy. Sytuacją komfortową byłaby możliwość zadania pytań, które mogą pojawiać się w głowie w trakcie pracy. Co jednak, jeżeli osoba poprzednio pracująca nad kodem wyjechała na urlop, nie ma dla nas czasu lub po prostu już nie pracuje w firmie? Najwięcej pracy będzie na początku. Trzeba zrozumieć styl pisania poprzednika i wówczas kontynuować lub przekształcić kolejne wiersze już pod własną modłę. Na pewno zajmie to trochę czasu, jednak uświadomienie sobie, że teraz to jest twój kod, pozwoli ci szybciej przystosować się do sytuacji i zacząć pracę na pełnych obrotach.
10. Przypadek czy zamiar?
Wydawać się może, że przystępując do zadania w głowie masz świetną wizualizację tego, co chcesz osiągnąć. Może się jednak zdarzyć tak, że pomimo dobrego pomysłu kierunek, w którym idziesz, nie pokrywa się z tym, co chcesz osiągnąć. To marnotrawstwo czasu i opóźnienie w harmonogramie projektu. Nie daj się ponosić fantazji, ale stwórz plan i trzymaj się jego ram, dzięki czemu szybciej i skuteczniej dojdziesz do celu.
- Zapisz sobie funkcje, w które ma być wyposażony program, który tworzysz. Dzięki temu łatwiej będzie dojść do konkretnych celów bez błądzenia i licznych poprawek
- Rozrysuj poszczególne części projektowanego programu. Zaczynaj od ogółu i idź do szczegółu, tworząc temat główny i jego podtematy
- Produkt końcowy z pewnością ma rozwiązywać jakieś problemy. Przemyśl, jakimi ścieżkami można podążyć, by uzyskać określony efekt. Spróbuj postawić się na miejscu użytkownika.
Podsumowanie
Praca programisty jest dość specyficzna i może nastręczać przynajmniej na początku sporo stresu. Wymaga też ciągłej aktualizacji wiedzy. Napięcie związane z wymogami stawianymi przez pracodawcę i wyzwania, które czekają pracownika na co dzień, to jedno. Stres powoduje też wejście do zespołu ludzi, którzy znają się już dłuższy czas, mają swoje przyzwyczajenia i zasady. Należy jednak pamiętać, że każdy był kiedyś nowy w swoim miejscu pracy, a spełnianie się w wymarzonym zawodzie jest warte kilku chwil niedogodności.
To wszystkie na dzisiaj. Jeżeli taki artykuł Ci się spodobał, to koniecznie dołącz do mojej społeczności – darmowe zapisy, gdzie będziesz również miał dostęp do dodatkowych materiałów i przede wszystkim bonusów. Do zobaczenia w kolejnym artykule.
Poprzedni artykuł - 10 Wskazówek Przed Rozmową Kwalifikacyjną Dla Programisty