I have to choose a stack based on CLR/.NET or JVM[1]. Static analysis is extremely important to us for easy refactoring, catching errors before runtime, and auto completion. We're building an enterprise web API to be consumed by IoT and partners' systems, which will perform operate on a Postgres database.
To anyone with experience working on F# or Kotlin on a large code base with a large team, what are your experiences with collaboration, on-boarding new devs (who don't necessarily know the language), runtime errors, and maintenance?
One of my major concerns with F# is that new devs won't find the language as familiar and may try to fall back into OOP/imperative patterns.
1. We need to build on top of a massively popular ecosystem. The only ones that meet our criteria are .NET, JVM, and Node. Node fails for other reasons (fragmentation, security, etc.)