Contribute to AndroidDevKit
Everything here is community-built and lives on GitHub. No CMS, no login - just Markdown files and pull requests. Here is how to add yours.
Not on GitHub? Share an experience in seconds
Use the in-browser form - no account, no pull request, no setup. We open the PR for you and a maintainer reviews it before it goes live.
Fork & clone
Fork the repo on GitHub and clone it locally. Run npm install && npm run dev to preview your changes.
Add a content file
Drop a Markdown file into the right folder under src/content/. Each question, post, or experience is a single file - copy a template below.
Open a pull request
Commit on a new branch, push to your fork, and open a PR. A maintainer reviews for accuracy and merges. Cloudflare Pages deploys automatically.
Add an interview question
Create a file in src/content/questions/, e.g.
structured-concurrency.md. One question per file keeps
reviews fast.
---
question: "What is structured concurrency in Kotlin coroutines?"
topic: coroutines # must match a topic id in src/content/topics/
difficulty: mid # junior | mid | senior
tags: ["coroutines", "scopes"]
author: "Your Name" # optional
---
Structured concurrency ties the lifetime of coroutines to a **scope**...
\`\`\`kotlin
viewModelScope.launch {
val user = async { repo.user() }
val feed = async { repo.feed() }
render(user.await(), feed.await())
}
\`\`\`
Explain trade-offs, edge cases, and what an interviewer is really probing for. Share an interview experience
Create a file in src/content/experiences/. Anonymize
anything you need to - author: "Anonymous" is welcome.
---
company: "Acme Corp"
role: "Senior Android Engineer"
level: "Senior" # Intern | Junior | Mid | Senior | Staff+
location: "Bengaluru, India"
remote: false
outcome: "Offer" # Offer | Rejected | Withdrew | In Progress | No Response
date: 2026-05-12
author: "Anonymous"
tags: ["compose", "system-design"]
---
## Round 1 - Phone screen
What they asked, how it went...
## Round 2 - Coding
...
## Takeaways
What you'd do differently next time. Add a new topic
Topics are the spine of the site. Add one in
src/content/topics/ - the filename (minus extension)
becomes the topic id that questions reference.
---
title: "Coroutines"
description: "Structured concurrency, scopes, dispatchers, and Flow."
category: "Kotlin" # groups topics on the index page
order: 10 # lower sorts first
icon: "⟳"
---
Optional overview shown above the questions on the topic page. Write a blog post
Longer guides go in src/content/blog/ with
title, description, and date
frontmatter. Markdown and MDX are both supported.
Review guidelines
- Be accurate. Answers should be correct and current - link sources where it helps.
- Be respectful. Never name individual interviewers, and don't post proprietary or NDA-bound material.
- Be concise. Explain the why, not just the what - that's what interviewers probe for.
- One thing per PR. Smaller pull requests get reviewed and merged faster.