Golang
All new Simpatra services must be written in GoLang. There are a few reasons for this (a large one is just that the dev team enjoys writing go more than java) but the main ones are
1) Memory Consumption. Go services usually only take up to 50mb of memory, compared to 300+ of our java services - this will end up saving us a lot in k8s resources
2) Speed. Go services are on average faster than java services with no optimizations.
3) Simplicity. Most of our go services are sub 2k LOC and makes for very simple debugging.
We have a private library (https://gitlab.com/simpatra/x) that contains all of our boilerplate setup and db setup connections, the protobuf libraries, and the go security packages. You will need to set up a token as is done in the readme of linked repo.