Training Trains logo

Android App Development Internship

Build modern Android apps with Kotlin and Jetpack Compose: screens, navigation, APIs, local storage, notifications and a release-ready build.

KotlinJetpack ComposeAndroid StudioRoomRetrofitFirebase

What you'll work on

Full syllabus: all 60 graded tasks

These are the actual tasks the internship portal assigns for this domain. You submit each one with proof (a GitHub link or document) and a mentor reviews it.

Level 1: Foundations (24 tasks)
  1. Set up Android Studio. Install Android Studio, create an emulator and run a Hello World app. Commit the project to a repo named android-internship.
  2. Kotlin basics. Write Kotlin examples for variables, null safety, data classes, when, collections and lambdas.
  3. Project structure. Explain the manifest, Gradle files, resources and the main activity of a new project.
  4. First Compose screen. Build a profile screen with Jetpack Compose using Column, Row, Image, Text and Button.
  5. State in Compose. Build a counter and a text field form that react to state with remember and mutableStateOf.
  6. Lists. Show 100 items in a LazyColumn with a click action on each item.
  7. Navigation. Add three screens with Navigation Compose and pass an argument between two of them.
  8. Material Design 3. Apply a Material 3 theme with colours, typography and dark mode support.
  9. Activity lifecycle. Log every lifecycle callback, rotate the device and explain what happens to state.
  10. Resources and localisation. Move every string to strings.xml and add Tamil or Hindi translations.
  11. Toasts, snackbars and dialogs. Show feedback to the user in three ways and explain when to use each.
  12. Build an APK. Build a debug APK, install it on a real phone and share a screenshot.
  13. Kotlin coroutines basics. Write examples of launch, async, delay and structured concurrency.
  14. Kotlin collections practice. Solve 10 problems with Kotlin collection functions (map, filter, groupBy, fold).
  15. Custom Compose components. Build reusable components (a rating bar, a chip group) with parameters.
  16. Compose previews. Add previews with different themes, font sizes and sample data.
  17. Forms and keyboard. Build a form with proper keyboard types, IME actions and validation.
  18. Bottom navigation. Add a bottom navigation bar with three destinations that keep their state.
  19. App icon and splash. Create an adaptive app icon and use the SplashScreen API.
  20. Intents. Share text, open a web page and dial a number using intents.
  21. Logging and Logcat. Use Logcat filters to debug your app and remove logs from release builds.
  22. Gradle version catalogs. Move dependencies to a libs.versions.toml version catalog.
  23. Edge-to-edge UI. Make your app draw edge-to-edge with correct insets.
  24. Animations in Compose. Add animated visibility, content size and a simple transition.
Level 2: Building real features (20 tasks)
  1. MVVM with ViewModel. Refactor your app to use a ViewModel with StateFlow and explain why state survives rotation.
  2. Networking with Retrofit. Load data from a public API with Retrofit and coroutines, with loading and error states.
  3. Images. Load remote images with Coil, with a placeholder and an error image.
  4. Local database with Room. Save favourites in a Room database and show them on a separate screen.
  5. DataStore preferences. Store user settings (theme, language) with DataStore.
  6. Dependency injection. Add Hilt and inject your repository and API service.
  7. Permissions. Request camera or location permission correctly and handle denial gracefully.
  8. Background work. Schedule a periodic sync with WorkManager and show a notification when it finishes.
  9. Unit tests. Write unit tests for your ViewModel and repository with fake data sources.
  10. Firebase integration. Add Firebase Authentication (email or Google sign-in) to your app.
  11. Paging 3. Load a long API list with Paging 3 and show loading and error footers.
  12. Search with Flow. Build search using Flow operators (debounce, distinctUntilChanged, flatMapLatest).
  13. Camera and images. Take a photo with CameraX or the system picker and display it.
  14. Location. Show the user's location and distance to a point with fused location.
  15. Maps. Show places on a map with markers using Google Maps Compose.
  16. Clean architecture layers. Split your app into data, domain and UI layers with use cases.
  17. Multi-module project. Split features into Gradle modules and explain the benefits.
  18. Error handling. Show friendly messages for network, server and empty states everywhere.
  19. Analytics and crash reporting. Add Firebase Analytics events and Crashlytics.
  20. Deep links. Open a specific screen from a link with Navigation deep links.
Level 3: Professional work and capstone (16 tasks)
  1. Offline-first app. Make your app show cached data offline and sync with the API when back online.
  2. UI tests. Write Compose UI tests for the main screens and run them on an emulator.
  3. Performance. Profile your app with Android Studio's profiler, fix one slow screen or memory leak, and record the result.
  4. Accessibility. Add content descriptions, larger touch targets and TalkBack support, and test with TalkBack on.
  5. Push notifications. Send push notifications with Firebase Cloud Messaging and open the right screen on tap.
  6. Release build. Create a signed release AAB with R8 shrinking and explain what each step does.
  7. CI for Android. Add GitHub Actions that build the app and run tests on every push.
  8. Capstone: published-quality app. Ship a complete app (auth, API, offline storage, notifications, tests) ready for the Play Store, with screenshots and a demo video.
  9. Widgets with Glance. Build a home screen widget with Jetpack Glance.
  10. Foreground service. Run a timer or download as a foreground service with a notification.
  11. Security. Store a token with EncryptedSharedPreferences or DataStore with encryption and add network security config.
  12. Baseline profiles. Add a baseline profile and measure startup time improvement.
  13. Play Store listing. Prepare a store listing: screenshots, description, privacy policy and content rating.
  14. In-app updates and reviews. Add Play in-app update prompts and in-app review requests.
  15. Tablet and foldable support. Make your layout adapt to tablets using window size classes.
  16. Capstone 2: production app for a real need. Build an app that solves a real local need (with a real user), released to internal testing on the Play Console or as a signed APK, with feedback documented.

Real software work, not just training

Every Android App Development task is reviewed by our team and saved to your portfolio. Interns who pass the readiness check can take real work from Training Trains, W3AppDevelopers and DomainHostly projects on the Company Work board.

Mobile Application Development
See the software we build →

Frequently asked questions

Do I need experience to join the Android App Development internship?+

A laptop that can run Android Studio (8 GB RAM recommended). Basic programming helps but is not required.

What will I do in the Android App Development internship?+

You complete 60 graded tasks in three levels: foundations, real features, and professional work. Each task is submitted with GitHub or document proof and reviewed. The final capstone is: Capstone 2: production app for a real need.

Do I get a certificate for the Android App Development internship?+

Yes. After your required tasks are approved, your attendance is above 75% and you pass the proctored final exam, you get a graded completion certificate that anyone can verify at trainingtrains.com/verify.

Can I do the Android App Development internship online?+

Yes. You can do it fully online from home, or offline at our Erode and Perundurai branches. Tasks, quizzes and mentor reviews are the same in both modes.

Available both online (work from home) and offline at our Erode and Perundurai branches - see the full internship program details for departments, duration, and the application process.