Co to znaczy znajomość Springa?

0

Hej

Przeglądam oferty pracy na młodszego programistę Javy i w wielu z nich pojawia się znajomość Springa. No właśnie... Co to znaczy? Czy jeśli potrafię napisać CRUD, korzystając z Srping Boota, mogę powiedzieć o sobie, że znam Springa? Spring to wiele komponentów - czy zatem mogę powiedzieć, że znam Spring MVC, nie potrafiąc skonfigurować go (Java Config, a XML tym bardziej) bez dokumentacji? Swoje małe projekty, a raczej projekciki robię z wykorzystaniem Spring Boota, ale jeśli na rozmowie kwalifikacyjnej musiałbym skonfigurować resolwer widoków, czy dispatcher servlet, poległ bym. Czy zatem warto uczyć się przynajmniej podstawowej konfiguracji Springa na pamięć? A może zrezygnować ze Spring Boota i zacząć klepać projekty w "czystym" Springu MVC (wtedy siłą rzeczy nauczę się konfiguracji)?
Wybaczcie za te pytania, ale jeszcze nie miałem przyjemności być na rozmowie kwalifikacyjnej i zastanawiam się czy jeżeli w CV wpiszę znajomości Spring - Boot, DI, MVC, Data, Security nie strzelę sobie w stopę, dostając np. wyżej wymienione pytanie o konfigurację w XMLu.

Swoją drogą to czy można wpisać w CV znajomość jakieś technologii, jeżeli bez dostępu do jej dokumentacji nie jestem w stanie sobie poradzić? To znaczy nie, że technologię znam tylko z nazwy, ale że nie ma w niej takiego doświadczenia, żeby pisać wszystko z pamięci (a wiadomo, że takie doświadczenie najlepiej zdobyć pracując przy komercyjnych projektach).

0

Jeszcze w uzupełnieniu poprzedniego posta.

Chciałbym rozpocząć pracę jako programista Javy (obecnie zajmuję się w pracy bazami danych, ale nie wiążę z tym przyszłości). Na własną rękę poznaję technologie - Java, Spring, JSP (podstawy podstaw) i nie wiem czy już jestem gotowy aby aplikować na stanowisko programisty. Wiem, że najlepszym sposobem, aby się tego dowiedzieć będzie aplikacja na takiego stanowisko, ale zakładając że zostanę zaproszony na rozmowę i mi na niej nie pójdzie to ponownie aplikować będę mógł do danej firmy pewnie za rok, albo nawet więcej. A może ucząc się jeszcze 3 miesiące będę miał większe szanse na przyjęcie...

0

Po to jest dokumentacja, żeby z niej korzystać. Nie masz na pamięć umieć napisać całą klasę z adnotacją @ControllerAdvice, ale musisz wiedzieć, że taka adnotacja istnieje i dotyczy tego i tego. No najbardziej popularny w Springu jest ten MVC więc dobrze by było jakbyś wiedział do czego służy adnotacja @RequestMapping, @RequestParam, @ResponseBody, @RequestBody na przykład. No i żebyś wiedział że komponenty Springowe są singletonami. I żebyś wiedział gdzie stosować adnotacje @Repository, @Service, @Controller, @Component, co to są za warstwy i czym się różnią. Konfiguracji i tak nikt nie pamięta na pamięć, bo to się robi raz na projekt.

0

Z takimi podstawowymi adnotacjami to nie ma problemu. W sumie ciężko ich nie znać po napisaniu kilku projektów, bo używa się ich ciągle... Gorzej jest właśnie z tym co używane jest raz na cały projekt
Co do aplikacji na githubie to różnica jest taka, że pisząc w domu korzystam z dokumentacji, tutoriali, stackoverflow, co na rozmowie kwalifikacyjnej raczej nie będzie możliwe

Tak trochę z innej beczki - czy dzisiaj korzysta się jeszcze w aplikacjach Spring MVC widoków JSP, Thymleaf itp. czy wszystko opiera się na usługach RESTowych?

0
Złoty Kaczor napisał(a):

po napisaniu kilku projektów

No to jak masz już kilka projektów za sobą, to już nie jesteś juniorem :O

Złoty Kaczor napisał(a):

czy wszystko opiera się na usługach RESTowych?

JSP to stare dzieje. Teraz bardzo na topie jest ARCHITEKTURA REST ;) i nie że na topie ot tak po prostu, tylko faktycznie prosto i fajnie się przy tym pracuje.

0
Pinek napisał(a):
Złoty Kaczor napisał(a):

po napisaniu kilku projektów

No to jak masz już kilka projektów za sobą, to już nie jesteś juniorem :O

Wiesz, projekt projektowi nie równy xD
A w moim przypadku to raczej malutkie projekciki typu wypożyczalnia samochodów, system sprzedaży biletów czy aplikacja która mówi Ci co możesz ugotować jeśli powiesz jej co masz w lodówce ;)

0

Co do tego, że projekty są różne, to prawda. Co do tego, że projekty były twoje "niewielkie"... na pewno jak jakaś firma IT robiła coś podobnego do twoich projektów, to w grę wchodziły miliony. Ogólnie przy porównywaniu projektów warto zdefiniować pewne metryki na podstawie których je będziemy porównywać - np linie kodu, na ilu serwerach chodzi czy ilu ma użytkowników. Zakładam średnią na projekt (raz swój domowy, raz enterprisowy w firmie) pół roku, więc "po kilku projektach" oznaczałoby "po 2-3 latach", a wtedy już śmiało można nazwać się regularem ;)

0

No właśnie może być tak (i w moim przypadku pewnie tak jest), że 1 projekt komercyjny > 10 projektów domowych. Bo te moje w kontekście metryk wypadają słabo (choć akurat LOC chyba nie jest zbyt miarodajna xD)
Ale postanowiłem, że spróbuje już teraz powysyłać CV. Jeśli się uda - będzie fajnie, jeśli nie - mam obecnie pracę, więc mogę poświęcić np. rok na naukę i za ten rok spróbować ponownie, a w między czasie może pojawi się ogłoszenie firmy do której nie kandydowałem i tam tez spróbuję.

1 użytkowników online, w tym zalogowanych: 0, gości: 1