Liczba postów: 10
3
Dołączył: Jun 2013
Czas już zacząć myśleć o szukaniu jakiejś pracy, dlatego chciałbym się zorientować, jak wygląda praca programisty w typowej firmie IT? Na czym polegają jego zadania, jak wygląda typowy dzień z życia programisty np. Java czy innych języków programowania? Zazwyczaj większość programistów tak samo zaczyna swój dzień, czy jeśli ktoś jest programistą innego języka, to jego praca wygląda inaczej?
Liczba postów: 2,804
7
Dołączył: Jan 2012
Hmmmm praca programisty Javy nie różni się za bardzo od programisty PHP, C++, czy czegoś podobnego. Przychodzisz rano do pracy i klepiesz kod. Idziesz na przerwę, wracasz, klepiesz kod

Spotykasz się na meetingach gdzie omawiacie zadania jakie macie wykonać i je wykonujesz. W sumie to nie ma za bardzo co opisywać. Tak jak wspomniałem

W większości praca programisty to klepanie kodu
Liczba postów: 10
3
Dołączył: Jun 2013
Ale czy mamy jakieś wytyczne, wymagane przy pisaniu programów, aplikacji, czy piszemy jak nam się podoba ale żeby działało? Mamy np. schemat co po kolei trzeba zrobić i jak to ma wyglądać? Czy programując coś musimy korzystać z ogólnie przyjętych schematów w firmie, czy tutaj pozostaje nam już dowolność, byleby część aplikacji działało? A co w przypadku, gdy fragment funkcjonalności, którą napiszemy nie będzie współdziałała z innymi funkcjonalnościami napisanymi przez innych programistów?
Liczba postów: 2,804
7
Dołączył: Jan 2012
To już zależy od firmy. Niektóre pozwalają na dowolność, niektóre mają już wytyczne odnośnie programowania i jak ono ma wyglądać. Zazwyczaj programujesz w którymś z frameworków, tak żeby cała aplikacja była zrobiona jednolicie. I jak ktoś inny weźmie od Ciebie kod to żeby wiedział o co chodzi. Jednak już "ciało" części, którą masz zrobić, zależy od Ciebie
Liczba postów: 2,918
294
Dołączył: Jan 2012
Cubaza jak widać ma bardzo często takie przerwy w pracy programisty, bo ciągle na forum siedzi

Albo ma dużą podzielność uwagi
Wracając jednak do sedna wątku, praca programisty w głównej mierze opiera się na analitycznym myśleniu. Nie da się nauczyć programowania na pamięć, dlatego trzeba nauczyć się myślenia, jak coś przełożyć na kod w wybranym języku programowania.
Liczba postów: 2,804
7
Dołączył: Jan 2012
Ja bym to bardziej nazwał podzielnością uwagi

Dodatkowo praca zdalna na wiele pozwala
Liczba postów: 10
3
Dołączył: Jun 2013
(11-06-2013, 11:44 )Cubaza napisał(a): To już zależy od firmy. Niektóre pozwalają na dowolność, niektóre mają już wytyczne odnośnie programowania i jak ono ma wyglądać. Zazwyczaj programujesz w którymś z frameworków, tak żeby cała aplikacja była zrobiona jednolicie. I jak ktoś inny weźmie od Ciebie kod to żeby wiedział o co chodzi. Jednak już "ciało" części, którą masz zrobić, zależy od Ciebie
Czy masz na to jakiś okres czasu czy kiedy zrobisz wtedy gotowe? Jak ten cały kod jest łączony z kodem innych programistów i kompilowany? A jeśli masz błędy i nie możesz znaleźć ich rozwiązania?
Liczba postów: 2,804
7
Dołączył: Jan 2012
Zazwyczaj, przynajmniej u mnie, wygląda to tak, że rozpoczyna się projekt. Jest to załóżmy system zarządzania zamówieniami w drukarni. Wtedy rozdzielane są zadania. W najmniejszym zespole wygląda to tak, że jedna osoba zajmuje się logiką aplikacji, druga osoba zajmuje się tworzeniem klas i interfejsów dostępu do bazy danych. Kolejna osoba zajmuje się przygotowaniem danych do prezentacji, kolejna tworzeniem interfejsów webowych, inna grafiką i tak dalej.
Mniej więcej tak wygląda podział zadań.
Do rozdzielania zadań najczęściej używa się czegoś na styl bugzilli, bądź trac'a. Czyli masz listę użytkowników do każdego z nich możesz utworzyć zadanie, które po skończeniu określasz jako zamknięte, skończone, nienaprawione, naprawione itp. Wtedy wiadomo, że coś skończyłeś. Jeśli chodzi o czas to przy rozdzielaniu zadań mówi się, że powinno być to ukończone załóżmy za 2 tygodnie. Wtedy trzeba się sprężać żeby się wyrobić. Najczęściej nadgodziny wypadają pod koniec projektu bo wszyscy muszą coś robić i coś poprawiać.
Kolejnym aspektem jest to, że w korporacjach(albo przy zespołach o liczbie programistów większej niż jeden) masz system zarządzania wersjami. Jakiś GIT, albo coś podobnego. Wtedy Ty tworzysz sobie swoją część i w momencie jeśli coś ukończysz to wrzucasz to na serwer jako nową wersję. Tym sposobem kod jest łączony w jedną całość, podczas gdy każdy pracuje nad swoją częścią.
Jeśli chodzi o błędy to zawsze można się skonsultować z zespołem. Jednak jak pojawiają się błędy to jest bardzo duża szansa, że odpowiedź znajduje się na Google bądź stackoverflow. Poza tym nie wystawiasz na serwer coś co nie działa. To się mija z celem.
Liczba postów: 10
3
Dołączył: Jun 2013
Dzięki wielkie za szczegółowe wyjaśnienie tej kwestii. Ty pracujesz zawodowo jako programista java? Czy programujesz może w innym języku?
Liczba postów: 2,804
7
Dołączył: Jan 2012
W umowie mam napisane, że technologia to Java ;-) W rzeczywistości piszę aplikacje na platformę Android ;-) aczkolwiek na Androida programuje się w Javie więc niewiele się mylą ze stanowiskiem.
Od jakiegoś czasu pracuję jako programista, zatem mogę co nieco o jego pracy powiedzieć. Zazwyczaj wygląda to tak, że przychodzi się do pracy, robi kawę, herbatę a następnie przeglądasz listę rzeczy do zrobienia i je wykonujesz.
Liczba postów: 2,918
294
Dołączył: Jan 2012
Jeżeli ktoś jeszcze poszukuje informacji o pracy programisty, poruszaliśmy już ten wątek u nas na forum w trochę innym kontekście, ale wciąż związanym z pracą programisty, gdzie pojawiły się obszerne relacje (m.in. Cubazy). Warto się z nim zapoznać. Oprócz tego warto poczytać wiele tematów w dziale Informatyka gdzie jest sporo informacji dotyczących pracy programistów, języków programowania, które warto wybrać a także ogólnie pojętej nauki programowania i innych metod przydatnych przy pracy programisty.
Liczba postów: 29
6
Dołączył: Oct 2013
Czy sam fakt, że teraz jest bardzo dużo programistów javy na rynku może jakoś w przyszłości wpłynąć na "zapełnienie" się tej gałęzi branży informatycznej?
Liczba postów: 2,804
7
Dołączył: Jan 2012
Nie wydaje mi się. Przynajmniej nie przez najbliższe kilka/kilkanaście lat. Java w Polsce jest dalej mniej popularna niż PHP. A programiści PHP są dalej w Polsce poszukiwani. Generalnie przejrzyj wątek: Jakiego języka programowania warto się uczyć jeśli nie wiesz na jaką technologię się zdecydować.
Liczba postów: 8
1
Dołączył: Oct 2012
(01-10-2013, 11:47 )k..szuba napisał(a): Czy sam fakt, że teraz jest bardzo dużo programistów javy na rynku może jakoś w przyszłości wpłynąć na "zapełnienie" się tej gałęzi branży informatycznej?
Java ma taką zaletę że w miarę bezboleśnie można się przesiąść na C#

Generalnie panuje przekonanie, że umiejąc programować w jednym język u programowania, można bez problemu przesiąść się na inne. I tak znając C++ można bez większych trudności opanować C# i odwrotnie.
Liczba postów: 29
6
Dołączył: Oct 2013
Czyli uważacie, że teraz dobrze jest się zacząć uczyć javy gdyż znajdę w niej zatrudnienie bez problemu po studiach? Czy studia są konieczne do tego?
Liczba postów: 2,804
7
Dołączył: Jan 2012
Dobrze jest mieć studia do pracy. Nawet wymagane są na wiele stanowisk. Sama java nie da Ci pewnego zatrudnienia. Musisz umieć to robić i wykorzystywać a nie tylko się nauczyć.
Liczba postów: 29
6
Dołączył: Oct 2013
A ja myślałem, że liczy się tylko wiedza praktyczna a studia to tylko taki dodatek jak kto woli... A czy studia mogą podwyższać zarobki? Tzn. ta sama osoba ze studiami na tym samym stanowisku zarobi więcej niż osoba na tym samym stanowisku bez studiów?
Liczba postów: 2,804
7
Dołączył: Jan 2012
Nie jest to regułą. U mnie w firmie pracują koleś po kulturoznawstwie. Pracuje też dziewczyna po studiach matematycznych. Więc studia nie są wyznacznikiem tego, że dostaniesz pracę jako programista. Liczy się wiedza i to jak pójdzie Ci test wiedzy na rozmowie kwalifikacyjnej.
Liczba postów: 29
6
Dołączył: Oct 2013
Na czym te testy wiedzy polegają i jakie najczęściej pytania zadaje się na rozmowie kwalifikacyjnej? Czyli nawet jeżeli ktoś skończy kulturoznawstwo i informatykę, to dostają na start takie same zarobki? A co w przypadku gdy w ogłoszeniu jest wyraźnie napisane, że wymaganie wykształcenie informatyczne a ktoś kto skończył np. ekonomię - ale jest dobrym programistą?
Liczba postów: 2,918
294
Dołączył: Jan 2012
Testy wiedzy pozwalają już na wstępie odsiać osoby, które nie mają odpowiedniej wiedzy bądź jej podstaw, która jest wykorzystywana w pracy bądź na danym stanowisku. Bardzo dobrze, że coraz więcej firm nie patrzy na skończony kierunek studiów, lecz na umiejętności danej osoby oferując np. jakieś testowe zadania do zrobienia lub właśnie testy wiedzy.
k..szuba napisał(a):Czyli nawet jeżeli ktoś skończy kulturoznawstwo i informatykę, to dostają na start takie same zarobki?
Jeżeli ktoś po kulturoznawstwie jest dobry to dlaczego miałby dostawać za to niższe wynagrodzenie? Studia informatyczne nie gwarantują nam zarobków na określonym poziomie. Tak samo jak nie zagwarantują pracy,
k..szuba napisał(a):A co w przypadku gdy w ogłoszeniu jest wyraźnie napisane, że wymaganie wykształcenie informatyczne a ktoś kto skończył np. ekonomię - ale jest dobrym programistą?
Od tego właśnie są listy motywacyjne w których motywuje się i pisze, dlaczego akurat to Ty jesteś odpowiednim kandydatem na dane stanowisko. Aczkolwiek teraz obserwuje się tendencję do rezygnacji z pisania listów motywacyjnych. W sumie to bardzo dobrze bo większość osób i tak je kopiuje zmieniając tylko dane.