Zależy od firmy i jej poziomu rozwinięcia. Jak masz jakiś JanuszSoft, to może być tak, jak piszesz. Z reguły dołączasz do jakiegoś projektu. Raczej na początku jest luźno, bo się musisz rozeznać w temacie, co robi firma (w szczegółach, ogólniki powinieneś znać na rekrutacji) i jaki ma ekosystem. Czyli zapoznajesz się z narzędziami, których używa, repozytoriami, ogólnie całym procesem tworzenia oprogramowania, dokumentacją (z grubsza, co gdzie jest i w jakim miejscu szukać w przyszłości). W międzyczasie zaczynasz łapać, kto jest doświadczonym deweloperem i do kogo możesz w razie czego przyjść z pytaniami.
Natomiast jak już się wdrożysz, to możesz mieć wiele zadań. Na przykład do moich obowiązków należy głównie rozwijanie konkretnego programu. Samo kodowanie to mi może zajmuje 20% czasu. Większość czasu spędza się na analizie problemu, szukaniu najlepszego rozwiązania tak, aby kod spełniał wymagania i jednocześnie zasady określone przez SOLID. Zawsze piszę też testy, więc niejako muszę przemyśleć też tę kwestię. Do tego dochodzi sprawdzanie maili, uczestnictwo w spotkaniach/szkoleniach/daily. Często przygotowuje się dokumentację lub prezentacje, jeśli chce się pokazać produkt innym zainteresowanym.
Co do wyboru zadań to jest tak, że w systemie JIRA są zazwyczaj nierozpoczęte taski. JIRA to takie powiedzmy forum, w który zgłasza się tickety (tego się raczej na polski nie tłumaczy, mówisz ticket i każdy wie, o co chodzi) odnośnie brakujących funkcjonalności, czy znalezionych błędów. Ticket powinien być tak zdefiniowany, by każdy deweloper w projekcie wiedział o co chodzi. Zazwyczaj na grupowych spotkaniach dowiadujesz się, które zadnia z JIRY mają najwyższy priorytet, bo te potrafią się zmieniać. Wybierasz zadanie o najwyższym priorytecie i je robisz.
A zadania możesz mieć różne - totalnie teraz zmyślam. Na przykład masz w wymaganiach napisane, by przygotować moduł do rysowania wykresów 2D. Moduł ma wyświetlać w przeglądarce dane, które są przechowywane w plikach CSV (dane w kolumnach, oddzielone przecinkiem). Jeśli pliki zawierają nagłówki, to mają one być wykorzystane do podpisania osi. Dodatkowo powinieneś zaimplementować też możliwość powiększania takiego wykresu.
W powyższym zadaniu jest pełno aspektów do przemyślenia. Na przykład co, jak za miesiąc ktoś będzie chciał użyć plików txt czy xml do przechowywania danych? Wypadałoby więc napisać ten moduł w dość elastyczny sposób. A co jak danych będzie brakować w którejś kolumnie? Takie przypadki też trzeba obsłużyć. Może warto więc wypełniać takie dane średnimi wartościami z całej kolumny albo usunąć całe wiersze, albo interpolować wartości, zanim trafią one na wykres? Czy zoomowanie zrealizować w obu osiach na raz, czy niezależnie w każdej? Niby prosty task, a w zasadzie trzeba go rozbić na kilka mniejszych ;)