If I may humbly add to the comprehensive and great answer of Ken: in today's world there is no working application cast in stone, meaning it's a living organism, literally living online! Thus - it must be maintained daily, must improve / grow some functionality, add new one and, yes, get rid of obsolete features, similarly to the old skin and cells we lose daily. Thus, yes, in my opinion, you can use Kotlin in your project along with Java, first to augment (wrapping) features and then,gradually, moving to Kotlin only code. Sure, you have to start with good set of tests, based on your design goals.