junior, początki, słabe kody i takie tam.

junior, początki, słabe kody i takie tam.
0

cześć ;]
od jakiś paru tygodni (3-4, sam już nie pamiętam) pracuję jako młodszy programista.
kilka małych rzeczy już załapałem, ale wciąż moja wiedza znacząco odbiega od innych. zrobiłem pare małych funkcjonalności, ludzi w pracy mam spoko, costam mi zawsze podpowiedzą :) mam też opiekuna który (wydaje mi się) ma mega ogromną wiedzę, a przynajmniej przy tej jednej wielkiej aplikacji wie chyba wszystko.
W każdym razie przeważnie jak skończę przychodzi on i... ;D mówi co by tu poprawić. z jednej strony to fajne, bo cośtam się nauczę zawsze, z drugiej to troche wkruzające, bo wydaje mis ie ze cos wymyslilem/zrobilem zeby zdiałało w miarę optymalnie, a potem i tak w 50-60% to muszę zmieniać na jego wizję ;)
co mnie też denerwuje, myslalem ze umiem juz jako tako c#/.net, sam sobie pisałem projekty na uczelnie, a tu w pracy... no lekkie zderzenie ze ścianą szczerze.
jakie u was były początki? szybko staliście się bardziej samodzielnymi pracownikami?
jak to w ogole jest w firmach, jeżeli chodzi o kod. Czy są firmy robiące nieco mniejsze aplikacje, gdzie kod jest 'łatwiejszy', 'brudniejszy' czy jak to tam nazwać? ja niestety pracuje w zespole 25 osobowym, a nad całym projektem siedzi ~80 ludzi... robię głównie w .net i troszkę javascripta jak mi się akurat zadanie we frontendzie trafi.
ciekawi mnie też czy są jakieś małe firmy (albo inaczej - firmy nie mające dużego działu it, gzdie programowaniem zajmuje się taki 'zwyczajny' informatyk), gdzie tworzy się kod raczej na potrzeby wewnętrzne ? (nie wiem jakieś api do komunikacji z innymi firmami, jakieś systemy z formularzami i takie pierdółki?

KE
KE
  • Rejestracja:prawie 8 lat
  • Ostatnio:prawie 8 lat
  • Postów:30
0

   

edytowany 1x, ostatnio: KMODE_EXCEPTION_NOT_HANDLED
LukeJL
  • Rejestracja:około 11 lat
  • Ostatnio:około godziny
  • Postów:8403
1

a potem i tak w 50-60% to muszę zmieniać na jego wizję

Wykorzystaj to i dopytaj się szczegółów, dlaczego on uważa, że coś powinno być zrobione tak czy nie inaczej. Często ludzie bardziej doświadczeni zrobili już na maksa dużo pomyłek w przeszłości i teraz wiedzą, czego unikać i co w jakiej sytuacji się może rozkraczyć. Proś o wędkę, a nie rybę. Nie bój się przyznać, że czegoś nie rozumiesz.

Zakładam optymistycznie, że faktycznie tamten "opiekun" ma rację i ma spoko podejście - a nie zawsze tak musi być, osoba doświadczona również może się też mylić, albo mieć różne odchyły nie zawsze sensowne.

A ten fragment:

W każdym razie przeważnie jak skończę przychodzi on i... ;D mówi co by tu poprawić.
z jednej strony to fajne, bo cośtam się nauczę zawsze, z drugiej to troche wkruzające,
bo wydaje mis ie ze cos wymyslilem/zrobilem zeby zdiałało w miarę optymalnie,
a potem i tak w 50-60% to muszę zmieniać na jego wizję ;)

sugeruje jakieś braki w komunikacji (nie wiem z czyjej strony, może nikt nie zawinił, ale jeśli junior robi coś przez jakiś czas, i potem okazuje się, że nie tak jak trzeba - to gdzieś zawiodła komunikacja/organizacja pracy w zespole).

  • może za mało/za rzadko się konsultujesz (jak są takie problemy, to lepiej upewnić się np. "zrobiłbym to w sposób X, czy myślisz, że będzie to dobre?")
  • może za słabo ci tłumaczą, może zadania są zbyt słabo określone, może zbyt mało poświęcają czasu na wdrożenie cię w system
  • może przydzielili cię do złego kawałka kodu (jeśli "opiekun" cały czas się czepia, to może sam powinien robić te taski, które tobie wyznaczył? Niestety, pewni ludzie mają silne poczucie "code ownership" i brak jakiejkolwiek umiejętności delegacji zadań - wtedy cokolwiek zrobisz i tak będzie źle, bo nie będzie tak idealnie jak tamten ktoś by zrobił).
  • z drugiej strony może faktycznie masz jeszcze słabe skille techniczne, i piszesz zły kod, nie można tego wykluczyć.

jakie u was były początki? szybko staliście się bardziej samodzielnymi pracownikami?

To zależy. Jeśli wchodzisz do projektu, który jest już rozwijany od jakiegoś czasu, to zwykle na początku będziesz niesamodzielny i będziesz musiał pytać o wszystko. Doświadczenie ogólnoprogramistyczne nie ma nic do rzeczy, bo nowy projekt = nowe wyzwanie. Każdy jest juniorem, jak wchodzi jako nowa osoba do istniejącego już projektu, choćby miał z 10 lat doświadczenia.

Chyba, że zaczynasz cały projekt od nowa. Ale wtedy też raczej nie będziesz samodzielnym pracownikiem, bo samodzielność raczej rzadko istnieje w firmach IT, nawet jest traktowana jak wada w środowiskach, gdzie dużo ważniejsza jest praca zespołowa (mnie się to nie podoba specjalnie, praca zespołowa to zwykle zabójca produktywności, ale cóż).


0

nieno jasne żę pytam czemu tak a nie inaczej ;) i mi tłumaczy i wtedy wiem. ale trochę to wkurzające ;] ogolnie jest spoko. fakt mało pytam, ale na szczescie mam duzo czasu no i lubie popróbować pół dnia po swojemu a potem dopiero pytać.
no moze te 50-60% to zle powieziane...

a co do reszty pytań wypowie się ktoś? są takie małe firmy które zatrudniaja 'pojedynczych' programistow?

KE
KE
  • Rejestracja:prawie 8 lat
  • Ostatnio:prawie 8 lat
  • Postów:30
0

   

edytowany 1x, ostatnio: KMODE_EXCEPTION_NOT_HANDLED
Mjuzik
  • Rejestracja:ponad 8 lat
  • Ostatnio:2 minuty
  • Postów:712
0

Ciesz się, bo nie każdy junior ma luksus code review. W mojej poprzedniej firmie gdzie projekty były trochę mniejsze i mniej budżetowe nikt mi niczego poprawiał, zero code review. ma działać i w miarę nie nierozsypywać reszty. W obecnej firmie wygląda to zupełnie inaczej, projekty trochę większe, niektóre na dużo wyższą skalę no i jest code review. Podobnie jak Ty również mam wiele feedback'ów kodu, ale to tylko mnie motywuje do dalszej pracy i nauki.

V-2
  • Rejestracja:prawie 8 lat
  • Ostatnio:9 miesięcy
  • Postów:671
0
łestajs napisał(a):

W każdym razie przeważnie jak skończę przychodzi on i... ;D mówi co by tu poprawić. z jednej strony to fajne, bo cośtam się nauczę zawsze, z drugiej to troche wkruzające, bo wydaje mis ie ze cos wymyslilem/zrobilem zeby zdiałało w miarę optymalnie, a potem i tak w 50-60% to muszę zmieniać na jego wizję ;)

I dobrze, bo zawsze będą zmiany. Nawet jak architektura będzie w sam raz, to się np. niespodziewanie zmienią wymagania klienta i to jest codzienność. Dlatego sztuka polega na pisaniu w taki sposób, żeby w razie potrzeby wszystko się dało łatwo i względnie bezboleśnie przebudować.

co mnie też denerwuje, myslalem ze umiem juz jako tako c#/.net, sam sobie pisałem projekty na uczelnie, a tu w pracy... no lekkie zderzenie ze ścianą szczerze.

Sam akurat nie kończyłem informatyki, ale powszechny pogląd jest taki, że studia tak sobie przygotowują do zawodu programisty.

Pisanie wyłącznie "samemu sobie", co gorsza w myśl zasady "zaliczyć i zapomnieć o kodzie" nie rozwija dobrych nawyków, a wręcz przeciwnie.

jak to w ogole jest w firmach, jeżeli chodzi o kod. Czy są firmy robiące nieco mniejsze aplikacje, gdzie kod jest 'łatwiejszy', 'brudniejszy' czy jak to tam nazwać?

Wedlug mnie lepiej pracować w firmach, która robi projekty na zlecenia zewnętrzne. Częściej będą to bowiem projekty tworzone od zera, albo w każdym razie od wczesnych stadiów. Wtedy można się silić na pisanie wszystkiego czysto i nie ma problemu, że nie znamy historycznego kontekstu systemu.

Firmy produktowe, które robią swój własny soft, przeważnie rozwijają go od dawien dawna (no chyba, że akurat załapiemy się do startupu, gdzie z kolei będzie zjawisko pośpiechu). Wskutek tego nieraz ciągnie się za nimi ogon długu technologicznego i w kodzie trudno się rozeznać, tyle tam jest warstw syfu. Występuje wówczas patologiczne zjawisko "najstarszych górali", którzy są żywą formą dokumentacji i do których trzeba pielgrzymować po oświecające wskazówki, jeśli chcemy zrobić cokolwiek produktywnego.

ja niestety pracuje w zespole 25 osobowym

To już nie "zespół", tylko jakiś kołchoz. Zespół liczący więcej niż 10 osób to sprawa bardzo podejrzana. Nawet Jezusowi to nie wyszło.

Warto zwrócić uwagę, że wielkość zespołu nie ma związku z wielkością samej firmy. Firma może mieć kilkadziesiąt tysięcy pracowników, a mimo to będą w niej małe (normalne) teamy.

ciekawi mnie też czy są jakieś małe firmy (albo inaczej - firmy nie mające dużego działu it, gzdie programowaniem zajmuje się taki 'zwyczajny' informatyk), gdzie tworzy się kod raczej na potrzeby wewnętrzne ? (nie wiem jakieś api do komunikacji z innymi firmami, jakieś systemy z formularzami i takie pierdółki?

Pewnie są, ale ja osobiście nie chciałbym w takiej pracować i z wielu względów bym to odradzał, szczególnie komuś początkującemu.


Nie ma najmniejszego powodu, aby w CV pisać "email" przed swoim adresem mailowym, "imię i nazwisko" przed imieniem i nazwiskiem, ani "zdjęcie mojej głowy od przedniej strony" obok ewentualnego zdjęcia. W drugiej firmie której już pracuję mam palących marihuanę programistów [...] piszą kod "leniwie", często nie wysilając się, rozwlekając ten kod, unikając np. programowania funkcyjnego (mówię tutaj o lambdach w javie).
Kliknij, aby dodać treść...

Pomoc 1.18.8

Typografia

Edytor obsługuje składnie Markdown, w której pojedynczy akcent *kursywa* oraz _kursywa_ to pochylenie. Z kolei podwójny akcent **pogrubienie** oraz __pogrubienie__ to pogrubienie. Dodanie znaczników ~~strike~~ to przekreślenie.

Możesz dodać formatowanie komendami , , oraz .

Ponieważ dekoracja podkreślenia jest przeznaczona na linki, markdown nie zawiera specjalnej składni dla podkreślenia. Dlatego by dodać podkreślenie, użyj <u>underline</u>.

Komendy formatujące reagują na skróty klawiszowe: Ctrl+B, Ctrl+I, Ctrl+U oraz Ctrl+S.

Linki

By dodać link w edytorze użyj komendy lub użyj składni [title](link). URL umieszczony w linku lub nawet URL umieszczony bezpośrednio w tekście będzie aktywny i klikalny.

Jeżeli chcesz, możesz samodzielnie dodać link: <a href="link">title</a>.

Wewnętrzne odnośniki

Możesz umieścić odnośnik do wewnętrznej podstrony, używając następującej składni: [[Delphi/Kompendium]] lub [[Delphi/Kompendium|kliknij, aby przejść do kompendium]]. Odnośniki mogą prowadzić do Forum 4programmers.net lub np. do Kompendium.

Wspomnienia użytkowników

By wspomnieć użytkownika forum, wpisz w formularzu znak @. Zobaczysz okienko samouzupełniające nazwy użytkowników. Samouzupełnienie dobierze odpowiedni format wspomnienia, zależnie od tego czy w nazwie użytkownika znajduje się spacja.

Znaczniki HTML

Dozwolone jest używanie niektórych znaczników HTML: <a>, <b>, <i>, <kbd>, <del>, <strong>, <dfn>, <pre>, <blockquote>, <hr/>, <sub>, <sup> oraz <img/>.

Skróty klawiszowe

Dodaj kombinację klawiszy komendą notacji klawiszy lub skrótem klawiszowym Alt+K.

Reprezentuj kombinacje klawiszowe używając taga <kbd>. Oddziel od siebie klawisze znakiem plus, np <kbd>Alt+Tab</kbd>.

Indeks górny oraz dolny

Przykład: wpisując H<sub>2</sub>O i m<sup>2</sup> otrzymasz: H2O i m2.

Składnia Tex

By precyzyjnie wyrazić działanie matematyczne, użyj składni Tex.

<tex>arcctg(x) = argtan(\frac{1}{x}) = arcsin(\frac{1}{\sqrt{1+x^2}})</tex>

Kod źródłowy

Krótkie fragmenty kodu

Wszelkie jednolinijkowe instrukcje języka programowania powinny być zawarte pomiędzy obróconymi apostrofami: `kod instrukcji` lub ``console.log(`string`);``.

Kod wielolinijkowy

Dodaj fragment kodu komendą . Fragmenty kodu zajmujące całą lub więcej linijek powinny być umieszczone w wielolinijkowym fragmencie kodu. Znaczniki ``` lub ~~~ umożliwiają kolorowanie różnych języków programowania. Możemy nadać nazwę języka programowania używając auto-uzupełnienia, kod został pokolorowany używając konkretnych ustawień kolorowania składni:

```javascript
document.write('Hello World');
```

Możesz zaznaczyć również już wklejony kod w edytorze, i użyć komendy  by zamienić go w kod. Użyj kombinacji Ctrl+`, by dodać fragment kodu bez oznaczników języka.

Tabelki

Dodaj przykładową tabelkę używając komendy . Przykładowa tabelka składa się z dwóch kolumn, nagłówka i jednego wiersza.

Wygeneruj tabelkę na podstawie szablonu. Oddziel komórki separatorem ; lub |, a następnie zaznacz szablonu.

nazwisko;dziedzina;odkrycie
Pitagoras;mathematics;Pythagorean Theorem
Albert Einstein;physics;General Relativity
Marie Curie, Pierre Curie;chemistry;Radium, Polonium

Użyj komendy by zamienić zaznaczony szablon na tabelkę Markdown.

Lista uporządkowana i nieuporządkowana

Możliwe jest tworzenie listy numerowanych oraz wypunktowanych. Wystarczy, że pierwszym znakiem linii będzie * lub - dla listy nieuporządkowanej oraz 1. dla listy uporządkowanej.

Użyj komendy by dodać listę uporządkowaną.

1. Lista numerowana
2. Lista numerowana

Użyj komendy by dodać listę nieuporządkowaną.

* Lista wypunktowana
* Lista wypunktowana
** Lista wypunktowana (drugi poziom)

Składnia Markdown

Edytor obsługuje składnię Markdown, która składa się ze znaków specjalnych. Dostępne komendy, jak formatowanie , dodanie tabelki lub fragmentu kodu są w pewnym sensie świadome otaczającej jej składni, i postarają się unikać uszkodzenia jej.

Dla przykładu, używając tylko dostępnych komend, nie możemy dodać formatowania pogrubienia do kodu wielolinijkowego, albo dodać listy do tabelki - mogłoby to doprowadzić do uszkodzenia składni.

W pewnych odosobnionych przypadkach brak nowej linii przed elementami markdown również mógłby uszkodzić składnie, dlatego edytor dodaje brakujące nowe linie. Dla przykładu, dodanie formatowania pochylenia zaraz po tabelce, mogłoby zostać błędne zinterpretowane, więc edytor doda oddzielającą nową linię pomiędzy tabelką, a pochyleniem.

Skróty klawiszowe

Skróty formatujące, kiedy w edytorze znajduje się pojedynczy kursor, wstawiają sformatowany tekst przykładowy. Jeśli w edytorze znajduje się zaznaczenie (słowo, linijka, paragraf), wtedy zaznaczenie zostaje sformatowane.

  • Ctrl+B - dodaj pogrubienie lub pogrub zaznaczenie
  • Ctrl+I - dodaj pochylenie lub pochyl zaznaczenie
  • Ctrl+U - dodaj podkreślenie lub podkreśl zaznaczenie
  • Ctrl+S - dodaj przekreślenie lub przekreśl zaznaczenie

Notacja Klawiszy

  • Alt+K - dodaj notację klawiszy

Fragment kodu bez oznacznika

  • Alt+C - dodaj pusty fragment kodu

Skróty operujące na kodzie i linijkach:

  • Alt+L - zaznaczenie całej linii
  • Alt+, Alt+ - przeniesienie linijki w której znajduje się kursor w górę/dół.
  • Tab/⌘+] - dodaj wcięcie (wcięcie w prawo)
  • Shit+Tab/⌘+[ - usunięcie wcięcia (wycięcie w lewo)

Dodawanie postów:

  • Ctrl+Enter - dodaj post
  • ⌘+Enter - dodaj post (MacOS)