Interview preparation roadmap · Technology
Kotlin, the Android framework and app architecture, plus the coding and project rounds Android interviews commonly include.
0 / 20 complete · 13 core · 7 other · 107 subtopics
0%Start here
- 01Interview foundations
- 02Coding
- 03Android fundamentals
- 04Role-specific
- 05Practice
- 06Company & final prep
01Interview foundations
What every interviewer sees first.
01.1Resume
A one-page resume you can defend line by line.
What this covers
- One-page format — Reverse-chronological, clean fonts, no photos or tables that confuse parsers.
- Project bullets — Action + what you built + a number (users, speed, accuracy).
- Skills section — Only skills you can answer questions on for two minutes.
- ATS readability — Export a text-based PDF and check it with a parser.
- Working links — GitHub, LinkedIn and a live project link that open.
- Tailoring — Reorder bullets to match the job description.
What to practise
- Run your PDF through a parser test
- Rewrite each bullet as action + result
- Remove any skill you can't explain for 2 minutes
Common questions
- Walk me through your resume.
- Which project here are you most proud of, and why?
- Why is this skill on your resume?
Free resources
- OpenResume — Free ATS-friendly resume builder and parser test (Free)
- Jake's Resume (Overleaf) — The LaTeX resume template most SDE freshers use (Free)
- Resume Worded — Resume and LinkedIn scoring (Free plan)
- Jobscan — Match your resume against a job description (Free plan)
Free courses
- Professional Resume Writing — Alison (Free course)
- Resume, Networking, and Interview Skills — Fullbridge (Free to audit)
01.2Tell me about yourself
A 60–90 second answer: present, past, why this role.
What this covers
- Present — Who you are now: degree, year, focus.
- Past — One or two proof points: a project, internship or result.
- Future — Why this role and this company next.
- Length — 60–90 seconds; stop before you list everything.
- Delivery — Calm pace and eye contact, not a memorised script.
What to practise
- Write it, then say it out loud 5 times
- Record yourself and cut anything over 90 seconds
Common questions
- Tell me about yourself.
- Why should we hire you?
- Where do you see yourself in a few years?
Free resources
- Google Interview Warmup — Free spoken mock interview that prints your transcript (Free)
- BBC Learning English — Structured free English lessons and podcasts (Free)
Free courses
- English@Work: Basic Job Interview Skills — The Hong Kong Polytechnic University (Free to audit)
- Job Interview Preparation For Tech Professionals — University of Cape Town (Free to audit)
01.3Behavioral & STAR
Stories about teamwork, conflict and failure, told with STAR.
What this covers
- STAR structure — Situation, task, action, result. Spend most of the time on action.
- Story bank — 6–8 real stories you can reuse across questions.
- Teamwork & conflict — Disagreeing respectfully and what you changed.
- Failure & weakness — A real one, what you learned, what you do now.
- Ownership — Times you took initiative without being asked.
- Common HR questions — Why us, why you, strengths, relocation.
What to practise
- Write 6 stories in STAR form
- Map each story to 2–3 common questions
- Practise one story with a friend
Common questions
- Tell me about a time you failed.
- Describe a conflict in a team and what you did.
- What is your biggest weakness?
Free resources
- Tech Interview Handbook — Free guide to coding and behavioral interviews (Free)
- Google Interview Warmup — Free spoken mock interview that prints your transcript (Free)
- Pramp / Exponent peer mocks — Free peer-to-peer mock interviews (Free plan)
Free courses
- Master Behavioral Interviews (for Software Engineers) — freeCodeCamp (Free video)
- Behavioral Interview Practice for Computer Science Students — CodeSignal (Free to audit)
- Soft Skills For Tech Professionals — University of Cape Town (Free to audit)
02Coding
Often the deciding round for software roles.
02.1Programming fundamentals
One language you know well: syntax, memory, complexity.
What this covers
- One language deeply — C++, Java or Python: syntax, standard library, quirks.
- Time & space complexity — Big-O of loops, recursion and common operations.
- Recursion — Base cases, the call stack, when it overflows.
- Memory basics — Stack vs heap, references vs values, garbage collection.
- Strings & arrays — Immutability, copying and slicing costs in your language.
- Debugging — Reading errors, dry runs, using a debugger.
What to practise
- Solve 10 easy problems without an IDE's help
- Explain the complexity of each solution aloud
Common questions
- What is the time complexity of your solution?
- What happens in memory when you call a function?
- Difference between an array and a linked list?
Free resources
- Harvard CS50x — The best first CS course there is (Free)
- HackerRank — Where many campus tests actually run (Free)
- GeeksforGeeks — Company-wise questions and theory (Free plan)
Free courses
- CS50's Introduction to Programming with Python (CS50P) 2022 — Harvard University (Free video)
- MIT 6.100L Introduction to CS and Programming using Python, Fall 2022 — Massachusetts Institute of Technology (Free video)
- Programming in Modern C++ — IIT Kharagpur (Free course)
02.2Data structures & algorithms
The core problem-solving topics commonly assessed in software interviews.
What this covers
- Arrays & hashing — Frequency maps, prefix sums, duplicates.
- Two pointers & sliding window — Pairs, subarrays and substrings in O(n).
- Stacks & queues — Brackets, monotonic stacks, BFS queues.
- Linked lists — Reversal, cycle detection, merging.
- Trees & BST — Traversals, height, LCA, validation.
- Graphs — BFS, DFS, topological sort, shortest paths.
- Binary search — On sorted arrays and on the answer.
- Dynamic programming — 1D and 2D DP, from climbing stairs to knapsack.
What to practise
- Follow one list end to end, not five
- Say the brute force first, then improve it
- One timed problem a day
Common questions
- What is the difference between BFS and DFS?
- How does a hash map handle collisions?
- Find the first non-repeating character in a string.
Free resources
- NeetCode 150 — A curated ordered list instead of 3000 random problems (Free)
- Striver's A2Z DSA sheet — India's most-followed DSA sheet (Free)
- LeetCode — The default interview practice set (Free plan)
- GeeksforGeeks — Company-wise questions and theory (Free plan)
Free courses
- Data Structures and Algorithms Design — IIT Kanpur (Free course)
- MIT 6.006 Introduction to Algorithms, Spring 2020 — Massachusetts Institute of Technology (Free video)
- Neetcode 150 Course - All Coding Interview Questions Solved — freeCodeCamp (Free video)
02.3Timed coding practice
Solving under a clock, the way online tests run.
What this covers
- Reading the problem — Inputs, outputs and constraints before any code.
- Edge cases — Empty, one item, duplicates, negatives, overflow.
- Test platforms — Online editors, hidden test cases and their quirks.
- Time management — Skip and return; passing some cases still counts.
- Testing your code — Three quick tests before you submit.
What to practise
- Two 90-minute mock tests a week
- Do one contest to feel the pressure
Common questions
- How would you test this function?
- What edge cases did you consider?
Free resources
- HackerRank — Where many campus tests actually run (Free)
- LeetCode — The default interview practice set (Free plan)
- Codeforces — Competitive programming contests (Free)
Free courses
- 10 Common Coding Interview Problems - Solved! — freeCodeCamp (Free video)
- Getting Started with Competitive Programming — IIT Gandhinagar (Free course)
- Fundamental Coding Interview Prep with Python — CodeSignal (Free to audit)
03Android fundamentals
The platform in depth.
03.1Android & Kotlin
Kotlin and the Android components interviews ask about.
What this covers
- Kotlin basics — Null safety, data classes, coroutines.
- Activities & lifecycle — States and configuration changes.
- Jetpack Compose or Views — Building UI and state.
- Architecture — ViewModel, repository, MVVM.
- Background work — WorkManager and services.
What to practise
- Build a small Compose app with a ViewModel
- Explain one lifecycle bug and its fix
Common questions
- What happens to an Activity on rotation?
- What are coroutines?
Free resources
- Android developer courses — Official Android and Kotlin courses (Free)
- freeCodeCamp — Full curricula with projects, certificates at the end (Free)
Free courses
- Android Development Course - Build Native Apps with Kotlin Tutorial — freeCodeCamp (Free video)
- Kotlin & Android Development Course: Build a Quiz Application — freeCodeCamp (Free video)
- Android & Kotlin Development Masterclass – Full Course — freeCodeCamp (Free video)
03.2Mobile app fundamentals
How mobile apps run, store data and talk to servers.
What this covers
- App lifecycle — Foreground, background, process death.
- UI & navigation — Screens, lists, navigation stacks.
- State management — Where state lives and how it updates.
- Networking & offline — APIs, caching, poor connections.
- Storage — Preferences, databases, files.
- Performance — Smooth scrolling, memory, battery.
What to practise
- Build an app with a list, detail screen and offline cache
- Profile your app once and fix one slowdown
Common questions
- What happens when your app goes to the background?
- How do you handle no internet?
Free resources
- Android developer courses — Official Android and Kotlin courses (Free)
- SwiftUI tutorials — Apple's official SwiftUI tutorials (Free)
- Flutter documentation — Official Flutter docs and codelabs (Free)
Free courses
- CS50's Mobile App Development with React Native 2018 — Harvard University (Free video)
- Mobile App Development Course with React Native, Supabase, Next.js — freeCodeCamp (Free video)
- Build mobile and desktop apps with .NET MAUI — Microsoft (Free course)
03.3OOP
Classes, objects and the four pillars, with your own examples.
What this covers
- Classes & objects — State, behaviour and constructors.
- Encapsulation & abstraction — Hide data, expose a clean interface.
- Inheritance — Reuse, is-a relationships, the diamond problem.
- Polymorphism — Overloading vs overriding, dynamic dispatch.
- Interfaces vs abstract classes — When to use which.
- SOLID basics — Single responsibility and open/closed with examples.
What to practise
- Model a library or parking lot in classes
- Explain each pillar with code you wrote
Common questions
- What is polymorphism? Give an example.
- Abstract class vs interface?
- What is the diamond problem?
Free resources
- Refactoring.Guru design patterns — Design patterns explained with diagrams and code (Free)
- GeeksforGeeks — Company-wise questions and theory (Free plan)
- InterviewBit — Guided interview prep path (Free plan)
Free courses
- Fundamentals of Object Oriented Programming — IIT Roorkee (Free course)
- Python Object Oriented Programming (OOP) - Full Course for Beginners — freeCodeCamp (Free video)
- Basics of Object Oriented Programming — Great Learning (Free course)
03.4Core Java
Java language and JVM questions for Java roles.
What this covers
- OOP in Java — Classes, interfaces, abstract classes.
- Collections — List, Set, Map and how HashMap works.
- Exceptions — Checked vs unchecked, try-with-resources.
- Streams & lambdas — Functional style in Java 8+.
- JVM basics — Memory areas and garbage collection.
- Multithreading — Threads, executors, synchronized.
What to practise
- Implement a simple LRU cache in Java
- Explain HashMap internals on a whiteboard
Common questions
- How does HashMap work internally?
- Difference between == and equals()?
- What is the JVM?
Free resources
- GeeksforGeeks — Company-wise questions and theory (Free plan)
- Exercism — Practice exercises with human mentoring (Free)
- MIT OpenCourseWare — Real MIT course material, free (Free)
Free courses
- Programming in Java — IIT Kharagpur (Free course)
- Object Oriented Programming (OOP) in Java Course — Kunal Kushwaha (Free video)
- Socket Programming in Java — Telusko (Free video)
04Role-specific
Real apps and design.
04.1Projects & resume defense
Explaining what you built, why, and what you would change.
What this covers
- The problem — What it solves and for whom.
- Your role — Exactly what you built yourself.
- Architecture — A simple diagram: frontend, backend, database.
- Hardest bug — What broke and how you found it.
- Trade-offs — Why this stack; what you would change now.
- Scale questions — What happens with 10x the users.
What to practise
- Prepare a 2-minute walkthrough per project
- Be ready to draw its architecture
Common questions
- What was the hardest part of this project?
- Why did you choose this tech stack?
- How would it handle 10x more users?
Free resources
- Tech Interview Handbook — Free guide to coding and behavioral interviews (Free)
- Pramp / Exponent peer mocks — Free peer-to-peer mock interviews (Free plan)
Free courses
- Software Engineering Concepts — MIT OpenCourseWare (Free course)
- Build community-driven software projects on GitHub — Microsoft (Free course)
04.2How the web works
HTTP, browsers and the request lifecycle that web interviews build on.
What this covers
- HTTP basics — Methods, status codes, headers.
- Cookies, sessions & tokens — How login state is kept.
- Caching — Browser cache, CDN and cache headers.
- CORS — Why browsers block cross-origin calls and how servers allow them.
- REST vs GraphQL — Trade-offs at a basic level.
- From URL to page — DNS, TCP/TLS, request, render.
What to practise
- Inspect one site's network tab and explain each request
- Explain "type a URL and press Enter" in 3 minutes
Common questions
- What happens when you type a URL?
- What is CORS?
- Difference between cookies and local storage?
Free resources
- MDN Web Docs — The reference for HTML, CSS and JavaScript (Free)
- Full Stack Open — University of Helsinki's React/Node course (Free)
- GeeksforGeeks — Company-wise questions and theory (Free plan)
Free courses
- Programming & Web Development Crash Courses — Traversy Media (Free video)
- Sigma Web Development Course - Web Development Tutorials in Hindi 🗿 — CodeWithHarry (Free video)
- Web Development Course — Apna College (Free video)
04.3Git & version control
Branches, merges and collaborating on code.
What this covers
- Commits & history — Small commits with clear messages.
- Branching — Feature branches and pull requests.
- Merge vs rebase — When to use which.
- Resolving conflicts — Reading and fixing conflict markers.
- Undoing safely — revert, reset and restore.
What to practise
- Contribute a small fix to an open-source repo
- Practise resolving a merge conflict
Common questions
- Difference between merge and rebase?
- How do you undo a pushed commit?
Free resources
- Pro Git book — The free official Git book (Free)
- GitHub — Where your projects live (Free)
- freeCodeCamp — Full curricula with projects, certificates at the end (Free)
Free courses
- Getting Started with Git and GitHub — IBM (Free course)
- HTML,CSS,JavaScript, Project, Git & GitHub — Apna College (Free video)
- Git & GitHub Tutorial for Beginners — The Net Ninja (Free video)
04.4Low-level design
Class diagrams and design patterns for a small system.
What this covers
- Design patterns — Singleton, factory, strategy, observer.
- Class diagrams — Classes, relationships, multiplicity.
- SOLID in practice — Applying it to a real design.
- Classic problems — Parking lot, vending machine, library.
What to practise
- Design a parking lot in classes
- Design a vending machine
Common questions
- Design a parking lot system.
- When would you use the Strategy pattern?
Free resources
- Refactoring.Guru design patterns — Design patterns explained with diagrams and code (Free)
- GeeksforGeeks — Company-wise questions and theory (Free plan)
Free courses
- Master Design Patterns & SOLID Principles in C# - Full OOP Course for Beginners — freeCodeCamp (Free video)
- Software Construction: Object-Oriented Design — University of British Columbia (Free to audit)
05Practice
Saying it out loud is a different skill.
05.1Technical mock interviews
At least two full coding mocks before the real one.
What this covers
- Thinking aloud — Narrate your approach before and while coding.
- Clarifying questions — Confirm inputs, scale and edge cases first.
- Handling hints — Take them gracefully and adapt.
- "I don't know" — Say what you do know and how you would find out.
- Review the recording — Fillers, pace, unclear explanations.
What to practise
- Do two peer mock interviews
- Record one spoken mock and listen back
Common questions
- Walk me through your approach before you code.
- How would you test this?
Free resources
- Pramp / Exponent peer mocks — Free peer-to-peer mock interviews (Free plan)
- Google Interview Warmup — Free spoken mock interview that prints your transcript (Free)
- Tech Interview Handbook — Free guide to coding and behavioral interviews (Free)
Free courses
- Software Engineering Job Interview – Full Mock Interview — freeCodeCamp (Free video)
05.2Technical communication
Explaining your thinking clearly in English.
What this covers
- Structure — Big picture first, then details.
- Plain words — Explain without jargon.
- Checking in — "Does that make sense so far?"
- Written English — Clear emails and follow-ups.
What to practise
- Explain one project to a non-CS friend
- Record a 2-minute explanation of your best project and listen back
Common questions
- Explain recursion to a 10-year-old.
Free resources
- BBC Learning English — Structured free English lessons and podcasts (Free)
- LanguageTool — Grammar checking that isn't Grammarly (Free plan)
Free courses
- Technical Communications for Engineers — IIT Roorkee (Free course)
06Company & final prep
The last 48 hours.
06.1Company research
The product, the role, the job description and recent news.
What this covers
- The business — What it sells and to whom.
- The role — What the job description really asks for.
- Recent news — Launches, results, announcements.
- Interview format — The rounds, if the company shares them.
- Your fit — Three reasons, matched to the job description.
What to practise
- Write 3 reasons you want this role
- Match 3 JD lines to your experience
Common questions
- Why do you want to work here?
- What do you know about our product?
Free resources
- GeeksforGeeks — Company-wise questions and theory (Free plan)
- Tech Interview Handbook — Free guide to coding and behavioral interviews (Free)
06.2Questions to ask
Two or three good questions for the end of the interview.
What this covers
- About the team — How work is planned and reviewed.
- About growth — Mentoring, learning, the first 90 days.
- About the product — What is hard right now.
- What to avoid — Questions a quick search answers.
What to practise
- Write 5 questions, keep the best 3
- Prepare one question about the team's own product
Common questions
- Do you have any questions for us?
Free resources
- Tech Interview Handbook — Free guide to coding and behavioral interviews (Free)
06.3Final checklist
Logistics, documents, setup and a calm night before.
What this covers
- Logistics — Time, timezone, link or address.
- Documents — Resume copies, ID, certificates if asked.
- Tech check — Camera, mic, internet, charger.
- Night before — Sleep, light revision, no new topics.
What to practise
- Do a 5-minute tech check the day before
- Lay out documents and clothes the night before
Free resources
- Google Interview Warmup — Free spoken mock interview that prints your transcript (Free)
06.4Job & interview safety
Spot fake offers, payment requests and fake interview links.
What this covers
- Payment requests — Real employers don't charge for jobs or training.
- Email domains — Check it matches the company's own site.
- OTPs & logins — Never share them with anyone.
- Fake interview links — Care with unknown chat apps and downloads.
- Reporting — The 1930 helpline and cybercrime.gov.in.
What to practise
- Check one recent offer against these rules
- Confirm the opening is listed on the company's own careers page
Free resources
- National Cyber Crime Portal — Report online fraud and job scams (Free)
- Have I Been Pwned — Check if your email appears in a data breach (Free)