Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> jak wygląda praca w zespole programistów?, (młodszy programista Symfony2, PHP)
koszykarze
post 23.01.2016, 01:14:13
Post #1





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 10.10.2015
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


Czego może spodziewać się początkujący programista (Symfony2) w pierwszej pracy w zespole?

Załóżmy zaczynam pracę wg ogłoszenia, gdzie w wymaganiach mówi się o 2 letnim doświadczeniu z:
-Symfony2
-Git
-Doctrine
-(twig, html, css, mysql)


Czego mam się spodziewać w kwestii organizacji pracy, podziału obowiązków.

Jakie przykładowe zadania daje się takim nowicjuszom w pierwszych tygodniach, miesiącach? Oddzielny mały projekt do samodzielnej pracy, czy małe zadania w dużych projektach? Nie bardzo widzę, by starzy programiści mieli dzielić się swoimi obowiązkami z nowicjuszem, którego styl i umiejętności są zagadką.

Czy to jest zwykle jedno pomieszczenie, dla całego zespołu z fruwającymi pytaniami, pomysłami czy odizolowane pomieszczenia, a może praca w domu i spotykanie się z zespołem 2 razy w tygodniu?


Wiadomo, że to zależy od tego i owego, że wszędzie inaczej.

Wiem, że aż prosi się, by ponabijać z autora tematu, ale mimo wszystko proszę o w miarę poważne i łagodne potraktowanie.


Może jakieś blogi o tym, artykuły, książki? Workflow, to jest to słowo do google?
Go to the top of the page
+Quote Post
aniolekx
post 23.01.2016, 09:12:33
Post #2





Grupa: Zarejestrowani
Postów: 340
Pomógł: 46
Dołączył: 31.07.2009
Skąd: A

Ostrzeżenie: (0%)
-----


podejrzewam ze nie ma jdenego starndardu, wszystko zalezy od danej firmy, ja na poczatku musialem:
- przygotowac swoje stanowisko pracy (oczywiscie nie bylem pozostawiony sam sobie),
- w kolejnych dniach zapoznac sie z kodem projektu (rozqijamy tylko jeden projekt),
- a pozniej dostawalem pierwsze proste zadania, z czasem coraz trudniejsze

heh czas szybko leci smile.gif dzisaj to ja w firmie szacuje czasochonnosc zadan i rodzeilam je programistom ;p
Go to the top of the page
+Quote Post
Dejmien_85
post 28.01.2016, 22:11:18
Post #3





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

Ostrzeżenie: (0%)
-----


Drogi przyjacielu,

Jako osoba, która pracowała w różnych firmach o różnej organizacji, powiadam Ci - wszystko zależy od firmy.

Ale na 99% wszystko zależy od projektu. Gdy firma ma duży projekt, wtedy wcielają Cię po prostu do zespołu. Jeśli projekt jest malutki, wtedy mogą dać Ci cały projekt - choć na starcie to raczej mało prawdopodobne, bo firma nie zleci nowemu materiałowi, którego jeszcze nie poznali, wykonania zadania od A do Z, stawiając swoją reputację na szali.

W większych firmach przeważnie pracuje się w metodykach zwinnych, poczytaj sobie o Agile, Scrum, Kanbanie, Sprintach, Standupach, Retrospekcjach itd.

I pamiętaj - nawet gdyby projekt miał być ogromniaście ogromny, wtedy i tak robi się go wdrażając jedną funkcjonalność po drugiej, małymi kroczkami. Więc jako nowicjusz na początku pewnie byś dostawał jakieś proste zadania, później coraz trudniejsze - choć wcale nie musi tak być. Ktoś może Cię po prostu zapytać - "Kolego, zajmiesz się tym?".

I pamiętaj - jeśli masz z czymś problemy, to od razu idź po pomoc, nie bój się pytać innych, odbierz to jako konsultacje z profesjonalistami.

Najgorsze co możesz zrobić to... powiedzieć, że poradzisz sobie z jakimś zagadnieniem, gdy wiesz, że tego aktualnie nie jesteś w stanie zrobić, a następnie mówić wszystkim, że jest OKAY, kiedy tak naprawdę siedzisz cicho przy kompie i szukasz na google rozwiązania. To najgorsze co możesz zrobić. W zespole liczy się komunikacja, jeśli widzisz w czymś problem, to od razu gadasz o tym z kolegami i informujesz kierownika projektu/managera/przełożonego/osobę odpowiedzialną za projekt, że jest problem i że coś zajmie sporo dłużej.

Co do work-flowu.

Pracując według "Agile'a".

1. Przed projektem jest planowanie. Wtedy cały zespół się zbiera, przychodzi Analityk Biznesowy (osoba, która gadała z klientem i wyciągnęła czego klient chce), a następnie mówi co będzie trzeba zrobić. Tutaj wyznacza się rzeczy do zrobienia w określonym czasie. Np. Ustala się, że w ciągu tygodnia zrobi się rzecz X, Y, Z. Następnie ten okres czasu nazywa się "sprintem".
Później rzeczy X, Y, Z rozpisuje się na pojedyncze taski, typu: "przygotować schemat bazy danych", "stworzenie widoku dla strony głównej", itd. Głównie tworzy się "zadania", które nie powinny zajać dłużej niż 1 dnia. Na planowaniu ustala się także, kto ma się czym zająć.
2. Po planowaniu programiści zbierają swoje tyłki z sali konferencyjnej (tam przeważnie się planuje), następnie idą do swoich stanowisk i zaczynają pracować. Każdy wie co ma zrobić w danym dniu i to robi, aż do końca dnia.
3. Następnego dnia, rano, są tak zwane "stand upy", "daily", kiedy to zespół spotyka się rano i każdy na szybko streszcza co zrobił poprzedniego dnia, jakie spotkał problemy i co planuje zrobić dalej. Wszyscy na "stand upie" informują się nawzajem co zrobili itd. I tak sobie mijają dni, aż do końca sprintu, kiedy to następuje "code freeze" (wtedy wszyscy przestają wdrażać nowe funkcjonalności i jedynie poprawiają bugi).
4. Następnie jest "demo", czyli kontaktuje się z klientem, przedstawia mu to co zostało zrobione (prezentacja jest przeważnie zdalnie prowadzona).
5. Po spotkaniu z klientem następuje retrospekcja, czyli zespół spotyka się w sali i każdy mówi co poszło dobrze, co źle, jak można to poprawić. Każdy przedstawia swoje propozycje, następnie jest głosowanie, najlepsze propozycje są spisywane i próbuje się ich trzymać w następnym sprincie.

I znów... następnego tygodnia jest Planowanie, kodowanie, codziennie "stand upy", później code freeze, demo i retrospekcja.

Co do samej pracy - są różne oprogramowania do zarządzania projektami, bardzo popularna jest Jira i Confulence. Tam przechowuje się informacje dotyczące projektu, a także zapisuje wszystkie taski i aktualizuje dane kto pracuje nad czym (masz tabelkę typu "to do", "doing", "in testing", "done" i przeciągasz sobie swoje taski odpowiednio).

Co do kontroli wersji - teraz prym wiedzie GIT oraz GitFlow (jeden ze sposobów korzystania z Gita). Wystarczy, że poczytasz o "GitFlow" i będziesz wiedział wszystko o tym, jak się zarządza kodem).

Mam nadzieję, że te informacje coś Ci powiedzą.

Przy okazji - z powyższego sytemu nie korzystają wszystkie firmy, są takie, które mają swoje prawa, lub swoje "bezprawie". Pracowałem w kilku firmach (na początku mojej kariery), gdzie tak naprawdę była kompletna samowolka, po prostu zebrali grupę programistów, którzy nie mieli ani doświadczenia, ani pojęcia o pracy zespołowej i przekazywali im projekty - i każdy ORAŁ jak MÓGŁ (i było zabawnie). biggrin.gif

Także wszystko zależy od tego gdzie trafisz. ; )

Ten post edytował Dejmien_85 28.01.2016, 22:15:39
Go to the top of the page
+Quote Post
koszykarze
post 10.02.2016, 23:27:30
Post #4





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 10.10.2015
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


dziękuję, solidne wyjaśnienia.
Bardzo to ciekawe i trochę przerażające. Średnio wierzę w siebie i zastanawiam się czy w takich zespołach jest miejsce dla kogoś kto nie wygrywał olimpiad matematycznych, kogo zadowoli te 3500 w zamian za cierpliwość przez kilka miesięcy i gwarancję nie wyrzucenia z pracy.

-----------------------------TEGO NIE CZYTAĆ---------------
(Chętnie bym widział siebie w takim zespole za 3 lata. Uczę się Symfony od 1,5 roku i ciągle mam wrażenie, że uczę się podstaw. Zrobiłem jakieś tam projekty w Symfony, ale np. temat DependencyInjection, CompilerPass zacząłem zgłębiać miesiąc temu. Wzorce projektowe od 3 miesięcy. Jakbym miał pytać o wszystko co wpisuję w google, to dostałbym w mordę pierwszego dnia i wywaliliby mnie po 3 dniach.

Ciągle biję się z myślami ja1 ("przygarbiony tchórz") mówi: daj se spokój, nie wychylaj się, ucz się spokojnie w domu, za 1,2 lata jak poczujesz, że jest czas to aplikuj, aplikujesz teraz wyjdziesz na debila, wywalą cię i nawbijasz sobie kompleksów i poddasz się; i ja2 ("jestem super") mówi: każdy dzień w takim zespole to 10x szybsze doświadczenie, przecież kiedyś ci wszyscy programiści musieli zacząć, kim jesteś? jesteś zwycięzcą!)

----------------------------------------------------

Dejmien_85 Mam dodatkową prośbę byś podał mi kilka przykładowych zadań "na jeden dzień". Chciałbym wiedzieć ile mi brakuje bym mógł aplikować o pracę.

Domyślam się, że zwykle 'Tomek' w każdym projekcie robi mapowanie w doctrine, 'Romek' w Twigu, 'Marek' zawsze robi autoryzację i każdy z nich szybciej robi to czym zajmuje się częściej (a może się mylę?), ale tak uśredniając bardzo będę wdzięczny o przykłady zadań na jeden dzień.
Go to the top of the page
+Quote Post
aniolekx
post 11.02.2016, 08:35:08
Post #5





Grupa: Zarejestrowani
Postów: 340
Pomógł: 46
Dołączył: 31.07.2009
Skąd: A

Ostrzeżenie: (0%)
-----


yo, takim mysleniem narnujesz czas, idz odrazu do firmy jako junior, wszystko co sobie wyobrazasz w glowie to tylko wyobrazenie oderwane od rzeczywistosci. Dwie najwazniejsze rzeczy juz masz pokore i chec uczenia sie, pewnosc siebie przyjdzie wraz z doswiadczeniem. Powodzenia.
Go to the top of the page
+Quote Post
koszykarze
post 11.02.2016, 16:21:39
Post #6





Grupa: Zarejestrowani
Postów: 119
Pomógł: 0
Dołączył: 10.10.2015
Skąd: Warszawa

Ostrzeżenie: (0%)
-----


dzięki.
Go to the top of the page
+Quote Post
Dejmien_85
post 27.04.2016, 17:28:22
Post #7





Grupa: Zarejestrowani
Postów: 251
Pomógł: 23
Dołączył: 23.04.2013

Ostrzeżenie: (0%)
-----


Cytat(koszykarze @ 11.02.2016, 00:27:30 ) *
Domyślam się, że zwykle 'Tomek' w każdym projekcie robi mapowanie w doctrine, 'Romek' w Twigu, 'Marek' zawsze robi autoryzację i każdy z nich szybciej robi to czym zajmuje się częściej (a może się mylę?), ale tak uśredniając bardzo będę wdzięczny o przykłady zadań na jeden dzień.


Kolego, za dużo rozmyślasz. ; )

Musisz po prostu iść do pracy i nie poddawać się. I nie bój się porażek, ja na początku swojej kariery zostałem zwolniony z dwóch firm za słabą efektywność. Było ciężko, byłem załamany, ale nie poddałem się. Teraz po latach gdy chce zmienić pracę, to HR proponuje mi podwyżkę i zachęca do zostania - ale to tylko efekt ciężkiej pracy, nauki i zdobywania doświadczenia (przez to trzeba po prostu przejść, nikt nie jest Seniorem od samego początku).

Nie bój się zwolnienia, to może Cię czekać, to może się zdarzyć, przygotuj się na taką ewentualność. Na początku każdy jest niedoświadczony i popełnia błędy, ale później człek się uczy, rozwija i wszystko idzie dobrą drogą.

Najwięcej doświadczenia zdobędziesz w pracy, samemu tak naprawdę uczy się powoli. A jeśli już chcesz się koniecznie nauczyć czegoś samemu, to postaw sobie jakieś zadanie, np. stworzenie konkretnego serwisu. Uczyć się Symfony dla samego uczenia się możesz przez rok czasu i za wiele się nie nauczysz.

Dobrym sposobem na naukę jest też przyłączenie się do jakiegoś projektu open-source i wykonywanie zadań, likwidację bugów, na githubie jest też masa kodu do podejrzenia. ; )

A jeśli nie wiesz jak zacząć, wtedy napisz na priv, coś Ci wymyśle. : D

Ten post edytował Dejmien_85 27.04.2016, 17:29:36
Go to the top of the page
+Quote Post
NetPax
post 30.01.2018, 19:35:19
Post #8





Grupa: Zarejestrowani
Postów: 33
Pomógł: 1
Dołączył: 30.11.2011

Ostrzeżenie: (0%)
-----


Cześć, chciałbym odświeżyć temat, mógłby ktoś tak przykładowe "taski" opisać tak jak pytał poprzednio. Mnie głównie interesuje Front-end ale może być z innych języków.

Dejmien_85 Mam dodatkową prośbę byś podał mi kilka przykładowych zadań "na jeden dzień". Chciałbym wiedzieć ile mi brakuje bym mógł aplikować o pracę.

Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 28.03.2024 - 15:55