🧩 Kotlin Topics Classification (Interview Roadmap)


1️⃣ Kotlin Fundamentals (Beginner Level)

👉 Used for fresher / junior interviews

  • What is Kotlin?
  • Kotlin vs Java
  • Statically typed language
  • var vs val
  • const val
  • Data types
  • Type inference
  • fun keyword
  • Comments
  • String templates
  • Control flow (if, when, for, while)
  • Ranges
  • Packages & imports

📌 Interview focus: syntax, readability, Java comparison


2️⃣ Null Safety (Very High Priority 🔥)

👉 Asked in almost every Kotlin interview

  • Nullable vs non-nullable types (?)
  • Safe call operator (?.)
  • Elvis operator (?:)
  • Not-null assertion (!!)
  • Safe casts (as?)
  • lateinit
  • lazy
  • Smart casts
  • NPE scenarios in Kotlin

📌 Interview focus: preventing NullPointerException


3️⃣ Functions & Functional Programming

👉 Core Kotlin strength

  • Function declaration
  • Default arguments
  • Named arguments
  • Single-expression functions
  • Higher-order functions
  • Lambda expressions
  • Inline functions
  • noinline & crossinline
  • Function types
  • Anonymous functions
  • Recursion & tail recursion

📌 Interview focus: lambdas, inline, higher-order functions


4️⃣ Object-Oriented Programming in Kotlin

👉 Java developers are tested heavily here

  • Classes & constructors
  • Primary vs secondary constructor
  • open, final, abstract
  • Inheritance
  • Interfaces
  • override keyword
  • Visibility modifiers
  • Polymorphism
  • Composition vs inheritance

📌 Interview focus: differences from Java OOP


5️⃣ Special Kotlin Classes

👉 Very frequently asked

  • data class
  • sealed class
  • enum class
  • object (Singleton)
  • companion object
  • Value classes (@JvmInline)
  • Inner vs nested classes

📌 Interview focus: data vs sealed vs enum


6️⃣ Collections & Generics

👉 Used in backend + Android interviews

  • Immutable vs mutable collections
  • List, Set, Map
  • Collection operations (map, filter, reduce)
  • map vs flatMap
  • associate
  • Sequences
  • Generics
  • Variance (in, out)
  • Star projection (*)

📌 Interview focus: immutability & performance


7️⃣ Extension Functions & Properties

👉 Kotlin-specific feature

  • Extension functions
  • Extension properties
  • Static resolution
  • Limitations
  • Use cases

📌 Interview focus: how extensions work internally


8️⃣ Coroutines & Concurrency (Advanced 🔥🔥)

👉 Must for senior roles

  • What are coroutines?
  • suspend functions
  • Coroutine builders (launch, async)
  • Coroutine scopes
  • Dispatchers
  • Structured concurrency
  • withContext
  • Job & Deferred
  • Exception handling
  • Cancellation
  • Flow vs Channel

📌 Interview focus: coroutines ≠ threads


9️⃣ Error Handling

👉 Frequently combined with coroutines

  • try-catch-finally
  • throw
  • Custom exceptions
  • Checked vs unchecked (Java vs Kotlin)
  • runCatching
  • Exception handling in coroutines

🔟 Kotlin + Java Interoperability

👉 Critical for real-world projects

  • Calling Java from Kotlin
  • Calling Kotlin from Java
  • @JvmStatic
  • @JvmField
  • @JvmOverloads
  • @JvmName
  • SAM conversions
  • Platform types

📌 Interview focus: mixed codebases


1️⃣1️⃣ Kotlin Standard Library Internals

👉 Senior-level interviews

  • Scope functions (let, run, apply, also, with)
  • Inline functions
  • Contracts
  • Delegation (by)
  • Property delegation
  • Lazy initialization

📌 Interview focus: let vs apply vs also


1️⃣2️⃣ Android-Specific Kotlin (If Applicable)

👉 Android interviews

  • ViewBinding / DataBinding
  • ViewModel + Kotlin
  • LiveData
  • StateFlow vs LiveData
  • Coroutines in Android
  • Kotlin DSL
  • Jetpack Compose basics

1️⃣3️⃣ Backend Kotlin (Spring / Ktor)

👉 Backend developer interviews

  • Kotlin with Spring Boot
  • Null safety in REST APIs
  • Data classes in APIs
  • Coroutines with Spring WebFlux
  • Ktor basics

1️⃣4️⃣ Kotlin Performance & JVM Internals

👉 Architect / Staff-level

  • JVM bytecode generation
  • Inline vs non-inline
  • Memory optimization
  • Tail recursion
  • Boxing & unboxing
  • Kotlin vs Java performance

1️⃣5️⃣ Design Patterns in Kotlin

👉 System design rounds

  • Singleton (object)
  • Factory
  • Builder
  • Observer
  • Strategy
  • Functional patterns

🎯 How to Use This for Interview Questions

You can create:

  • Beginner: Sections 1–4
  • Intermediate: Sections 5–7
  • Advanced: Sections 8–11
  • Senior/Architect: Sections 12–15

Read other awesome articles in Medium.com or in akcoding’s posts.

OR

Join us on YouTube Channel

OR Scan the QR Code to Directly open the Channel 👉

AK Coding YouTube Channel

Share with