@azalut Pracowałem jako Android developer przez jakiś czas i nie napisałem ani jednej apki na iOSa, chociaż mam to w planach na kiedyś ;). Nie przeszkadzało to w tym, żeby dogadać się iOS developerami. Większość iOS developerów, których znam nie programuje też apek na androida. Są tacy, którzy znają w miarę dobrze jedną i drugą platformę, ale obecnie jest to raczej rzadkość. Niemniej jednak, gdy opanowało się jedną platformę, to warto też poznać drugą.
IMO popularny stack dla Androida, to tak, jak @bolson wspomniał: Dagger 2 (jest to fork od Google do dependency injection - Daggera 1 używa się trochę inaczej), Butter Knife (do "wstrzykiwania" widoków i zasobów), Retrofit (do web serviceów), RxJava (głównie do obsługi asynchroniczności i uproszczenia operacji na danych). Dorzuciłbym do tego też bibliotekę Timber (jest to taki wrapper na androidowy Logger, który ułatwia tworzenie różnych strategii logowania dla aplikacji produkcyjnych i wersji developerskich). Poza tym, można wiele rzeczy zapożyczyć ze świata Javy - np. biblioteki do testów: JUnit, FEST, Mockito - polecam też zapoznać się z Google Truth, którego można użyć zamiast FEST-a. Do testów integracyjnych (UI) można też użyć Espresso. Warto też zapoznać się z językiem Kotlin, który staje się ostatnio popularny w świecie Androida. Resztę stacku dobiera się w zależności od projektu. Co ciekawe, większość tych bibliotek, które zostały wymienione wyżej, to czyste javowe projekty i można ich używać nie tylko w Androidzie.
jest cos takiego co w mobile'owym swiecie jest cenione u potencjalnego pracownika? (znajomosc backendu np jee springa railsow django itd, albo moze znajomosc np 2 platform dosyc porzadnie? cos?)
Poza znajomością tego, czego używa się w pracy, osobiście doceniłbym ogólne rozeznanie w temacie i porządną znajomość przynajmniej jednej rzeczy - np. back-endu: Springa, Django lub innej platformy mobilnej. Każda wartościowa wiedza na pewno powinna zostać doceniona, ponieważ poszerza ona horyzonty i ułatwia opanowanie tematu. W przypadku Springa sprawa wygląda o tyle dobrze, że jest to framework javowy, gdzie składnia i takie koncepcje, jak DI są bardzo podobne, jak w przypadku Androida. W związku z tym, jeżeli ktoś ma to opanowane i słabo zna Androida, to powinien szybko się wdrożyć w projekty mobilne.