Najczęściej wykonywane typy pracy przez programistów

Czas czytania 4 minuty

Dzisiaj na tapetę rzucam temat nie tyle kim jest programista, ale czym on się zajmuję. I teraz po raz kolejny obalam mit informatyk nie musi być programistą, podobnie jak programista może być ale nie musi informatykiem. Dokładniej opowiem o tym w dalszej części.?

Programista programiście nie równy!

Programista to dość szerokie pojęcie. Obecnie istnieje wiele języków programowania i nie każdy programista zna je wszystkie. To jest fizycznie nie możliwe! Programista, może wiedzieć że taki język istniej, ale to nie znaczy że z niego korzysta. Mimo to w ciąż odnoszę wrażenie, że dla części społeczeństwa to tylko wykręt. Z reguły winę za taki stan ponosi brak odpowiedniej wiedzy – lub przedawkowanie odrealnionych starych seriali telewizyjnych.

Podział programistów

Programistów można podzielić na kilka grup. Podział ten spowodowany jest tym czym konkretnie zajmuje się dany specjalista. Podział ten czasami nie działa w małych firmach (gdzie łączy się funkcje) a z kolei w dużych jest jeszcze bardziej rozdrobniony.

Front-end developer – specjalista od wyglądu strony

W teorii ja jestem przedstawicielką tej grupy ?. Zadaniem Front end developera jest w praktyce opieka nad strona internetową. To on jest odpowiedzialny za wizualną część projektu – nie chodzi tu tyle o stworzenie projektu, ale o jego wykonanie.

Pracując w tej sferze trzeba być raczej otwartym na zmiany – i częstą naukę od podstaw. Zmiany następują tu nawet w ciągu kilku dni lub miesiąca. Głownie praca opiera się o języki takie jak HTML, CSS, JavaScript (głownie różne biblioteki). Aktualnie tę grupę można podzielić też w zależności od tego jaką bibliotekę JS stosuje Front-end. Często też trzeba dostosowywać istniejące rozwiązania do potrze konkretnego projektu.

Przedstawiciel tej grupy powinien wiedzieć jak skonfigurować podstawowe funkcje na serwerze. Przydatna jest też umiejętność stawiania od podstaw systemów CMS oraz zasad testowania stron i UX / UI.

Back-end developer – specjalista od aplikacji

Zadanie back end developera jest w praktyce tworzenie kodu według założeń klienta. Buduje on np. nowe funkcjonalności do serwisu lub modyfikuje stare. Tworzy też nowe oprogramowanie od podstaw. Nie zajmuję się jednak kwestia wizualną.

Powinien też czuwać nad bezpieczeństwem strony oraz  konfigurować serwery. Back end developerzy mogą programować w wielu rożnych językach np. Java, SQL lub PHP. W większości korzystają jednak z konkretnych bibliotek (framework) a nie z czystego języka (np. PHP – Yii, Kohana).

Full stack developer

Jest to osoba łącząca w sobie umiejętności Back-end i Front-end developera. Osoba taka często samodzielnie stawia serwisy internetowe. Wiedza jaką posiada łączy w sobie oba opisane powyżej stanowiska. Najczęściej pracuje z technologiami takim jak PHP, SQL czy ASP.NET

Bardzo często w małych firmach mimo nazewnictwa stanowiska np. Front-end developer to jest to w rzeczywistości Full stack developer.

Mobile app  developer (iOS/Android)

Mobile app developer to jak sama nazwa mówi twórca aplikacji mobilnych. Wydaje mi się, że to specjalizacja z perspektywami – aplikacje mobilne są bowiem coraz bardziej popularne. A tam gdzie jest popyt powinna pojawić się podaż.

Z tego co czytałam o tym zawodzie najlepiej mieć skończone studia. Prawdopodobnie jest w tedy łatwiej a i taka osoba ma nieco inne spojrzenie. Na studiach przyszłych informatyków uczy się wielu rożnych – nie do końca aktualnych (z byt szybkie zmiany w IT), ale podstawowych rzeczy.

Mobile app developer programuje głównie na dwie platformy:

  • Android – Objective-C
  • Apple (ios) – Swift

Game developer – twórca gier

Czyli twórca gier komputerowych. W tym momencie na pewno wszyscy, którzy zajmują się tworzeniem gier właśnie poczuli się urażeni. Proces tworzenia gry komputerowej jest bowiem bardzo skompilowany i wymaga sporej grupy osób 🙂 – mnie jednak tu chodzi raczej o kodera. Przyznam, że mam dość mała wiedzę na temat tej konkretnej specjalizacji więc jak by, ktoś chciała się podzielić wiedzą na ten temat może napisać o tym w komentarzu. ?

Database developer – zarządca baz danych

Database developer to osoba zajmująca się bazami danych. Dla nie wtajemniczonych systemy CMS w bazach danych trzymają np. zawartość artykułów, nazwy elementów menu i wiele innych elementów.

Osoba na tym stanowisku zajmuje się nie tylko zarządzaniem taką bazą, może także planować kolejne bazy, wyciągać z niej informacje czy przebudowywać. To bardzo odpowiedzialne stanowisko! Wiele baz danych znajduje się np. w bankach, sklepach internetowych. Uszkodzenie lub pojawienie się w niej błędu może spowodować utratę znajdujących się w niej danych.

Językami w których pracują database developerzy są np. SQL czy Oracle. Jako ciekawostkę dodam tutaj, że skomplikowane systemy bazodanowe mogą się składać nawet z kilkunastu współpracujących ze sobą baz.?

Tester – weryfikator poprawności

To ostatnia specjalizacja na mojej liście. Nie wiem czy każdy by w tym miejscu umieścił testera, ale wydaje mi się że powinien mieć on podstawową wiedzę na temat programowania przynajmniej w jednym języku. W części firm właśnie do testera należy bowiem nie tylko weryfikowanie czy w aplikacja działa poprawnie, ale także w razie potrzeby korekta części błędów. Ewentualnie wskazanie gdzie jest błąd.

Podsumowanie

W zestawieniu pominęłam stanowiska takie jak UX czy analityk gdyż osoby zajmujące się tą tematyką nie muszą mieć aż tak specjalistycznej wiedzy. I nie oszukujmy się w większości firm (np. małych, średnich) są to graficy lub osoby po kursach np. humaniści. Osoby te mogą dysponować pewną wiedzą nabytą nie tyle przez „formalną edukacje informatyczną” co wyuczoną konkretnie na potrzeby danego stanowiska. Nie mówię, że są w tym kiepskie.

Jak pokazuje życie część z tych osób wybierając studia zdecydowanie minęło się z powołaniem. Mogą posiadać jednak pewne braki w jednych dziedzinach – nadrabiane innymi umiejętnościami.

Jeżeli przeczytaliście cały artykuł to już wiecie dlaczego informatyk nie koniecznie musi być programistą a programista informatykiem!
odp. dla niecierpliwych

Warto przeczytać

https://bulldogjob.pl/news/46-zawody-it-ios-android-developer