In general, using vanilla Beam Java SDK in Kotlin has to be very similar to using it in Java. There are some problems with Kotlin’s native classes (for example, `Iterable`:
https://stackoverflow.com/questions/55908999/kotlin-iterable-not-supported-in-apache-beam, usually it’s connected with Kotlin wildcards in generics).
As for me, I rarely use just Beam Java SDK without some additional methods that cover it. We have several streaming and batch pipelines in Kotlin using methods from Kio that running in Google Dataflow now, and it looks quite workable.