Jestem w podobnej sytuacji jak autor tematu. Pierwszą pracę straciłem po trzech miesiącach, drugą po miesiącu.
Przez cały okres liceum i studiów ludzie mi wmawiali, że w programowaniu najważniejsza jest komunikacja z zespołem. Bzdura, w obydwóch firmach wyglądało to tak, że rozmawialiśmy może po pół godziny na osiem godzin, a proszenie innych o pomoc oznaczało konieczność wysłuchiwania komentarzy o "przeszkadzaniu" i "niesamodzielności".
Moim problemem było to, że wykonywanie "tasków" (nienawidzę tego dzielenia projektu, wyobrażałem sobie przez całe życie że wszyscy pracują razem, dyskutują ze sobą) zajmowało mi średnio 4 razy więcej czasu niż pozostałym osobom. Oni znali na pamięć nazwy wszystkich tabel i kolumn, ja zapytania SQL pisałem z prędkością bliską 0, bo musiałem wszystkiego szukać jak się nazywa, a to były zapytania na 30 i więcej linii kodu SQL. Druga przyczyna takiego a nie innego tempa: przeważnie pisałem szybko kod prawie działający prawidłowo, ale nie do końca i naprawianie tego zajmowało mi kilka razy dłużej niż początkowe napisanie, a okazywało się że problemem była jakaś bzdura w kodzie, np. użycie < zamiast <= do porównania wartości. Z przyzwyczajenia pisałem co chwilę "string" zamiast t("string"), bo nigdy wcześniej nie widziałem programu z tekstem w wielu językach, zdarzało mi się przez przypadek otwierać ten sam plik w dwóch oknach edytora i robić połowę w jednym, połowę w drugim, przez co jakaś zmiana niszczyła wcześniejszą. Do tego doszły trudności z obsługą Windows 8 i wielu monitorów, bo takiej konfiguracji nigdy wcześniej w życiu nie widziałem.
Testy, o których piszecie to dobry żart. W pierwszym zakładzie pracy każdy "task" po zrobieniu bez żadnych testów trafiał na publicznie dostępną stronę WWW, klienci dzwonili że strona działa źle, a ja nie dawałem sobie rady z szybkim rozwiązywaniem tych problemów. W drugim testy było tylko ręczne, ale musiał je wykonywać autor kodu. Przeważnie końcowe pełne testowanie pomijałem, bo widziałem że "czterogodzinne" zadanie robię już 15 godzin. Nie wyrzucili mnie za bugi, tylko za czas wykonywania zadań.
Prawdopodobnie nigdy się nie dowiem, co jest ze mną dokładnie źle, na pewno nie brak wiedzy w zakresie języków i frameworków tylko coś innego. Teraz szukam pracy w IT, ale nie programowaniu, oczywiście gorzej płatnej. Programowanie dla siebie uwielbiam, a programowania dla innych nie, bo nic nie mogę zdążyć.