NO, NO, NO. Scala is NOT a 'great' language.
It is implemented in Java, so suffers ALL of the performance issues of Java (and then some). I would be THRILLED to see a new, straightforward language (vs. C++) which is strongly typed. From my personal perspective, GOLang is the best improvement so far, but suffers from a worse case of 'rpm hell' equivalant than general linux rpm packages do.
Secondly, "Functional Programming" is best described as "DisFunctional Programming". The primary precept of functional programming is that there are ZERO side effects. Well, welcome to the real world of hardware/network failures. Please stop pitching garbage ideas to the rest of us realists.
The common definition of what side effects are would argue otherwise. Functional programs definitely do adhere to maintaining referential transparency. FP is about the world of the program, and the unknown. In the unknown, server failures and network issues happen, absolutely, but for the maintainability and local reasoning of the code, the rules of functional programming are followed so as many of those situations are handled. No paradigm can account for everything, and functional programming is one way of reasoning about the outside world in one of the safest ways you can. I think its totally unfair to consider FP as a garbage idea, there are tons of companies that follow these practices that rake in billions of dollars because their software works and is reliable. There plenty of valid criticisms of FP, but the world outside the JVM failing isn't one of them.
Banno is a banking platform for millions of Americans for small to large community banks. Anything you would picture your common banking app of doing such as transfers, transactions, credit card payments, wire transfers are all stuff we build in better, cutting edge ways. We are a suborganization of Jack Henry & Associates, but the Banno organization itself is rather small, with less than 100 engineers. We have the resources of a large software engineering firm, but the freedom and flexibility of a more mature startup.
We have two open positions, one for our Go team, and several for our Scala teams.
Our Scala teams are big believers in functional programming, specifically those familiar with Akka, Cats, or anything in the typelevel ecosystem is what we specialize in, but if you are knowledgable in Functional Programming this is the role for you.
We are looking for someone to become a big technical contributor for our Go team, to bring proper practices and knowledge across the software industry to help architect the team to become highly productive and write clean, idiomatic Go.
Our stack (Both teams) is Postgres, Redis, Docker, Kubernetes, and Kafka.
We are are a remote-first organization, and have been nearly fully remote since 2016. We are big on continuous learning, open source projects, attending conferences, and strive for the best engineering practices we can get.
If interested, the best way to apply is through our StackOverFlow posts. (There's a bug with Mozilla Firefox on our application site, you may have to use a different browser):
https://stackoverflow.com/jobs/516145/senior-software-engine...https://stackoverflow.com/jobs/516146/senior-software-engine...