1. Introduction

Record a 6 year old Android went to Ali interview and the interviewer’s dialogue, I hope to help you in the interview

You will be given a ticket to the interview first

2. Interview time: 1 hour

1. Interviewer: Tell me about your most mature project first.

(Rest assured, the interview will be asked about your project first, to know your situation)

Interviewer: Uh-huh. Ok, I have some paper here. Can you briefly draw a schematic diagram of your project?

Interviewer: Ok, tell me about the optimization you made in the project.

Interviewer: According to what you said, in order to speed up the opening of the APP at the start of the project, you said you did the pre-loading operation of dex subcontracting. Why do you need to open an extra process to preload DEX separately?

Interviewer: Where does dex usually go? How?

Interviewer: What are the weaknesses of MVP?

Interviewer: Besides MVP, MVC, MVVM, what other architectural approaches are there?

The Clean architecture, jetpack’s AAC, has been around for a long time.


******* well, the interview here has been a period of time, the problem is relatively simple, belongs to the warm-up stage, the following began to enter the depth of the problem *********


Interviewer: You’ve been working on Android for a long time. Tell me what you’re good at

(As you know, in-depth questions need to know where you are good at, otherwise you can’t go into in-depth questions, of course, here the author chose the direction of performance optimization)

9. Interviewer: Tell me the difference between the way dex is loaded in 5.0 and 4.0.

(This is still a certain depth, have not really done performance optimization friends, may really not know, simply say, 5.0 above will automatically load the dex when installing, and 4.0 will not)

10. Interviewer: Why is there this mechanism above 5.0?

(This is really not answer, know friends remember to leave a message)

Interviewer: Have you heard about Odex?

(It is estimated to be a reminder of the previous one, but I have only heard of it, but I don’t know much about it)

12. Interviewer: Tell me what Android virtual machines you know.

(Keep digging… ART virtual machine, Dalvik virtual machine, after saying that I feel some regret, I feel that the next question is to continue to dig.)

Interviewer: Is there any difference between the two virtual machines?

(Fortunately, the ART virtual machine can automatically load multiple dex upon installation, but the Dalvik virtual machine does not.)

14. Interviewer: Look down at your resume for about 2 minutes, then ask: What are synchronization barriers and how do you handle frame drops during Android drawing

(Without further digging virtual machine, this investigation is the principle of Android drawing, have seen the principle should all know, synchronization barrier, and then send VSync pulse signal including frame drop processing, etc., or relatively simple, will not be described)

Interviewer: Have you heard anything about X2C? How it differs from a regular XML transformation (which is simpler and will not be described)

16. Interviewer: Handler holding a reference to an Activity can cause a memory leak. How can you avoid it?

Interviewer: What other detection tools are available for memory leaks?

18. Interviewer: LeakCanary principle say (you know, must be 17 when I draw out LeakCanary… Lol, state the principle)

19. Interviewer: Explain how ANR works

Interviewer: What other memory optimizations have been made

(Reduce the package size, reduce the resource path of a framework of wechat AndResGuard to understand, but also can convert pictures into WebP)

Interviewer: What’s the difference between Webp and PNG

(Ok, the last question left a hole, but know webP to meet the resolution requirements of the image and the size will be small, not much else)

Interviewer: Do you know how WebP works

Arrange to… =, =)

23. Interviewer: Do you know how okHttp works? How is it encapsulated when used

(This or understand, began to test the network aspect)

24. Interviewer: Does Dagger know? Dynamic compilation, okay?

(Basic questions)

Interviewer: What’s the difference between dynamic compilation and reflection other than performance?

26. Interviewer: Come on, there’s a blackboard at the back. Draw a UML diagram of the factory model

(The first part enters the end, inspect the operational ability)

Interviewer: Have you dealt with any gesture feedback

Interviewer: Do you deal with deadlocks? How to avoid

(Probably feeling a little tired and nervous, I started to ask some simple questions to calm down, haha)

Interviewer: What’s the difference between HTTP and HTTPS?

Interviewer: Three handshakes

Interviewer: Let’s do a problem. Just write a double-linked list and flip it

(Last question)


Then a very nice man came in and brought me a glass of water




Then after waiting for a period of time, open the second face

The second interview is mainly the basis, and the time is longer, more questions, put in the next chapter, compared with the online Ali interview questions, really different from my interview ah, the online are very simple ah, are the sharing of 3 years of work experience… Ahhh…

If you like it, be sure to like it and follow it

The Second Face of Ali (Basic)

The Three Sides of Ali (Project)

Jingdong interview and so on

All are real records, I hope to help you!