Top 30 Android Interview Questions 2026

Android interviews in 2026 focus on Jetpack Compose, Kotlin coroutines, and modern architecture. The old questions about XML layouts and AsyncTask are mostly gone. This guide covers the 30 most common Android interview questions. Each answer is short and practical. Questions are grouped by difficulty level: Beginner, Intermediate, and Advanced. Quick Reference — Modern Android Stack (2026) Component Old Way Modern Way (2026) UI XML Layouts Jetpack Compose Navigation Fragment transactions Navigation Compose State management LiveData StateFlow + Compose State Async work AsyncTask / RxJava Kotlin Coroutines + Flow DI Dagger 2 Hilt / Koin Database SQLite / Cursor Room Networking Volley Retrofit / Ktor Image loading Picasso Coil Architecture MVC / MVP MVVM / MVI Beginner Questions (1-10) 1. What are the four main Android components? The four main components are Activity (screens), Service (background work), BroadcastReceiver (system events), and ContentProvider (shared data). Each component has its own lifecycle. They are declared in the AndroidManifest.xml file. ...

July 19, 2026 · 11 min

Top 50 Kotlin Interview Questions 2026

Preparing for a Kotlin interview? This guide covers the 50 most common questions asked in 2026. Questions are grouped by difficulty. Each answer is short and clear. Code examples are included where they help. Quick Reference — Key Kotlin Features Feature What It Does Null safety Compiler prevents null pointer exceptions Coroutines Lightweight concurrency without threads Extension functions Add functions to existing classes Data classes Auto-generate equals, hashCode, toString, copy Sealed classes Restricted class hierarchies Smart casts Automatic type casting after type checks Scope functions let, run, with, apply, also Companion objects Static-like members in classes Beginner Questions (1-20) 1. What is Kotlin? Kotlin is a modern, statically-typed language developed by JetBrains. It runs on the JVM and compiles to JavaScript or native code. Google made it the preferred language for Android in 2019. It is 100% interoperable with Java. ...

July 19, 2026 · 15 min

Kubernetes Tutorial #9: CI/CD with Kubernetes and GitHub Actions

Deploying to Kubernetes manually is slow and error-prone. Every deploy requires building an image, pushing it to a registry, and updating the cluster. With CI/CD, all of that happens automatically on every push to your main branch. Write code, push to GitHub, and your new version is live in minutes — with zero-downtime rolling updates. This tutorial builds a complete pipeline with GitHub Actions. The Pipeline Overview Developer pushes code to main branch ↓ GitHub Actions triggers workflow ↓ Build Docker image ↓ Push image to registry (GHCR or Docker Hub) ↓ Deploy to Kubernetes (kubectl apply or helm upgrade) ↓ Wait for rollout to complete ↓ Done — new version is live Prerequisites A Kubernetes cluster (for this tutorial, we use a real cluster — not minikube). Options: k3s on a VPS, or any cloud provider. A GitHub repository with your app code and Kubernetes manifests Basic understanding of GitHub Actions (jobs, steps, secrets) Step 1: Prepare the Kubernetes Manifests Keep your Kubernetes YAML files in your repository, under a k8s/ directory: ...

July 18, 2026 · 7 min

Python vs Rust 2026 — When to Use Which

Python and Rust could not be more different. Python is the world’s most popular language — easy, flexible, everywhere. Rust is the most loved language — fast, safe, precise. But here is the interesting part: in 2026, they are not competitors. They are partners. Many of the fastest Python tools are actually written in Rust underneath. This guide will help you understand when to use each language and when to use them together. ...

July 18, 2026 · 10 min

Kubernetes Tutorial #8: Monitoring with Prometheus and Grafana

Your Kubernetes app is running. But is it healthy? Is it slow? Are any Pods crashing? How much memory is it using? Without monitoring, you find out about problems when users complain. With monitoring, you know before they do. The industry standard for Kubernetes monitoring is Prometheus + Grafana. Prometheus collects and stores metrics. Grafana visualizes them in dashboards. The Observability Stack Observability has three pillars: Metrics — numbers over time (CPU usage, request count, error rate) Logs — what happened and when (application output, events) Traces — how a request flows through multiple services This tutorial focuses on metrics with Prometheus and Grafana. Logging (Fluent Bit) and tracing (OpenTelemetry + Jaeger) are separate topics. ...

July 17, 2026 · 6 min

Ktor vs Spring Boot 2026 — Which Kotlin Backend Framework?

You want to build a backend with Kotlin. Smart choice. But now comes the next question: Ktor or Spring Boot? Both are excellent frameworks. Both support Kotlin. But they have fundamentally different philosophies. Ktor is lightweight, modular, and Kotlin-native. You start with nothing and add only what you need. Spring Boot is full-featured and batteries-included. You start with everything and configure what you want. Let’s compare them across every dimension that matters. ...

July 17, 2026 · 9 min

Regex Cheat Sheet 2026 — Patterns, Quantifiers, and Examples

Bookmark this page. Use Ctrl+F (or Cmd+F on Mac) to find what you need. This cheat sheet covers regex patterns that work in most languages (JavaScript, Python, Java, Rust, Go). Test your patterns at regex101.com. Last updated: March 2026 Basic Patterns Pattern Matches Example abc Literal text “abc” abc matches “abcdef” . Any character (except newline) a.c matches “abc”, “a1c” ^ Start of string/line ^Hello matches “Hello world” $ End of string/line world$ matches “Hello world” \ Escape special character \. matches a literal dot Character Classes Pattern Matches [abc] a, b, or c [a-z] Any lowercase letter [A-Z] Any uppercase letter [0-9] Any digit [a-zA-Z0-9] Any letter or digit [^abc] NOT a, b, or c [^0-9] NOT a digit Shorthand Classes Pattern Matches Equivalent \d Any digit [0-9] \D NOT a digit [^0-9] \w Word character [a-zA-Z0-9_] \W NOT a word character [^a-zA-Z0-9_] \s Whitespace [ \t\n\r\f] \S NOT whitespace [^ \t\n\r\f] \b Word boundary Between \w and \W \B NOT a word boundary Quantifiers Pattern Meaning Example a* 0 or more bo* matches “b”, “bo”, “boooo” a+ 1 or more bo+ matches “bo”, “boooo” (not “b”) a? 0 or 1 (optional) colou?r matches “color”, “colour” a{3} Exactly 3 \d{3} matches “123” a{2,4} 2 to 4 \d{2,4} matches “12”, “123”, “1234” a{2,} 2 or more \d{2,} matches “12”, “12345” Greedy vs Lazy Greedy (default): .* matches as MUCH as possible Lazy (add ?): .*? matches as LITTLE as possible Text: <div>hello</div><div>world</div> Greedy: <.*> matches "<div>hello</div><div>world</div>" Lazy: <.*?> matches "<div>" Groups and Capturing Pattern Description (abc) Capture group — matches “abc” and captures it (?:abc) Non-capturing group — matches but does not capture (a|b) Alternation — matches “a” OR “b” \1 Back-reference — matches same text as group 1 Pattern: (\w+)\s+\1 Text: "the the quick brown fox" Matches: "the the" (repeated word) Named Groups Pattern: (?<year>\d{4})-(?<month>\d{2})-(?<day>\d{2}) Text: "2026-03-15" Groups: year=2026, month=03, day=15 Lookahead and Lookbehind Pattern Name Description (?=abc) Positive lookahead Followed by “abc” (?!abc) Negative lookahead NOT followed by “abc” (?<=abc) Positive lookbehind Preceded by “abc” (?<!abc) Negative lookbehind NOT preceded by “abc” Lookaround does NOT consume characters — it only checks. ...

July 17, 2026 · 4 min

Kubernetes Tutorial #7: Helm Charts — The Kubernetes Package Manager

A production Kubernetes application quickly grows into dozens of YAML files: Deployments, Services, ConfigMaps, Secrets, Ingress rules, RBAC roles, and more. Managing all of these manually is error-prone. Different environments (dev, staging, production) need different values. Sharing your app with others means sending them a bundle of raw YAML. Helm solves this. It is the package manager for Kubernetes — think npm for Node.js or apt for Ubuntu, but for Kubernetes applications. ...

July 16, 2026 · 5 min

Compose Multiplatform vs Flutter 2026 — Which Cross-Platform Framework?

Two frameworks, one promise: build apps for multiple platforms from a single codebase. Flutter has been the cross-platform leader since 2018. It renders everything with its own engine and runs on mobile, web, and desktop. Compose Multiplatform is JetBrains’ answer — bringing Jetpack Compose beyond Android to iOS, desktop, and web. It reached stable for iOS in 2024. Which should you choose in 2026? Let’s compare them honestly. Quick Summary Category Winner UI performance (mobile) Tie Native feel (iOS) Compose Multiplatform Platform coverage Flutter Web support Flutter Desktop support Compose Multiplatform Learning curve Flutter Ecosystem maturity Flutter Language quality Compose Multiplatform (Kotlin) Android development Compose Multiplatform iOS development Flutter (more mature) Code sharing Tie Job market Flutter What Is Compose Multiplatform? Compose Multiplatform is a declarative UI framework by JetBrains. It extends Google’s Jetpack Compose (Android’s native UI toolkit) to work on iOS, desktop (Windows, macOS, Linux), and web. ...

July 16, 2026 · 10 min

Markdown Cheat Sheet 2026 — Syntax and Formatting Guide

Bookmark this page. Use Ctrl+F (or Cmd+F on Mac) to find what you need. This cheat sheet covers standard Markdown and GitHub-flavored extensions. Try examples at markdownlivepreview.com. Last updated: March 2026 Headings # Heading 1 ## Heading 2 ### Heading 3 #### Heading 4 ##### Heading 5 ###### Heading 6 Text Formatting Markdown Result **bold** bold *italic* italic ***bold and italic*** bold and italic ~~strikethrough~~ strikethrough `inline code` inline code > blockquote blockquote Links and Images [Link text](https://example.com) [Link with title](https://example.com "Hover text") <https://example.com> <!-- auto-link --> ![Alt text](image.png) ![Alt text](image.png "Image title") [![Clickable image](image.png)](https://example.com) <!-- Reference-style links --> [Read more][1] [1]: https://example.com Lists <!-- Unordered --> - Item one - Item two - Nested item - Another nested <!-- Ordered --> 1. First 2. Second 3. Third <!-- Task list (GitHub) --> - [x] Completed task - [ ] Incomplete task - [ ] Another task Code Inline: `const x = 42;` Code block with language: ```javascript function greet(name) { return `Hello ${name}`; } ``` Code block without language: ``` plain text here ``` Supported Languages for Syntax Highlighting javascript, typescript, python, rust, kotlin, java, go, bash, sql, html, css, json, yaml, toml, markdown, diff, dockerfile ...

July 16, 2026 · 3 min