We use a number of programming languages to build our products. We make a distinction between official and non-official languages. Official languages are programming languages that are carried across multiple engineering teams, have a certain critical mass, and for which we provide tooling, coaching, and education. They are recommended for active development. The following languages are currently considered official:
- Kotlin (backend + mobile)
- PHP (backend)
- Typescript (frontend)
- Swift (mobile)
There are a number of other programming languages currently not considered official but used by teams:
- Go (backend, used by team Kernel)
- Typescript (backend, used by the reporting team)
- Python (backend, used by meetings team and for data science)
- Scala (backend, used by search v2 and coach)
- C# (backend, used for Marketo and Edit App)
- Java (mobile, used in Android)
- Objective C (mobile, used in iOS)
- Javascript (frontend + backend, mostly in older Showpad projects