1) как лучше постигать основы ООП и ФП: параллельно или последовательно?
2) практикуется ли замена Java на Scala в коммерческой разработке и, соответственно, освоение Scala в процессе работы? (опыта работы нет, поэтому не знаю, насколько это возможно)
Хоть Scala и работает на jvm, но у нее другая идеология. Если вы не планируете работать с Java, то сосредоточьтесь на Scala и ФП. Только учтите, что на Java "мильен" библиотек и скорее всего при работе со Scala вы будете их использовать, поэтому хоть поверхностное понимание Java все равно понадобится.
К сожалению, количество вакансий на Scala очень отстает от Java, поэтому выбирать не приходится. Планирую несколько лет отработать с Java, а затем перейти на Scala, имея уже некоторый опыт. Насколько реален такой путь?
Scala достаточно широко распространена в корпоративном программировании.
Мне легко удалось ее освоить практически без опыта использования java (правда с приличным опытом работы на Haskell и C++, что сильно помогло), когда понадобилось использовать библиотеки, доступные только для jvm. И найти приличную работу на Scala без java потом большого труда не составило.
По мимо лямбд в Scala есть pattern matching и неплохой REPL. Последнее делает освоение сторонних java-библиотек значительно более простым, чем при использовании java (даже с лучшими IDE ;-)).
abs0lut: В Москве. Много вакансий было в Питере, но меня туда жена не отпустила :-). Требования Scrum, SQL и Scala+Play, при этом были готовы джависта переучивать. Спрашивали на собеседовании в основном про ООП, SQL и опыт работы.