20
INTERESUJESZ SIĘ KOMPUTERAMI? DOBRZE PŁATNĄ GWARANTOWANĄ ZDOBĄDŹ PRACĘ. SPRAWDŹ, JAK ZOSTAĆ PROGRAMISTĄ! 6 OPISANYCH SPECJALNOŚCI s.13-18 PROGRAMISTA -WŁAŚCIWIE KTO TO TAKI? s.6 PORADY REKRUTERA s.8 INFORMATOR KARIERA PROGRAMISTY 2013 DLACZEGO WARTO ZOSTAĆ PROGRAMISTĄ? s.7

Kariera programisty

Embed Size (px)

DESCRIPTION

Publikacja charakteryzująca zawód programisty - czym warto się interesować? Z jakich technologii korzystać? Jakie są dostępne ścieżki kariery? Jakie firmy poszukują pracowników?

Citation preview

Page 1: Kariera programisty

INTERESUJESZ SIĘ KOMPUTERAMI?DOBRZE PŁATNĄGWARANTOWANĄZDOBĄDŹ PRACĘ.

SPRAWDŹ, JAK ZOSTAĆ PROGRAMISTĄ!

6OPISANYCH SPECJALNOŚCI

s.13-18

PROGRAMISTA -WŁAŚCIWIE KTO TO TAKI?s.6

PORADY REKRUTERAs.8

INFORMATOR KARIERA PROGRAMISTY 2013

DLACZEGO WARTO ZOSTAĆ PROGRAMISTĄ?s.7

Page 2: Kariera programisty

Finansowanie: Organizator:

Pierwszy taki kurs on-line, całkowicie za darmo!

Kurs programowania dla osób bez wykształcenia informatycznego

kuzniaprogramistow.pl

Page 3: Kariera programisty

Szukasz pracy? Chcesz się przekwalifi kować?

Ten informator jest właśnie dla Ciebie! Prezentujemy w nim, jakie możliwości stawia przed Tobą zawód programisty. Udowadniamy, że nie trzeba mieć wykształcenia informa-tycznego, żeby zostać przedstawicielem jednego z lepiej opłacanych zawodów w kraju. Pokazujemy od czego zacząć naukę programowania i podpowiadamy, którą ze specjalności programistycznych wybrać!

W informatorze znajdziesz między innymi opisy specjal-ności w najpopularniejszych językach programowania. Dzięki nim dowiesz się, jak rozpocząć naukę oraz poznasz cenne porady dotyczące danych technologii.

Programowanie może stać się dla Ciebie przygodą, a przede wszystkim gwarancją na ciekawą pracę. Mamy nadzieje, że publikacja będzie drogowskazem do rozpo-częcia nauki programowania i kariery w branży IT.

Zespół redakcyjny

Czytelniku!

SPIS TREŚCI

Programista bez dyplomu?

4Artykuł

Programista po fi lozofi i

5Artykuł

Programista - właściwie kto to taki?

6Artykuł

Dlaczego warto zostać programistą?

Artykuł

Od hobby do zawodu

8Wywiad

Porady rekrutera

9Wywiad

Sektor informatyczny w Polsce

Infografi ka

Przepis na programistę

12Artykuł

Programista baz danych

13Opis specjalności

Programista C/C++

14

Programista Java

15

Programista PHP

16

Wydawca:

Fundacja Rozwoju Branży Internetowej “Netcamp”, ul. Niemierzyńska 17a, 71-441 SzczecinISBN: 978-83-938372-0-5

Współfi nansowane ze środków Ministerstwa Administracji i Cyfryzacji.

Licencja:

Uznanie autorstwa-Użycie niekomercyjne. Na tych samych warunkach 3.0 Unported (CC BY-NC-SA 3.0)

10-11

7

Opis specjalności

Opis specjalności

Opis specjalności

Tester

17Opis specjalności

Webmaster

18Opis specjalności

Popularność języków programowania

19Infografi ka

Zespół redakcyjny

Redaktor naczelny: Sebastian Szczepański

Teksty i redakcja: Magdalena Krawczak

Opracowanie grafi czne i skład: Konrad Rul

Konsultacja merytoryczna: Robert Król

Kurs programowania dla osób bez wykształcenia informatycznego

3KARIERA PROGRAMISTY| SPIS TREŚCI

Page 4: Kariera programisty

Wielu programistów nie posiada wy-kształcenia informatycznego lub prze-kwalifi kowali się z zupełnie innych dziedzin. Nie brakuje nawet osób z wy-kształceniem humanistycznym, fi lozofów czy polonistów, którzy decydują się na naukę programowania. Kluczowym wy-mogiem wobec kandydata nie jest bo-wiem dyplom kierunku informatycznego, a posiadane umiejętności praktyczne, których można bez problemu nauczyć się samodzielnie, korzystając z ogromu materiałów dostępnych w Internecie i literatury.

Na początek wystarczy:

� dobra znajomość obsługi komputera,

� umiejętność logicznego i kreatywnego myślenia,

� chęć rozwoju.

Wielu pracodawców IT rekrutując pro-gramistów ocenia ich przede wszystkim pod kątem posiadanych umiejętności i znajomości technologii, a nie na pod-stawie dyplomu.

Liczy się także znajomość języka angielskiego na poziomie pozwalającym na komunikację i chęć dalszej nauki.

Dlatego też w CV przyszłego programi-sty większe znaczenie mają informacje o technologiach, które zna kandydat niż kolejne kroki jego wykształcenia. Na-tomiast podczas rozmowy kwalifi kacyj-

nej często daje się pracownikowi kilka prostych problemów programistycz-nych do rozwiązania. Innym sposobem sprawdzenia umiejętności są swoiste zadania domowe - rekrutowany dostaje do rozwiązania zadanie, które może wy-konać w domu wykorzystując dostępne

mu podręczniki, internetowe poradniki i fora. Ma to na celu sprawdzenie jego kreatywności i zdolności wyszukiwania rozwiązań - a jak wiadomo, do tego nie potrzeba dyplomu ukończenia studiów wyższych.

Dla pracodawcy IT dużo większą war-tość niż ukończone studia mają przy-kładowe projekty, stworzone hobby-stycznie proste aplikacje czy serwisy internetowe. Pochwalenie się kilkoma takimi projektami może być ważnym argumentem przekonującym do zatrud-nienia początkującego programisty. Nie-mniej szansę mają też osoby, którym nie

udało się jeszcze stworzyć swojego pro-gramistycznego portfolio. Osoba z pasją do programowania, która przekona pracodawcę, że pomimo posiadania dopiero podstawowych umiejętności ma silną motywację i chce się w tym kierunku rozwijać, może liczyć nie

tylko na zatrudnienie, ale i szkolenia czy kursy na koszt fi rmy. Niektóre, zazwyczaj duże korporacje mają nawet specjalne programy edukacyjne dla osób zaczynających pracę w zawodzie. Ponadto w fi rmach IT bardzo popularny jest mentoring, czyli przekazywanie wiedzy młodszym pracownikom przez doświadczonych w swojej dziedzinie ekspertów. Wpływ na zatrudnienie ma także zaangażowanie w nieformalne grupy użytkowników danej technolo-gii i projekty społecznościowe, dzięki którym programiści wymieniają się swo-imi doświadczeniami i uczą nawzajem.Brak dyplomu ukończenia studiów lub wykształcenie w zupełnie innym kierun-ku nie jest więc przeszkodą w rozpoczę-ciu kariery programisty. Chęć rozwoju oraz konsekwentna praca to pierwsze kroki, by zostać programistą.

Niektórzy programiści, mimo braku wykształcenia i dyplomu ukończenia studiów wyższych z czasem stają się wręcz wybitnymi ekspertami w swojej dziedzinie. Pasja i motywacja do tego co robią, czyni ich niejednokrotnie lepszymi pracownikami od tych, którzy kończą studia i legitymują się różnymi certyfi katami zawodowymi. ■ 

W 2013 roku świat obiegła historia amerykańskiego bezdomnego imieniem Leo, który od mijającego go co dzień przechodnia zamiast jałmużny przyjął kilka podręczników programowania i starego laptopa. Potrzebował jedynie czterech tygodni, by nauczyć się programować od zera. Zaczął tworzyć proste oprogramowanie. Po kilku miesiącach ma już szansę na pracę za 100 tysięcy dolarów rocznie. Podobne historie dzieją się nie tylko za oceanem. Coraz więcej programistów także w Polsce to osoby, które fachu uczyły się same, a nie na studiach kierunkowych.

PROGRAMISTA BEZ DYPLOMU?

SAMOUK? TO MOZLIWE!

Równie ważna jest pasja i entu-zjazm do tworzenia programowa-nia, motywacja do ciągłego ucze-nia się i rozwoju, udowodniona umiejętność pracy w zespole.

Programista to taki zawód, w którym trzeba się cały czas rozwijać i poszerzać swoją wiedzę. Jedyne co jest potrzebne, żeby programować to chęci.

Jacek Szydłowski, programista-samouk

KARIERA PROGRAMISTY| ARTYKUŁ4

Page 5: Kariera programisty

PROGRAMISTA PO FILOZOFIIPrzypadki zatrudnienia na stanowisko programisty pracowników z wykształceniem humanistycznym, filozofów czy polonistów nie są już niczym wyjątkowym. Od dyplomu ukończenia kierunku informatycznego ważniejsza jest pasja, zrealizowane, choćby hobbystycznie projekty, przebyte kursy oraz determinacja do rozwoju i nauki. Właśnie dla osób z takim cechami powstała Kuźnia Programistów.

kurs programowania dla osób bez wykształcenia informatycznego

Kurs kierujemy do osób, które dotychczas nie miały styczności z programowaniem. Naszym celem jest przygotowanie ich do pracy programisty – mówi Wojciech Gajdziński, twórca programu. 

Na kursie nauka obejmuje zaprezentowane w przystępny sposób podstawy programowania w języku C++. Każda oso-ba po jego ukończeniu będzie w stanie sama nauczyć się kolejnego, dowolnego języka programowania. - Większość materiałów dostępnych w Internecie używa słownictwa, którego początkujący nie rozumieją i to jest dla nich głów-

na bariera w nauce. W Kuźni ten sam materiał tłumaczony jest w sposób tak prosty, jak to tylko możliwe. Jeśli do tego dodamy zadania, których poziom trudności dopasowany jest do poszczególnych lekcji oraz testy sprawdzające ich zrozumienie– otrzymujemy kurs interaktywny, za pomocą którego naprawdę jesteś w stanie nauczyć się programo-wać – dodaje Gajdziński.

Kuźnia  Programistów to odpowiedź na sytuację na rynku pracy IT, na którym brakuje pracowników.

Gdy pracowałem jako kierownik zespołu programistów, jednym z moich zadań była rekrutacja nowych osób. Szu-kaliśmy zarówno osób doświadczonych, jak i studentów bez doświadczenia komercyjnego. Okazało się, że pro-gramistów po prostu brakuje, za mało jest też absolwen-tów kierunków informatycznych – opowiada twórca Kuźni. Wiele firm z sektora IT przestało zwracać uwagę na wy-kształcenie kandydatów. Teraz liczą się przede wszystkim kompetencje. Sporo osób, które pracują w branży IT nie ma wykształcenia informatycznego, a nawet wykształcenia technicznego. Dlatego też powstał pomysł, aby pomóc osobom spoza branży IT zdobyć jeden z lepiej opłacanych zawodów w Polsce.

-Spróbuj. Zainwestuj swój czas w naukę programowania i przekonaj się, że programowanie nie tylko sprawia fraj-dę, ale i jest szasną na naprawdę dobrą pracę – zachęca Gajdziński.

Twórca idei Kuźni programistów – kursu programowania dla osób bez wykształcenia technicznego, informatycznego. Posia-da ponad dziesięcioletnie doświadczenie w branży IT, zarówno na stanowiskach technicznych ( jako programista oraz architekt oprogramowania) oraz stanowiskach kierowniczych (menedżer zespołu programistów realizujących międzynarodowe projekty). Do jego obowiązków stanowiskowych należała również rekrutacja programistów - przez cztery lata brał udział w kilkudziesięciu rozmowach kwalifikacyjnych, co dało mu wiedzę o wymaganiach stawianych początkującym programistom. Dzięki wieloletniemu doświadczeniu rozumie, jakie wymagania stawiane są przed kandydatami na stanowisko młodszego programisty oraz jakie braki posiadają kandydaci.

Wojciech Gajdziński

Życiowy przykład z bankomatem, inne „żywe” dowody wykorzystania oprogramowania i rzeczowe wprowadzenie – to w Kuźni podobało mi się najbardziej.

Ewa Galant, uczestniczka kursu w Kuźni Programistów

Pierwsze kroki w programowaniu i ćwiczenia zostały zaprezentowane w sposób zrozumiały nawet dla zupełnie początkujących.

Aleksandra Lewandowska, uczestniczka kursu w Kuźni Programistów

5KARIERA PROGRAMISTY| ARTYKUŁ

Page 6: Kariera programisty

Programista to jedna z profesji informatycznych.

Jego praca polega na tworzeniu i wdrą-żaniu do użytku programów kompute-rowych - czyli sprawianiu, by serwisy internetowe lub urządzenia wykorzy-stujące oprogramowanie wykonywały poprawnie pewne funkcje. Dla przykła-du - to dzięki oprogramowaniu wyszu-kiwarka Google, do której wpiszemy hasło, kieruje nas do stron najbardziej odpowiadających naszemu hasłu. Dzięki oprogramowaniu możemy też korzystać w Internecie z naszych kont bankowych, a w telefonie wpisywać przypomnienia do kalendarza. Obecnie właściwie każdy sprzęt domowy posiada wbudowane procesory, w których działa jakieś opro-gramowanie.

Przydatna może być też znajomość, choćby podstawowa, języka angielskie-go. Reszty może się nauczyć właściwie każdy. Przygotowanie do zawodu pro-gramisty wymaga przede wszystkim opanowania zasad wybranego języka rozumianego przez komputer (zwa-nego też „językiem programowania”) i narzędzi, które wykorzystuje się przy tworzeniu programów.  Programowanie polega na zapisywaniu odpowiednich

komend, które spowodują, że komputer wykona to, co chcemy - np. coś obli-czy, stworzy, zapisze. Każde polecenie zapisane w języku programowania daje pewien rezultat. Jest to najbardziej wi-doczne przy programowaniu stron inter-netowych - każda komenda powoduje zmiany na stronie www, które można zobaczyć w przeglądarce internetowej. Do najprostszych zadań programistycz-nych, od których warto zacząć jest też tworzenie prostych kalkulatorów. Każdy typ oprogramowania, który powstanie, może być rozwijany i modyfi kowany - może być poszerzany o nowe funkcje lub integrowany  z innym oprogramo-waniem.

To jakie programy, zwane inaczej apli-kacjami, tworzy programista, decyduje o jego stanowisku w zawodzie. Jest ich bardzo wiele. Najpopularniejsze obecnie jest stanowisko programisty aplikacji internetowych, który tworzy, utrzymuje i rozbudowuje serwisy in-ternetowe. Programista baz danych

projektuje i zarządza zbiorami danych dla konkretnych dziedzin (np. płace, kadry). Programista aplikacyjny tworzy programy o różnym, specyfi cznym zasto-sowaniu (edytory tekstów, programy gra-fi czne). Programista systemów łączności komputerowej tworzy oprogramowanie wykorzystywane w transmisji danych. Umiejętności programistyczne wykorzy-stuje też tester aplikacji, sprawdzający poprawność działania programu. Na którą z licznych specjalizacji zdecyduje się przyszły programista, zależy od jego predyspozycji i zainteresowań.

Co najważniejsze, programista to za-wód, który przynosi ogrom satysfakcji z tworzenia czegoś nowego. Szczegól-nie duże zadowolenie daje osobom, które lubią szybko widzieć rezultaty swojej pracy - wystarczy kilka linii kodu, by program zaczął działać lub pojawiły się zmiany na stronie. Dla wielu progra-mowanie stało się wręcz życiową pasją i poza tym, że jest źródłem utrzymania, daje wiele zabawy. ■

W powszechnej opinii między informatykiem i programistą często stawia się znak równości. Nie jest to do końca prawda, gdyż nie każdy informatyk programuje. A i nie każdy programista musi posiadać wykształcenie informatyczne. Kim zatem jest programista i na czym polega jego praca?

PROGRAMISTA -WŁAŚCIWIE KTO TO TAKI?

W początkowej fazie kariery zawodowej wystarczy dobra znajo-mość obsługi komputera, Internetu, zamiłowanie do technologii, kreatywność i umiejętność anali-tycznego myślenia.

KARIERA PROGRAMISTY| ARTYKUŁ6

Page 7: Kariera programisty

By wszystkie nowoczesne urządzenia mogły działać poprawnie i spełniać swoje funkcje, potrzebne jest właściwe oprogramowanie. Dlatego rozwój całej gospodarki powoduje stale rosnące zapotrzebowanie na osoby tworzą-ce oprogramowanie - czyli programi-stów, zwanych też często koderami. Kryzys na rynku pracy, który dotknął już większość branż, informatyków, w szczególności właśnie programistów z całą pewnością nie dotyczy. Aby to sprawdzić, wystarczy wpisać do wy-szukiwarki hasło „praca programista”. Już po kilku sekundach pojawi się co najmniej kilka tysięcy ogłoszeń o pracy z całego kraju. Według informacji Mini-sterstwa Nauki i Szkolnictwa Wyższego, programiści zajmują czołowe miejsce wśród najbardziej pożądanych profesji.

Defi cyt programistów rośnie

Pracodawcy zgodnie podkreślają - defi -cyt programistów stale się zwiększa i na rynku brakuje kandydatów do pracy. Rosnące zapotrzebowanie na programi-stów można zaobserwować już od kilku lat, zarówno w Polsce, jak i zagranicą, w Niemczech, Wielkiej Brytanii, czy USA.

Prognozy pokazują też, że zapotrzebo-wanie na ten zawód przez najbliższe

lata będzie tylko rosnąć.

Atrakcyjne wynagrodzenie i nie tylko

Przedstawiciele zawodu programi-sty w ofertach pracy mogą wręcz przebierać i spodziewać się nie-zwykle atrakcyjnych wynagrodzeń.

Początkujący koder (w zależności od re-gionu i stanowiska) może zarobić około:

Należy dodać, że nowo zatrudnieni w IT otrzymują wyższe wynagrodzenie niż początkujący pracownicy innych ga-łęzi gospodarki. Młody programista na podwyżkę długo nie musi czekać. Z nabywanym doświadczeniem, umie-jętnościami, a także specjalizacją w kon-kretnych technologiach wynagrodzenia są coraz wyższe.

Według danych serwisu Wynagrodzenia.pl wypłata doświadczonego programisty mieści się w przedziale:

miesięcznie, a zdarzają się węższe i bardziej poszukiwane specjalizacje programistów, dla których stawki się-gają nawet kilkunastu tysięcy złotych. Najbardziej chłonne rynki pracy to Ma-zowsze - w szczególności Warszawa, Dolny Śląsk oraz Małopolska. Tam też wynagrodzenia są najwyższe. Praco-dawcy walczą o programistów nie tylko

kwotami na koncie. Bardzo często fi rmy zapewniają pracownikom i ich rodzinom prywatną opiekę medyczną, zajęcia sportowe, wyjazdy i dodatkowe szko-lenia lub nawet refundują koszt studiów niestacjonarnych, dbając jednocześnie o dobrą atmosferę w fi rmie i relaks pra-cowników w ciągu dnia.

Rynek pracy programistów to niezwykle rozwojowa dziedzina, w której warto próbować swoich sił. Rosnąca ilość ofert pracy, wysokie zarobki i dodat-kowe benefi ty to główne argumenty, by zostać programistą! ■

XXI wiek to stulecie Internetu i rozwijających się w obłędnym tempie technologii. Dziedziną, która dla zwykłych użytkowników tychże technologii pozostaje w tle jest informatyka (IT). To dzięki informatyce działa większość urządzeń – przez dziecięce zabawki, telefony i telewizory, po pralki i lodówki czy nowoczesne samochody.

DLACZEGO WARTO ZOSTAĆ PROGRAMISTĄ?

1800-3400 zł

4000-8000 zł66%

Według danych Antal International 66% pra-codawców IT w kraju w 2013 roku planuje lub już zwiększa zatrud-nienie.

7KARIERA PROGRAMISTY| ARTYKUŁ

Page 8: Kariera programisty

wywiad z maciejem merkułowskim

OD HOBBY DO ZAWODU

Kim byłeś wcześniej z zawodu?

Byłem archeologiem i dziennikarzem.

Czy wcześniejsza profesja pomogła Ci jakoś w zawodzie programisty?

Pośrednio tak. Generalnie rzecz ujmując - coś czego się na-uczysz, nigdy nie zostanie Ci odebrane. Sądzę, że z wcześniej-szej pracy najbardziej wykorzystałem umiejętność współpracy i komunikacji z innymi ludźmi. Zarówno w dziennikarstwie, jak i w pracy programisty umiejętności interpersonalne okazały się równie ważne.

Dlaczego zdecydowałeś się zostać programistą?

Komputery były zawsze obecne w moim życiu, w ten czy inny sposób. W liceum trochę się uczyłem programowania, co później - z różnych względów - zarzuciłem. Ale to był kompletnie inny poziom, zabawa. Teraz mam do czynienia z programowaniem, nazwijmy to umownie, z pierwszej ligi. Dlaczego ten zawód? Bo jest elitarny. Bo daje pieniądze i otwiera mnóstwo drzwi. Bo mnie bawi.

Co najbardziej lubisz w swojej pracy?

Najbardziej doceniam chyba fakt, że codziennie uczę się czegoś nowego. Każda kolejna godzina spędzona w pracy, niezależnie czy przy wspólnej kawie z kolegami, czy przy wpatrywaniu się w ekran, zbliża mnie krok po kroku do bycia, jak to się u nas mówi „ogarniaczem”, „kozakiem”. A to dla mnie bardzo ważne, bo po co robić coś na pół gwizdka? Jak lubisz coś robić, to rób to jak najlepiej.

Czy ktoś Ci pomagał w uczeniu się programowania?

Oczywiście, głównie koledzy z pracy; mało tego - nadal mi pomagają. Jeżeli trzeba z kimś pogadać o problemach do rozwiązania, nawet nie dotyczących bezpośrednio opro-gramowania, nad którym pracujemy, nigdy nie ma z tym problemu. Często razem szukamy rozwiązań, a to bardzo pomaga w rozwoju.

Czy nauka programowania była dla Ciebie trudna?

Nauka nie jest trudna z zasady, jest po prostu procesem, na który trzeba poświęcić życie. To proces, który cały czas trwa. Jak już mówiłem uczę się codziennie. To trochę jak medycyna, codziennie coś nowego, interesującego i zaska-kującego. Mam silną motywację – chcę być dobry w tym, co robię, więc się rozwijam, tym bardziej, że programowanie daje mi tak dużo satysfakcji. Co robię, jeśli pojawiają się jakieś problemy? Jestem programistą, a jak wiadomo programiści są po temu stworzeni, żeby problemy rozwiązywać.

Jaki zawód wykonywałeś, zanim zostałeś programistą?

Z wykształcenia byłem elektrykiem, ale nigdy w zawo-dzie nie pracowałem. Za to długi czas byłem księgowym - również bez wykształcenia. W tej pracy męczył mnie jednak zawsze zasadniczy brak kreatywności - same schematy, wzory, formularze. Na szczęście zawsze sta-rałem się ułatwić sobie i innym życie, wymyślając różne skrypty czy małe aplikacje - to właśnie praca księgowego nakierowała mnie na rozpoczęcie zawodowej przygody z programowaniem.

Zatem praca księgowego pomogła Ci w rozpoczęciu kariery programisty…

Gdy tylko szef zorientował się, że w excelu potrafię coś więcej niż narysować tabelkę, a i sprzęt komputerowy nie jest mi obcy, zaczął prosić o pomoc przy sprzęcie, różnych raportach, zestawieniach itp. W tym czasie wykonałem wiele naprawdę dużych skryptów w Visual Basicu i bardzo dużo się przy tym nauczyłem. Pracując w księgowości miałem wy-kształcenie zawodowe. Ponieważ miałem wolne weekendy, postanowiłem skończyć w trybie zaocznym szkołę średnią. Zdałem maturę i poszedłem na studia, które pozwoliły mi połączyć pracę z pasją. Zawsze interesowały mnie komputery. Jako dziecko najbardziej interesowały mnie gry. Właśnie to zainteresowanie pchnęło mnie w kierunku programowania - od kiedy pamiętam chciałem tworzyć gry. Wymyślałem planszówki, karcianki, bitewniaki z lego... no i oczywiście w końcu chciałem napisać własną grę komputerową.

Co w pracy programisty daje Ci najwięcej satysfakcji?

Najbardziej lubię myślenie, rozwiązywanie problemów i kreatywność.

Czy ktoś pomagał Ci w nauce programowania?

Nikt nigdy mi nie pomagał, nie licząc autorów książek czy innych pomocy naukowych, z których korzystałem. Zawsze mogłem liczyć za to na wsparcie i wyrozumiałość żony, która niezliczone razy musiała wysłuchiwać moich pomysłów na aplikacje i programistycznego „gadania”. Dzięki temu, że mówiłem i mówię o nich głośno, zanim zacznę pisać, często wychwytuję błędy już zawczasu.

Czy nauka programowania była dla Ciebie trudna i ile czasu Ci zajęła?

Dla mnie ciężka jest tylko nauka tego, czego nie chcę się uczyć. Kwestie programowania i ogólnie pojętej informatyki zawsze mnie bardzo interesowały, więc i wiedza sama do głowy zawsze wchodziła.

wywiad z jackiem szydłowskim

KARIERA PROGRAMISTY| WYWIAD8

Page 9: Kariera programisty

Na co szczególnie zwracają uwagę rekruterzy w branży IT?

Niezależnie od stanowiska, na które prowa-dzona jest rekrutacja, pod uwagę brane są przede wszystkim umiejętności i nastawienie na poszukiwanie rozwiązań problemów. Ważne jest też doświadczenie, niekoniecznie zdobyte w pracy. Może być ono udokumentowane pro-jektami, które kandydat wykonał w czasie nauki. Oczywiście ważne jest również wykształcenie i certyfikaty, ale nie są to wymogi konieczne, by dostać pracę w branży IT.

Czy spotkałaś się z programistami po innych studiach niż informatyczne lub w ogóle bez wykształcenia wyższego?

Tak - jak najbardziej. Ze względu na szeroką per-spektywę, często to właśnie oni szybciej awansują, zakładają własne firmy, czy tworzą nowe produkty na rynku. Bo przecież w końcu IT to branża, która w założeniu nie istnieje sama dla siebie, tylko ma służyć ułatwianiu życia odbiorcom prywatnym, jak i pozostałym branżom przemysłu.

Jakie są wg ciebie kluczowe kompetencje w zawodzie programisty?

Umiejętność „kombinowania” - w znaczeniu bycia kre-atywnym w środowisku ograniczonym przez platformę czy język programowania, zakres i termin realizacji projektu oraz wymagania jakościowe i wydajnościo-we. To także umiejętność komunikacji z pozostałymi członkami zespołu, np. komentarze w kodzie, opisy zadań, zgłaszanie problemów.

Komu polecisz stanowisko programisty?

Na pewno osobom, które lubią tworzyć i widzieć efekt pracy swojej i zespołu - bo wbrew powszechnej opinii zarówno osoby dobrze pracujące solo, jak i w grupie znajdą dla siebie miejsce w tej branży. To praca dla osób, które chcą i potrafią udowadniać raz po raz światu, że jeszcze nie wszystko było i że można dany problem czy potrzebę biznesową rozwiązać w kolejny, być może jeszcze lepszy sposób.

Jak przekonać rekrutera, jeśli aplikuje się na stanowisko programisty, a nie ma się doświadczenia zawodowego?

Jest na to kilka sposobów:

� Wymień w CV technologie, które już opanowałeś i wyceń punktami ich poziom znajomości (np. w skali szkolnej od 1 do 6) oraz poddaj się odpowiednim testom (nawet jeśli firma nie przewiduje takiej formy w rekrutacji, można spróbować ją na to namówić),

� przedstaw portfolio projektów prywatnych lub non-profit z informacją o Twoim udziale w nich oraz użytych technologiach,

� przedstaw portfolio w postaci prowadzonego bloga czy komentarzy, własnych odpowiedzi na pytania dotyczące rozwiązywania problemów np. na grupie dyskusyjnej lub forum branżowym,

� zdobądź certyfikat potwierdzający umiejętności lub uprawnienia w danym zakresie.

Kilka słów o rozmówczyni:

Od 6 lat zawodowo zajmuje się rekrutacją i mar-ketingiem rekrutacyjnym. Prowadziła i nadzoro-wała setki europejskich i globalnych projektów rekrutacyjnych m.in. dla branży IT w agencji po-średnictwa pracy. Project Manager w firmie HR-link.pl, tworzącej oprogramowanie wspierające rekrutację i zarządzanie bazami kandydatów. Certyfikowany analityk wymagań (REQB). Pro-wadzi konsultacje dot. rynku pracy, e-rekruta-cji, marketingu, tworzenia tekstów użytkowych oraz employer i personal brandingu. Prywatnie mieszka w internecie, aktywna członkini wielu e-społeczności, wspiera integrację i rozwój branży IT w Szczecinie, m.in. jako wiceprezeska Klastra ICT Pomorze Zachodnie.

wywiad z marzeną Zasińską-IgłąPORADY REKRUTERA

9KARIERA PROGRAMISTY| WYWIAD

Page 10: Kariera programisty

SEKTOR INFORMATYCZNY W POLSCEProdukcja oprogramowania to najsilniejszy sektor polskiego przemysłu informatycznego. Programista jest natomiast pod-stawowym stanowiskiem podczas procesu produkcji opro-gramowania w małych firmach i liczących setki pracowników korporacjach. Poszukując pracy czy stażu w tym zawodzie, warto poznać lokalny rynek pracodawców.

Zapraszamy do zapoznania się z listą największych firm w wybranych miastach Polski:

Białystok

� Cetrum Informatyki ZETO

� Komserwis Przedsiębiorstwo Innowacyjno-Wdrożeniowe

� Merinosoft

Bydgoszcz

� Logon S.A.

� Slican

� Przedsiębiorstwo Informatyki ZETO Bydgoszcz SA

� Bazy i Systemy Bankowe

� Vivid Games

Gdańsk

� Intel Polska* Sprint S.A.

� Young Digital Planet

� ENERGA Informatyka i Technologie

� Lufthansa Systems Poland

Gdynia

� Koma Nord

� Unisoft

� Madkom

� Solemis Group

� SuperHost.pl

Katowice

� Pronox Technology

� Senetic

� COIG

� Zakład Elektronicznej Techniki Obliczeniowej Katowice

� Proximus

Kraków

� Comarch

� Veracomp

� Arrow ECS

� Biuro Informatyczno-Wdrożeniowe

� Koncept

Lublin

� Asseco Business Solutions

� eLeader Sp. z o.o.

� Syntea

Łódź

� Ericpol sp. z o.o.

� Centrum Komputerowe ZETO Łódź

� AMG.net

� 01Partner Sp. z o.o.

� LSI Software

Poznań

� Komputronik

� Talex

� Projekty Bankowe Polsoft

� Sygnity Technology

� Konsorcjum FEN

Rzeszów

� Asseco Poland

� ZETO-RZESZÓW

� Elektra

� Partners in Progress

� Syriusz

Sopot

� Blue Media

� ATENA Usługi Informatyczne i Finansowe S.A.

� COMBIDATA Poland

� LST

� Vemco

Szczecin

� Vobis

� Tieto Poland

� UNIZETO TECHNOLOGIES

� Sagra Technology

� home.pl

Warszawa

� ABC Data

� HP Polska

� Tech Data Polska

� IBM Polska

� Microsoft

Wrocław

� AB SA

� Incom

� Winuel

� Comes

� Advatech

Zielona Góra

� Max Elektronik

� Streamsoft

� proALPHA Polska

� Infar

2095ZACHODNIOPOMORSKIE

5290WIELKOPOLSKIE

914LUBUSKIE

4867DOLNOŚLĄSKIE 923

Źrodlo danych: Katalog firm Top 200 Computerworld (edycja 2013), wybrano maksymalnie 5 firm z danego miasta, kryterium porównawcze: przychód ze sprzeday produktów i usług za 2012r.

KARIERA PROGRAMISTY| INFOGRAFIKA10

Page 11: Kariera programisty

3653POMORSKIE 913

WARMIŃSKO-MAZURSKIE

856PODLASKIE

16130MAZOWIECKIE

1813KUJAWSKO POMORSKIE

5290WIELKOPOLSKIE

2632ŁÓDZKIE

923OPOLSKIE 5729

ŚLĄSKIE

4609MAŁOPOLSKIE

1814PODKARPACKIE

1508LUBELSKIE

870ŚWIĘTOKRZYSKIE

Źrodlo danych: GUS, Bank danych lokalnych, kryterium: działalność związania z oprogramowaniem i doradztwem w zakresie informatyki oraz działalność powiązana w 2012r.

Lic

zba

firm

wy

ko

nu

jący

ch

dzi

ała

lno

ść z

wią

zan

ą z

op

rog

ram

ow

an

iem

w d

an

ych

wo

jew

ód

ztw

ach

w 2

012

r.

11KARIERA PROGRAMISTY| INFOGRAFIKA

Page 12: Kariera programisty

W pracy programisty obok wiedzy technologicznej duże znaczenie mają pewne cechy osobowości oraz tzw. kompetencje społeczne. Kreatywność w rozwiązywaniu problemów, umiejętność organizacji pracy i właściwe zarządzanie czasem, a także umiejętność pracy w zespole – to tylko wybrane atrybuty programisty.

PRZEPIS NA PROGRAMISTĘ

Po pierwsze kreatywność!Często powielany stereotyp, że programista bezmyślnie „klepie” w klawiaturę i mechanicznie zapisuje fragmenty kodu, jest bardzo odległy od prawdy. Jego zadaniem jest bowiem znalezienie rozwiązania na zadany pro-blem. Musi więc logicznie myśleć, poszukiwać wśród już istniejących rozwiązań, analizować i łączyć, zarów-no korzystać ze schematów, jak i poza nie wykraczać – musi być w tym wszystkim cierpliwy i konsekwent-ny. U dobrego programisty kreatywność w rozwiązy-waniu problemów ma wiele przejawów. Ważne jest, aby ciągle ją rozwijać i poszukiwać inspiracji.

Dobra organizacja kluczem sukcesuDobry programista – pracujący na własną rękę, czyli tzw. freelancer, czy też pracujący w fi rmie na etacie – to osoba systematyczna i zorganizowana. W branży infor-matycznej dużą wagę przywiązuje się do dotrzymywania terminów i wykonywania zadań o czasie. Programista powinien posiadać dobrze zorganizowane miejsce pracy, które pozwoli mu na skupienie i odpowiednio wysoką produktywność. Powinien umiejętnie planować zadania i szacować czas potrzebny na ich wykonanie, pilnować, aby go nie przekroczyć, a jednocześnie prze-widzieć czas na konieczne przerwy i odpoczynek. Wła-śnie tak zorganizowana praca pozwoli mu być zawsze kreatywnym i mieć ważną w tym twórczym zawodzie świeżość umysłu. Dobra organizacja przekłada się także na dbałość o szczegóły i spostrzegawczość – to one powodują, że programista, nawet początkujący jest postrzegany jako osoba dokładna i skrupulatna.

Sam czy w zespole?Choć model pracy na własną rękę jest w branży informa-tycznej niezwykle popularny, umiejętność pracy zespo-łowej to jedna z najważniejszych cech programisty. Jest to kompetencja społeczna, która potrzebna jest w wielu innych zawodach, jednak jej rola w profesji programisty jest niebanalna, ponieważ aktualnie większość projektów tworzonych jest właśnie przez zespoły programistów. Dlatego w branży doceniane są osoby, które dobrze radzą sobie w komunikacji z pozostałymi członkami zespołu – potrafi ą rozmawiać i słuchać, poszukują kompromisów i wiedzą, jak rozwiązywać konfl ikty. Praca zespołowa to też wzajemna odpowiedzialność za pozostałych członków zespołu i zaufanie – ich również nie powinno zabraknąć u dobrego programisty.

Wiedza technologiczna to nie wszystkoWszystkie wymienione wyżej cechy pokazują, że programista to osoba posiadająca nie tylko wiedzę technologiczną, ale i wiele kompetencji społecznych, które pozwolą mu sprawnie i efektywnie pracować sa-modzielnie lub zespole. Powinna być to jednak przede wszystkim osoba otwarta na nowe wyzwania i własny rozwój – bo to są najważniejsze składniki przepisu na programistę.

KARIERA PROGRAMISTY| ARTYKUŁ12

Page 13: Kariera programisty

PROGRAMISTA BAZ DANYCH

Specjalista baz danych to osoba, któ-ra tworzy, instaluje i zarządza bazą danych, czyli zbiorem różnych grup informacji zapisanych w formie cy-frowej i przetwarzanych za pomocą odpowiednich programów kompute-rowych. Nauka programowania baz danych wiąże się przede wszystkim z poznaniem języka SQL.

Współcześnie zbieranych jest coraz więcej danych z różnych źródeł, choćby takich jak na przykład serwisy społecz-nościowe. Dane te są zbierane w bardzo duże bazy, ułożone zgodnie z okre-ślonymi regułami. Selekcja informacji według założonych przez nas kryteriów i ich wykorzystanie to najważniejsza rola baz danych. Wiodące branże, które wykorzystują bazy danych i tym samym zatrudniają programistów tej specjal-ności to: fi nanse, rozrywka, medycyna, sprzedaż i marketing.

Strukturę baz danych można utożsamiać z arkuszami w arkuszu kalkulacyjnym (np. Excelu) – każdy arkusz to osobna tabela bazy danych, każdy wiesz w ar-kuszu (wpis) to rekord w tabeli, każda

kolumna opisująca wiersz to kolumna opisująca rekord w bazie danych. I tak połączenia (relacje) między arkuszami to relacje między tabelami w bazie danych.Zadaniem programisty baz danych jest wybór właściwej technologii bazodano-wej i ułożenie struktury bazy danych zgodnie z potrzebami projektu - tak, aby gromadzenie i przetwarzanie danych przebiegało w optymalnych warunkach, a oprogramowanie pracujące w opar-ciu o bazę danych działało sprawnie. Optymalizacja bazy danych, a więc spo-sobu składowania i pobierania danych do aplikacji jest jednym z kluczowych czynników, decydującym o wydajności oprogramowania. Dodatkowo specja-lista baz danych zobowiązany jest do zapewnienia bezpieczeństwa bazy, aby wyeliminować możliwe sytuacje jej uszkodzenia lub dostępu do informacji przez osoby niepowołane.

Od czego zacząć?

Nauka programowania baz danych wią-że się przede wszystkim z poznaniem SQL (Structured Query Language) - ję-zyka zapytań używanego do tworzenia, modyfi kowania oraz do umieszczania i pobierania danych z baz danych. Jest to najbardziej popularna technologia, od której należy zacząć naukę tej spe-cjalizacji. Pierwsze ćwiczenia mogą polegać na stworzeniu własnej bazy danych, np. bazy książek, czy obejrza-nych fi lmów, a następnie sortowaniu jej zawartości wg wybranych założeń. Do trudniejszych zadań należy stworze-

nie odpowiedniej struktury bazy, czyli konfi guracja oraz optymalizacja – to znaczy maksymalne skrócenie czasu oczekiwania na wyniki selekcji danych poprzez właściwą konstrukcję zapytań, które stworzył programista, np. w taki sposób, by zamiast w 10 sekund, baza zwracała wyniki wyszukiwania w mniej niż 10 milisekund.

Wynagrodzenia

Tworzenie i programowanie baz danych to umiejętności, które często choćby w podstawowym zakresie posiada-ją i wykorzystują programiści innych specjalności. Jednak wykwalifi kowani specjaliści w tej dziedzinie są jedną z lepiej opłacanych grup programistów. Rynkowe zarobki na tym stanowisku zawierają się w przedziale od 6 do 10 tys. zł. Stanowi to 205% przeciętnego wynagrodzenia w Polsce. Jest to jed-nocześnie specjalność dająca bardzo duże perspektywy rozwoju. Specjalista baz danych jest też bowiem często szko-leniowcem – swoją wiedzę i doświad-czenie przekazuje programistom, a sam rozwija się w kierunku administratora infrastrukturą i specjalisty ds. bezpie-czeństwa systemów bazodanowych.

Opis specjalności:

Darmowe wersje SQL do ściągnięcia:

� Oracle

� MS SQL Server

� MySQL

Jeśli chcesz stworzyć swoją pierwszą bazę danych i sprawdzić jej działanie, stwórz tabelę z informacjami o wieku rodziny i znajomych. Wydaj jej polece-nie, by podała Ci imię i nazwisko osoby, która jest w określonym wieku, np.20.

Polecenia przedstawione obok, wyko-nują po kolei polecenia:

1. Utwórz strukturę bazy danych: imię i nazwisko o tekstowym typie danych oraz wiek, będący liczbą całkowitą.

2. Dodaj przykładowe rekordy do bazy

3. Pobierz imie oraz nazwisko osoby w wieku 20 lat.

CREATE TABLE `osoby` (

`imie` VARCHAR( 255 ),

`nazwisko` VARCHAR( 255 ),

`wiek` INT( 11 )

);

INSERT INTO osoby (‘imie’, ‘nazwisko’, ‘wiek’) VALUES („Robert”, „Kowalski”, 23), („Paweł”, „Adamczyk”, 20), („Konrad”, „Gyros”, 29);

SELECT imie, nazwisko FROM osoby WHERE wiek = 20;

ZAROBKI:

6000 -10 000 zł

13KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI

Page 14: Kariera programisty

PROGRAMISTA C++Popularność języków C i jego pochod-nej, C++ nie maleje od wielu lat. Mogą one być wykorzystywane do tworze-nia bardzo różnorodnych programów, a także gier. Umożliwią pisanie aplika-cji pod Windowsa, Linuksa i inne sys-temy (w tym mikrokontrolery), a dzięki łatwości w dostosowaniu kodu między różnymi platformami stwarzą duże możliwości dla programistów. Ich naj-większą zaletą jest szybkość działania wykonanej aplikacji.

Język C powstał w latach 70. XX wie-ku z założeniem, że miał być prosty, przejrzysty i dawać programiście pełną władzę nad sprzętem. Języki C i C++ stanowią podwaliny działania więk-szości samych systemów komputero-wych - Windowsa, Androida czy MacOS. Stosowane są też w wielu programach wbudowanych w urządzenia mobilne czy sprzęty domowe. Szczególnym za-stosowaniem są systemy krytyczne, tj. medyczne, wojskowe, bezpieczeństwa w samochodach z uwagi na dużą pre-cyzję poleceń wykonywanych przez programy napisane w tych językach.

Nauka

Co ważne, poznanie C i C++ jest dosko-nałą podstawą do dalszej nauki nowo-cześniejszych języków programowania, których składnia bardzo często opiera się właśnie na nich. Opanowanie pod-stawowych poleceń przychodzi bardzo szybko, jednak osiągnięcie biegłości i poznanie wszystkich możliwości wy-

maga co najmniej kilkuletniej praktyki. Podobnie jak w przypadku innych ję-zyków do programowania w C i C++ potrzebne są narzędzia wspierające proces programowania, takie jak od-powiedni kompilator i zintegrowane środowiska programistyczne, czyli IDE (ang. Integrated Development Environ-ment). Są to m.in. dostępne za darmo Eclipse czy Visual Studio Express. Do-stępna jest również cała gama literatury, stron internetowych i kursów, na których można nauczyć się podstaw programo-wania w C i C++. Warto również śledzić społeczność programistów C/C++, np. na stronie stackoverfl ow.com, gdzie można uzyskać kompletne odpowiedzi na najbanalniejsze pytania.

Kariera programisty C/C++

Rynek pracy jest ciągle bardzo chłon-ny na programistów tej specjalności - głównie w tym sektorze fi rm informa-tycznych, który zajmuje się tworzeniem tzw. systemów wbudowanych (mikro-kontrolery). W związku z tym, dużym plusem przy rekrutacji jest znajomość działania komputera na najbardziej podstawowym, sprzętowym poziomie. Miesięczne wynagrodzenie programisty C/C++ wynosi średnio:

Opis specjalności:

Obszar:

� obsługa urządzeń fi zycznych

� gry

Średnia

Popularność w Polsce:

Trudność na start:

Różnorodność tworzonych projektów:

wysoka

Technologie powiązane:

� protokoły internetowe

� systemy operacyjne Windows i Linux

Najpopularniejsze narzędzia:

� Visual Studio

� wxDev-C++

� Code::Blocks

ZAROBKI:

3000 -10 000 zł

Napisanie pierwszego kodu zacznij od pobrania i instalacji środowiska pro-gramistycznego – np. wxDev C++. Po uruchomieniu programu, utwórz nowy projekt i wprowadź kod widoczny obok. Naciśnij klawisz F5 (kompilacja) – na ekranie powinieneś zobaczyć napis „Witaj świecie!”.

Kod, który widzisz obok, informuje kom-puter, że korzystać będzie z mecha-nizmów komunikacji z urządzeniami (iostream), a następnie przesyła na ekran komputera informacje tekstową (std::co-ut << „Witaj swiecie!”). Program kończy pracę poleceniem „return”.

6500 zł

wysoka

#include <iostream>

void main() {

std::cout << „Witaj swiecie!” << std::endl;

return;

}

KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI14

Page 15: Kariera programisty

PROGRAMISTA JAVAJava to język, który ma wielu zwolen-ników i ogromna liczba fi rm właśnie w tej technologii tworzy swoje oprogra-mowanie. Jest on stosowany zarówno w tzw. aplikacjach desktopowych, czyli programach instalowanych na kom-puterze, programach działających na urządzeniach mobilnych – smartfonach czy tabletach, jak i w skomplikowanych aplikacjach biznesowych.

Do rozpoczęcia pracy z Javą potrzebne jest zorganizowane środowisko łączą-ce Maszynę Wirtualną Javy (program, dzięki któremu możliwe jest urucha-mianie programów napisanych w języ-ku Java), edytor kodu (np. NetBeans) oraz ewentualnie program bazy danych (np. MySQL albo MS SQL). O tym, jak przygotować swój komputer do pro-gramowania w Javie można przeczytać na wielu stronach internetowych, m.in. na www.javastart.pl w zakładce „Wpro-wadzenie”.

Co dalej?

Programiści Java tworzą już dużą spo-łeczność na całym świecie, co bardzo zwiększa dostęp do informacji o tej technologii. Działają również lokalne grupy użytkowników - Java User Group (JUG), gdzie łatwo można znaleźć życzli-wych ludzi, którzy pomogą i odpowiedzą na wszystkie pytania początkującego programisty.Na spotkaniu grupy lub forum internetowym można zadać py-tania nie tylko związane bezpośrednio z Javą, ale także o wszystkie kwestie

wspomagające programowanie, z któ-rymi początkujący koder na pewno się zetknie. W całym kraju odbywa się też szereg bezpłatnych konferencji poświę-conych programowaniu w języku Java. Udział w nich to dodatkowa okazja do poznania najlepszych praktyk w two-rzeniu oprogramowania w tym języku.

Doświadczeni programiści Java two-rzą rozwiązania serwerowe oraz roz-budowane aplikacje biznesowe, np. systemy bankowe. Są to tzw. aplikacje klasy enterprise - czyli rozwiązujące pe-wien problem biznesowy w określonym standardzie, pozwalającym na łączenie z innymi programami, zapewniającym odpowiedni poziom bezpieczeństwa i skalowalnym (przygotowanym na wzrost liczby użytkowników).

Perspektywy

Programiści Java należą do najbardziej poszukiwanych specjalności na ryn-ku pracy IT - codziennie na portalach z ofertami pracy pojawia się kilkadzie-siąt ofert w całym kraju.

Przeciętne wynagrodzenie programisty Java z kilkuletnim doświadczeniem (wg wynagrodzenia.pl) wynosi:

Opis specjalności:

Obszar:

� strony internetowe

� aplikacje na telefony komórkowe

� programy komputerowe

wysoka

Popularność w Polsce:

średnia

Trudność na start:

Różnorodność tworzonych projektów:

wysoka

Technologie powiązane:

� SQL

� Android

Najpopularniejsze narzędzia:

� Eclipse

� NetBeans

ZAROBKI:

3000 -10 000 zł

Swoją przygodę z językiem Java naj-lepiej zacząć od pobrania programu w którym tworzyć można aplikacje - środiwska Eclipse. Utwórz nowy projekt i wprowadź kod, który widzisz obok.

Kod, który widzisz wydaje komputero-wi polecenie:

1. Utwórz okno dialogowe

2. W “Oknie komunikatu” utwórz miej-sce na tekst

3. W miejscu na tekst wprowadź napis “Witaj świecie”

4. Wyświetl okno wraz z komunikatem.

Pobierz program, wprowadź kod i uru-chom swój pierwszy program!

6200 zł

import javax.swing.JFrame;

import javax.swing.JLabel;

public class HelloWorldSwing {

public static void main(String[] args) {

JFrame frame = new JFrame(“Okno komunikatu”);

fi nal JLabel label = new JLabel(“Witaj świecie!”);

frame.getContentPane().add(label);

frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);

frame.pack();

frame.setVisible(true);

}

}

#include <iostream>

void main() {

std::cout << „Witaj swiecie!” << std::endl;

return;

}

15KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI

Page 16: Kariera programisty

PROGRAMISTA PHPPHP to język wykorzystywany w me-chanizmach budowania i działania stron internetowych, nieoderwanie związany z opisem wyglądu strony internetowej oraz bazami danych.

Z uwagi na swoją popularność, a także duże możliwości wykorzystywany jest przez większość agencji i fi rm wykonu-jących proste jak również rozbudowane serwisy www. Jest to jeden łatwiejszych do nauki języków programowania.

Strony utworzone w PHP są to tzw. ser-wisy dynamiczne. Są to strony umożli-wiające m.in. wprowadzanie nowych treści lub modyfi kowanie istniejących za pomocą panelu administracyjnego, bądź rejestrację i logowanie dla użyt-kowników.

Do rozpoczęcia przygody z PHP wy-magane są narzędzia, które w więk-szości dostępne są za darmo, takie jak Eclipse czy NetBeans. Z uwagi na to, że PHP jest językiem działającym nie w przeglądarce, a na serwerze www, należy po pierwsze wykupić usługę hostingu - możliwości uruchamiania kodu napisanego w PHP na komputerze znajdującym się w Internecie.

Osobom zaczynającym programowa-nie w PHP przydatna jest również zna-jomość języka HTML (opisu wyglądu strony internetowej) oraz baz danych (najczęściej MySQL).

Społeczność PHP

Spotkania programistów PHP odbywają się już w całym kraju. Takimi wydarze-niami są np.: Silesian PHP User Group (Gliwice), meet.php (Poznań), PHP3City (Trójmiasto), czy PHPers (Warszawa). Można w ich czasie spotkać programi-stów z różnym doświadczeniem – od tych rozpoczynających po pracujących już od kilku lat. Warto znaleźć osobę, która odpowie na podstawowe pytania i pomoże w pierwszych krokach. Bardzo dużo materiałów i kursów jest również dostępnych w Internecie.

Rynek pracy

Ze względu na charakter technologii, osoby posługujące się tym językiem znajdą zatrudnienie głównie w mniej-szych fi rmach. Miejsc pracy dla pro-gramistów PHP jest jednak cała masa - na portalach z ofertami codziennie pojawiają się setki ogłoszeń.

Zarobki mieszczą się w przedziale:

Opis specjalności:

<?php

print(„Witaj świecie!”);

?>

Obszar:

� strony internetowe

Bardzo wysoka

Popularność w Polsce:

niska

Trudność na start:

Różnorodność tworzonych projektów:

Technologie powiązane:

� HTML

� CSS

� SQL

� Eclipse

� NetBeans

� IntelliJ IDEA

� phpMyAdmin

� Apache

ZAROBKI:

3000 -10 000 zł

Swoją przygodę z językiem PHP za-cznij od wyboru dostawcy usług ho-stingowych. W Internecie znajdziesz oferty zarówno płatne jak i bezpłatne. Kiedy już tego dokonasz, będziesz miał możliwość przesyłania plików na swój serwer. Utwórz plik index.php, skopiuj do niego zawartość bocznej ramki.

Kod który widzisz:

1. Przy każdym uruchomieniu strony wyświetla napis „Witaj świecie!”.

Uruchom swoją stronę w przeglą-darce:

<adres Twojego serwera>/index.php

niska

Najpopularniejsze narzędzia:

2000 - 5000 złPO KILKU LATACH PRACY

� Wordpress � Drupal

Najpopularniejsze narzędzia:

KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI16

Page 17: Kariera programisty

TESTER OPROGRAMOWANIATestowanie oprogramowania jest nie-odłącznym elementem procesu jego tworzenia, dlatego testerzy są człon-kami zespołów programistycznych. Tester to potoczna nazwa specjalności, której zadaniem jest dbanie o jakość i poprawność działania sprzętu in-formatycznego lub oprogramowania. Choć programowanie nie leży w głów-nym zakresie obowiązków testera, konieczna jest znajomość co najmniej podstaw programowania - po pierw-sze dla lepszego zrozumienia zasady działania testowanej aplikacji, po dru-gie dla zapewnienia wysokiej jakości testów i ich przyspieszenia, czyli au-tomatyzacji.

Jak zostać testerem?

Predyspozycje, którymi powinien ce-chować się na starcie przyszły tester to przede wszystkim umiejętność lo-gicznego, przyczynowo-skutkowego myślenia, duża wyobraźnia, odporność na stres, wytrwałość, sumienność i do-bre umiejętności interpersonalne. Do tego oczywiście dochodzi znajomość podstaw programowania i algorytmiki.

Ważna jest również znajomość języka angielskiego, ponieważ testerzy naj-częściej właśnie w tym języku otrzy-mują dokumentację przeznaczonego do testów oprogramowania.

Testowanie oprogramowania ma na celu sprawdzenie, czy stworzone opro-gramowanie jest zgodne z wymoga-mi i oczekiwaniami, wykrycie błędów w oprogramowaniu zanim trafi do klien-tów czy użytkowników.

Testowane może być także bezpie-czeństwo i wydajność oprogramowania. Testerzy muszą dokładnie zaplanować swoje działania, przygotować tzw. sce-nariusze i przypadki testowe, określić jakie są oczekiwane wyniki, a także warunki pozytywnego przejścia testu przez oprogramowanie. Na koniec pracy testerzy raportują wyniki testów.

Podjęcie pracy w charakterze testera wymaga przede wszystkim poznania zebranych standardów i metodyk te-stowania (kilka do kilkunastu publikacji). Bardzo popularnym certyfi katem jest

ISTQB, którego zdobycie poświadcza posiadanie wiedzy i umiejętności ko-niecznych w pracy testera. Konieczne jest także poznanie podstawowych na-rzędzi testerskich. Dla osoby zajmującej się testowaniem stron internetowych będą to np. dodatki do przeglądarek (np. Selenium IDE Plugins lub Selenium Webdriver).

Przydatne są również narzędzia do wy-pisywania i śledzenia postępów w na-prawie błędów jak Bugzilla, Mantis czy Redmine.

Nauka automatyzacji testów, czyli po-wtarzania tej samej czynności przez komputer (np. wpisania adresu, hasła czy wywołania tej samej funkcji progra-mu) wiąże się z nauką podstaw progra-mowania i technologii takich jak Monkey test, Robotium czy Robolectric.

Perspektywy pracy

Testerzy są obecnie równoprawnymi członkami zespołów programistycznych i wraz ze wzrostem zapotrzebowania na programistów, rośnie zapotrzebowanie na testerów.

Bardzo popularny segment rynku IT w zakresie testów to rozwijający się rynek aplikacji mobilnych. Najwięk-sze szanse na rynku pracy mają oso-by znające podstawy programowania i wybrane certyfi katy, jednak często do pracy przyjmowane są osoby bez nich, a uzupełniane są dopiero w toku pracy.

Czasem odpowiednie przeszkolenie na stanowisko testera zapewniają sami pra-codawcy.

W 2012 roku testerzy oprogramowania zarabiali przeciętnie:

Na większe płace mogli liczyć ci pra-cujący w województwie małopolskim - podaje raport „Wynagrodzenia na sta-nowiskach IT w 2012 roku”, wydany przez Sedlak & Sedlak.

Opis specjalności:

Cechy dobrego testera:

� odporność na stres,

� duża wyobraźnia,

� znajomość algorytmiki,

� umiejętność logicznego myślenia,

� umiejętność myślenia przyczynowo-skutkowego,

� bardzo dobra komunikacja zespołowa,

� kalkulacja ryzyka,

� upartość,

� umiejętności matematyczne: liczenie prawdopodobieństwa, szacowanie,

� bardzo dobra znajomość języka angielskiego,

� umiejętność rozbierania procesów na czynniki pierwsze.

5100 zł

Cechy złego testera:

� denerwuje cię wadliwość oprogramowania,

� nie znasz oczekiwań biznesowych swojej fi rmy,

� jesteś zmęczony wyjaśnianiem czynności prowadzących do wystąpienia defektu,

� nie czytasz książek, blogów, nie uczestniczysz w konferencjach na temat testowania oprogramowania,

� wstydzisz się swojej roli w projekcie,

� wiesz jak coś sprawdzić, ale nie masz ochoty się w to zagłębiać,

� nie jesteś na bieżąco z technicznymi aspektami IT,

� nie lubisz komunikować się z innymi,

� nie jesteś świadomy całego cyklu rozwoju aplikacji,

� nie umiesz pogodzić się z tym, że błędy zgłoszone przez ciebie nie zostaną naprawione.

Źródło: http://testerzy.pl/wiesci-ze-swi-

ata-testerow/zly-tester-10-powodow

17KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI

Page 18: Kariera programisty

WEBMASTERWebmaster to specjalność progra-mistyczna, której zadaniem jest za-projektowanie, zakodowanie oraz aktualizacja stron internetowych. Wśród kompetencji wymaganych od webmastera główne miejsce zajmuje wiedza o funkcjonowaniu Internetu oraz znajomość technologii takich jak np. JavaScript, HTML, CSS. Mile wi-dziana jest także podstawowa obsługa programów grafi cznych.

Na starcie

Przy zatrudnianiu do projektowania stron nie jest najważniejsza długość stażu pracy, lecz ilość wykonanych zle-ceń - konieczne jest posiadanie portfo-lio prac do wglądu przyszłego praco-dawcy. Wykształcenie techniczne nie jest wymogiem koniecznym, ponieważ fi rmy zatrudniają często osoby, które ukończyły inne kierunki, ale posiadają „zmysł techniczny” i zdobywają prak-tykę w technologiach internetowych. Dlatego też pracę w tej specjalności najlepiej zacząć od stworzenia własnej, prostej strony internetowej, którą należy przedstawić w swoim CV.

Tworzenie strony www wymaga głównie znajomości języka JavaScript, a także technologii HTML – językowego opi-su budowy stron internetowych oraz CSS, języka służącego do określenia reguł, w jaki sposób ma być wyświe-tlana przez przeglądarkę internetową zawartość danego elementu, czyli np. jaki typ czcionki ma być użyty, jaki kolor tekstu, jak duże mają być marginesy czy odstępy miedzy kolejnymi wierszami. Celem pracy webmastera jest prze-łożenie wizji grafi ka na funkcjonalną, sprawnie działającą stronę internetową.

Do tworzenia bardziej dynamicznych i rozbudowanych stron www i aplikacji w późniejszym etapie kariery przyda się znajomość tworzenia baz danych, języków programowania PHP, Ruby, Java bądź Python. Przydatna jest też znajomość programów grafi cznych, np. Adobe Photoshop czy GIMP.

Na początku nie potrzeba szczegól-nych środowisk programistycznych, wystarczy edytor tekstu z funkcją roz-poznawania i poprawiania tworzonej składni oraz oczywiście przeglądarka internetowa.

Istnieje wiele dodatków do przeglą-darek internetowych, które pomagają w tworzeniu stron internetowych, gene-rują podgląd tworzonej strony, a nawet pokazują kod istniejących już stron, co może być ciekawym źródłem wiedzy o ich budowie. Informacji o tworzeniu stron dostarczają też liczne strony in-ternetowe poświęcone tajnikom pracy webmasterów. Jedną z nich jest anglo-języczny portal Smashing Magazine.

Kariera webmastera

Wielu webmasterów pracuje na własną rękę, tworząc strony na zamówienie klienta. Coraz częściej jednak tworze-nie rozwiniętych, dynamicznych stron internetowych wykonuje się w fi rmach zatrudniających kilkuosobowe zespoły, w których webmasterzy współpracują z grafi kami i działem marketingu. Mie-sięczne wynagrodzenie wynosi około:

Opis specjalności:

Obszar:

� strony internetowe

� aplikacje mobilne

Popularność w Polsce:

Trudność na start:

Różnorodność tworzonych projektów:

Najpopularniejsze narzędzia:

� kED

� Pajączek NxG

� Eclipse

� Adobe Dreamweaver

ZAROBKI:

1500 - 4 000 zł

Przygodę z językiem HTML rozpocz-nij od uruchomienia programu Notat-nik (menu start -> wpisz „notatnik”), a w nim umieść kod z ramki obok. Na-stępnie zapisz plik pod nazwą „strona.html” w wybranym miejscu. Odnajdź swój zapisany plik w Eksploatorze plików i uruchom klikając dwukrotnie. Twoja przeglądarka internetowa włączy się, a w niej zobaczysz czerwony napis „Wi-taj świecie”.

3200 zł

<html>

<head>

<title>Moja pierwsza strona</title>

</head>

<body>

<h1 style=”color:red”>Witaj świecie!</h1>

</body>

</html>

Bardzo wysoka

niska

niska

� HTML

� CSS

� JavaScript

Technologie powiązane:

KARIERA PROGRAMISTY| OPIS SPECJALNOŚCI18

Page 19: Kariera programisty

programiści c/c++ najczęściej poszukiwani specjaliści it na świecie!

Gdyby zebrać wszystkie dostępne w Internecie artykuły na temat pro-gramowania, co czwarty z nich trakto-wałby o języku C bądź C++! Taką samą sytuację obserwujemy na rynku pracy – najwięcej ogłoszeń dotyczy właśnie tej specjalności. Pozostałe w kolejności to Java i Objective-C – nie omawiany w tej publikacji, jednak również popu-larny język, dedykowany programowa-niu na urządzenia produkowane przez firmę Apple – iPhone i iPad.

Diagram prezentuje ogólnoświatowy ranking popularności języków pro-gramowania – TOP 10 według TIOBE.

Żródło danych: Ranking TIOBE, http://www.tiobe.com/index.php/content/paperinfo/tpci/tpci_definition.htm, dane za październik 2013r.

<html>

<head>

<title>Moja pierwsza strona</title>

</head>

<body>

<h1 style=”color:red”>Witaj świecie!</h1>

</body>

</html>

19KARIERA PROGRAMISTY| INFOGRAFIKA

Page 20: Kariera programisty

SPOTKANIA SPECJALISTÓW ITNa mapie Polski z roku na rok pojawia się coraz więcej otwartych wydarzeń skupiających miłośników technologii. Jest to doskonała okazja poznania ludzi z branży oraz wy-miany wiedzy i doświadczeń. Poniżej przedstawiamy listę takich wydarzeń odbywających się cykliczne w różnych miastach Polski. Jeśli myślisz o karierze programisty, nie powinno Cię tam zabraknąć!

Bielsko Biała:Bielskie SEO

Gliwice:Mobile SilesiaSilesian PHP User Group

Katowice:InfoMEETmeet.it

Kraków: A+CampAmusing WorkshopsBARCAMP.ONETBlank Page ChallengeBlog ExpertsCHI PołudnieClick appsCOLAB #lunchtalkHackKRKHIVE53KrakCampKraków Ruby Users GroupKrakSpotKreatywne ŚniadanieMaking softwarepykonikSiteCampTechCampWordUP Kraków

Lublin:LubCamp

Olsztyn:Olcamp

Rzeszów:XRAII

Szczecin:Spotkania NetcampTechFusion

Trójmiasto:3CAMPCreative MorningsPHP3City

Warszawa:ActivatoriumAula PolskaCHI PolskanetwtorekOpenReaktorPHPersPLNOGPyWawSEMcampWRUG

Wrocław:BootstrapDRUG HackWro WordUp Wrocław Python User Group

Białystok:EastCamp

Wybrano wydarzenia, które odbywają się co najmniej dwa razy w ciągu roku. Dane dzięki uprzejmości portalu: crossweb.pl

Wiele miast:Geek Girls Carrotsmeet.jsWordCamp Java User Group

14

5

20

16

31 2

3

2

6

1

45

732

5

1

1

Łą

czn

a ilo

ść w

yda

rze

ń w

raz

z k

on

fere

ncja

mi

i w

wyb

ran

ych

mia

sta

ch

Po

lsk

i

10

Poznań:meet.phpPRUGRails Girls