Aviso:
Este não é um artigo de marketing ou o assassinato de um fã. Essas são reflexões sobre o que está acontecendo no mercado de desenvolvimento Scala de um engenheiro que está tentando mudar para o Scala há muito tempo. Em nenhum caso pretendo ser verdadeiro, esta é uma opinião puramente pessoal. Cuidado, há uma especificidade regional muito forte nessas reflexões, em outras regiões do nosso planeta a situação pode ser completamente diferente.
Background:
meu background principal é o back-end Java. Em algum momento, Scala se tornou interessante. Trabalhei por cerca de um ano em uma pequena startup, onde reescrevemos o back-end de Python para Scala. Então, depois de um tempo, comecei a procurar opções para me mudar para países civilizados e recebi de 4 a 5 ofertas em Scala em vários países europeus e 1 oferta em Java ... Acabei na Austrália. E sem Scala.
É difícil dizer por que fiz essa escolha, mas naturalmente, depois de um tempo, me perguntei se não deveria tentar realizar meu sonho e ainda encontrar uma empresa que usaria Scala não apenas para Data-Science, mas também para desenvolvimento de back-end.
De modo geral, abri o LinkedIn na esperança de pesquisar e selecionar vagas e fiquei chocado quando vi exatamente 3 vagas para todo o continente, sendo 2 delas da mesma empresa :(
Aqui você precisa fazer uma observação sobre o que é o mercado de desenvolvimento na Austrália : existem escritórios de várias grandes empresas como Google, Amazon, Microsoft, existe a Atlassian, que está tentando ser como eles, existem vários bancos monstruosos endurecidos (como em qualquer outro lugar) e um monte de pequenas (e nem tanto) startups. Como você pode imaginar, quase nenhum deles usa Scala fora do contexto da Ciência de Dados.
2 : ( Java , , dotNet, Microsoft ) GoLang NodeJS . , FullStack , NodeJS , :)
, ( 1) , Clojure Elixir. Kotlin , Java.
, , .
Scala ( JVM ) Java. Java : , .
, JVM-based .
, :
, , Java , .
: , . , , Java, .
Docker Kubernetes, , N . : (, GoLang), ( ), ( TypeScript Swift ).
, , JVM-based Java, , Kotlin, Android ( ).
.
CTO , , . ?
1: Go vs Java
Go. , . , , , , , Java. Go.
2: Go vs Scala
. ( ) Go . , ( ). , , -, .. .
, , Go.
3: Java vs Scala
, , Scala, , , , . Go.
4: Java vs Kotlin
, Kotlin. , , "" Java.
5: Kotlin vs Scala
. 3.
6: Scala/Java/Kotlin vs TypeScript
, , , TypeScript. , , FullStack- :)
7: Go vs TypeScript
, .
?
.
Em geral, resumindo o acima, repito que tenho uma forte opinião de que microsserviços e Kubernetes estão gradualmente eliminando Java e outras linguagens baseadas em JVM. É claro que Java viverá para sempre como Cobol, Kotlin viverá em Android, mas Scala, ao que parece, em Data Science. Graças à tecnologia moderna, não importa em que seu back-end está escrito, se ele pode ser iniciado / reiniciado / escalonado automaticamente.
Peço desculpas se esse pensamento foi muito óbvio para alguém. Em qualquer caso, coloque curtidas, compartilhamentos, repostagens. Escreva nos comentários se você discordar. Esta é apenas uma opinião privada, também desenvolvida sob a influência das características de uma determinada região.