Krótkie pytanie. Jak jest traktowane doświadczenie zawodowe przy zmianie pracy np. .NET -> Java/C/C++/Obj C ? Czy jak ktoś ma dajmy na to 5 lat doświadczenia w .NET to przechodząc na Jave ma szanse dostać pracę gdzie wymaga się 2-5 lat doświadczenia zawodowego w Javie? Czy może na nieszczęście trzeba zaczynać od J.Developera ?
nie chcę się mądrzyć bo nie miałem takiej sytuacji nigdy, ale na pewno doświadczenie w .NET podwyższy twoją szanse na dostanie pracy w javie.
taka sama sytuacja jest z wynagrodzeniem, na pewno jest ono wyższe
Możesz iść do małej firmy, która korzysta z .NET oraz Javy/ C/ C++/ ObjC/ etc i w momencie gdy zabraknie kogoś nie .NETowego zgłosić się na ochotnika. Generalnie .NET się wiele od Javy nie różni, to podobne paradygmaty i zasady działania samej maszyny wirtualnej i bajtkodu. Myślę, że najłatwiej byłoby ci się właśnie "przekonwertować" z C# na Javę, bo to zbliżona filozofia. A od Javy mógłbyś z łatwością przejść do Scali/ Clojure/ JRuby czy innych opartych na JVM (wszystkie trzy języki mogą swobodnie wykorzystywać Javowy kod i standardowe biblioteki, więc znając platformę Java można w krótkim czasie zacząć pisać w Scali/ Clojure/ JRuby na poważnie).
Ja powoli tez dorjrzewam do zmiany technologii. Aktualnie glownie Java, ale bardzo chcialbym cos innego, jak Python, Ruby, Scala. Coraz wieceh pisze w Groovy, w domu zabawy JRuby, Clojure i takie tam, ale nic powaznego. Mysle, ze zostane na JVM, ale zmienie jezyk, i mam nadzieje ze cale moje tzw "doswiadczenie" nie pojdzie na marne - w koncu glownie jestem programista, a nie koderem Java.
obawiam się, że zazwyczaj liczy się niestety tylko doświadczenie w konkretnym języku http://www.wimdu.pl , mało ich obchodzi, co innego umiesz...
a co ma doświadczenie w danym języku do jego zmiany? Przecież w obrębie tych samych języków (zapomniałem jak się na to mówi, funkcyjne imperatywne) nauczenie się nowego to tydzień/dwa. Więc o co się rozchodzi?
Taaa, ale te wszystkie X frameworków w których można zrobić coś sensownego to co, niewazne:P Pewnie jak się przesiądziesz na inny język to trochę ci zejdzie na poznanie narzędzi i środowiska - i to tu jest ból, a nie w tym czy znasz język od kilku lat.
Umiejętności analizowania zagadnienia, projektowania obiektowego, programowania, testowania, pisania czytelnego kodu, pracy zespołowej są raczej niezależne od języka. Problemem jest znajomość konkretnych technologii, ale te trzeba poznawać nawet w ramach jednej platformy.
No i dlatego, jeżeli chodzi o poznawanie nowych języków, platforma Java jest lepsza od .NETa. Na CLR najpopularniejsze są VB/ C++/ C# czyli języki mocno imperatywne, a więc przesiadka z C# na pozostałe dwa nie ma sensu. Na JVM jest natomiast wiele popularnych języków funkcyjnych lub z elementami funkcyjności bardziej powszechnymi niż w C#, np: Groovy, Scala, Clojure, JRuby, etc Nemerle czy F# ZTCW nie są tak popularne jak Scala, Clojure, a na pewno Groovy.
Sam dostalem projekt napisany w javie, gdzie mialem wprowadzic drobne poprawki. (jestem .net developerem od wielu lat)
Zmiany w kodzie to nie problem... znajomosc bibliotek - juz bardziej... i najwiekszy - znajomosc środowiska! Szału dostawałem, gdzie coś co w .net'cie zestawiałem w pare minut w javie zajmowało mi dni! Owszem, da sie to zrobic szybciej ale trzeba po prostu wiedziec, co i gdzie :)
A jesli na starcie dostaje sie problemy typu: znajdz memory leak'a w javie - a za cholere heapdumpy sie nie generuja mimo przesledzenia wielu manuali i tutoriali... to po prostu szlag czlowieka trafia.
Wiec jak widzisz... problemem nie jest roznica w idei programowania ale w znajomosci narzedzi jakich sie do tego wykorzystuje. O zwyklych skrotach klawiszowych, ktore usprawniaja prace - to juz nie musze nawest wspominac ;)
wasiu napisał(a)
A jesli na starcie dostaje sie problemy typu: znajdz memory leak'a w javie - a za cholere heapdumpy sie nie generuja mimo przesledzenia wielu manuali i tutoriali... to po prostu szlag czlowieka trafia.
No ale to jest przyklad ... no w sumie nie wiem czego, durnota jakas. Oczywiste jest ze taka osoba nie bedzie tego wiedziec (bez urazy, ja nie mam pojecia o tym jak szukac tego w .net, mimo ze kodowalem w tym przez pol roku zawodowo - naprawde wtedy cierpialem ;d).
Wszystko zależy od firmy: w jednej wyrzucą Twoją aplikację do kosza, w drugiej przyjmą Cię na stanowisko juniora, w trzeciej oleją język w jakim pisałeś i sprawdzą wiedzę z innych dziedzin.
Ja po 2.5 roku kodzenia zawodowego w Javie przesiadłem się na C++ (tyle że C++ znałem wcześniej, ale nie kodowałem w tym zawodowo), nikt mi większych problemów nie robił.