Kotlin Runs Taxes in Norway
summary
Norwegian Tax Administration runs production services in Kotlin across its cloud platform using Kotlin coroutines, Spring Boot (WebFlux), Vertex and Kafka; about 500 services, ~6.5k VMs and ~140k deploys so far this year give scale. A provisioning storyteller service implements async environment creation and works, but suspended functions expose gaps with Spring Security and some libraries. Build scripts move to Kotlin Gradle but suffer sluggishness and plugin quirks (swagger plugin). Internal DSLs (Playground-based test-data generator and tax-rule DSL) let domain experts author many real rules and prove effective.
AI-written summary · about
chapters (52)
- 0:00Introduction
- 1:44Who are we
- 2:15About me
- 2:48About the talk
- 3:17About the Norwegian Tax Administration
- 4:13About the NTA
- 4:39About NTA
- 5:02Sprocket
- 5:51Documentation
- 6:13Custom configu
- 6:27Open source mentality
- 6:50Java compatibility
- 7:25Developer satisfaction
- 8:13NTIA satisfaction
- 8:56What we learned
- 10:18The Storyteller
- 10:39Infrastructure
- 11:25Segments
- 12:16APIs
- 12:43Tech Stack
- 13:33General Experience
- 14:07General Annoyances
- 14:24Injecting
- 15:26Auto Wiring
- 15:55Spring Security
- 17:20Suspended Flows
- 17:35Web Flux
- 18:23Spring Boot Endpoint
- 19:22Spring Boot Extensions
- 20:12Web Client
- 21:05Weight Exchange
- 21:45Mono Exchange
- 22:51Summary
- 24:09Coupling Gradle
- 24:27Cons
- 25:06Example
- 25:55Advantages
- 27:14DomainSpecific Languages
- 27:58External vs Internal DSL
- 28:54Use Cases
- 29:12Background
- 30:05Copeland Playground
- 31:10Browser
- 31:36Domain Expert
- 34:02Content Server
- 35:17Tax Process
- 36:36Rules
- 37:35Workinprocess
- 38:24Metadata
- 38:50Custom solution
- 39:07Backend
- 39:38Key takeaways
related talks
46mKotlin Is for Hipsters
44mKotlin is for hipsters
03h 13mKotlin 1.4 Online Event, Day 4: server-side Kotlin
28mKotlin Multiplatform's Cross-Platform Brilliance at Norway's National Postal Service
52mKotlin Backend Development 6 Yrs Recap. The Good, the Bad and the Ugly
24mKotlin Multiplatform's Cross-Platform at Norway's 377-Year-Old Postal Service
40mDeveloping Micro Services With Kotlin
18mServer-Side Development with Kotlin
