From across the pond, Saumye Srivastava, a former Flipkart interviewer who interviewed uber, Microsoft and Google, as well as a handful of startups, prepared a checklist for Android candidates.

“The ability to ask The right questions is more than half The battle of finding The answer”

– Thomas Watson

Questions

  1. Layout InflaterHow willXMLParsed intoView? How are attributes read and enforced? And aViewWhat steps do YOU need to go through before it’s fully displayed on the screen?
  2. Say you’re rightfindViewByIdUnderstand? For a given2ViewView references, how would you find their ancestor views?
  3. Explain in detail what triggers when you click on the screenlistenersIncluding the order in which they are executed? And event handling mechanisms between child and parent layouts.
  4. Thread,Handler,Looper,MessageQueueWhat is?
  5. AndroidWhat are the different concurrency methods on? Can you explainExecutorServiceCachedThreadPool,FixedThreadPool,AsyncTasksHandlerThreadsThe difference between?
  6. AndroidHow does garbage collection work? Explain the meaning of counting, marking, and scanning garbage collection algorithms.
  7. Think and list all the ways in which application components and services can communicate?
  8. When to usebindService?ServiceConnectionWhat is? The inner workings of binding services.
  9. useMessengerAIDLWhat’s the difference? useAIDLWhat are the benefits of interprocess communication?
  10. In-memory vs Bundle vs SharedPrefs vs DatabaseHow do you use it?
  11. List all the reductions you can think ofapkSize method.
  12. ANRHow are frame drops and freezes caused, and how are they different?
  13. Proguard/R83What are the steps, and how do I enable and disable them?
  14. What is theconsumer proguardIt withproguardWhat’s the difference?
  15. For a Proguard/R8 obfuscated APK, how can I see unobfuscated stack call logs?
  16. SharedPrefscommitapplyWhat’s the difference?SharedPrefsDatabasesWhich has better performance?
  17. How to implement an observableSharedPrefsDatabases, such as listening on keys/tables/queries?
  18. AndroidWhat is the difference between data sharing and control sharing between upper processes? And how?
  19. SerializableParcelableWhat’s the difference?SerializableWhat are the disadvantages?
  20. inapkTo protectapiWhat are the modes of keys?
  21. What is themiddle attack? How to protect youapiImmune to it and other attacks?
  22. Explain in detailAndroidPackaging process? What is theR. Java, Resources. Arsc, manifest merging & signing?
  23. app bundleapkWhat’s the difference? What is thebuild flavours? Them with theproduct flavoursWhat’s the difference?
  24. Activity & Activity.Fragment & FragmentActivity & FragmentWhat are the ways of communication?
  25. ActivityWhat are the differences between startup modes?
  26. viewholderWhat is the pattern? inListViewHow did you achieve that? explainRecyclerViewThe best way to implement listening in.
  27. RecyclerViewWhat are the performance optimization methods of?
  28. RecyclerViewHow to implement one inSticky header?
  29. How are changes in the dataset reflected inRecyclerViewIn the? What is theDiffUtil?
  30. JavaWhat is the reflection in? Why is it recommended to use as little as possible?
  31. JavaWhat are generics in? When are they useful? How do you limit them?
  32. What is theAndroidIn theContent Provider? How do you access the content it provides?
  33. Implemented on a data set separating filesContent ProviderIs it possible?
  34. AndroidHow does the database on? What is theORM & Data Access Object? What are some ways to optimize database reads, writes, and updates?
  35. SQLiteHow safe is thread-safe? Table level locks or database level locks?
  36. What is the dependency Injection pattern (Dependency Injection Pattern)? It is similar to the service registration pattern (Service Registry Pattern(How does it compare?
  37. DaggerKoinWhat is? How do they work inside?
  38. In dealing withwebviewWhen, what are the security problems?
  39. unitTesting andinstrumentationWhat’s the difference?Mockito vs RoboElectric?
  40. AndroidUnder theCI/CDWhat is? What process reviews did you go through before code was merged, tested, released, and rolled out?

Finally, we can discuss the differences between overseas interviews and domestic interviews.