I just wanted to take a while, but I didn't expect to let it in! The interview process of a small Android company with a double non-slag book

Preface

The author graduated from an unnamed small undergraduate in 2016. It has been in development for 4 years by June 2020. After graduation, I have been working in various small companies for small development. But Xianyu also has a dream of turning over, and has always wanted to visit Dachang. Just stay away and don't go in. So I planned to try my luck at the beginning of 2020 when I was going to be lucky. When the epidemic happened, the plan was shelved. One is afraid of death. I was trembling when I went out, let alone interviews in various cities. Second, all kinds of companies are laying off employees, and only large companies are still hiring a small number of people. The threshold of large companies is probably going to be trampled on.

After the epidemic stabilized, I began to slowly prepare for job-hopping. By the time of the Golden 9th and the Silver 10th in 2020, I first visited some small and medium-sized companies, and finally chose a few favorite large factories to submit resumes and resumes. For the interview, I successfully joined Byte Douyin before the Spring Festival, and now I am officially employed. I will share my interview experience. I hope that I can give you a reference and help everyone to change jobs.

resume

The first is a resume. Generally, you can find a template and write down the skills you have mastered and your project experience.

Two pages of resume are recommended, too long or too short is not good.

It is recommended to replace understanding and proficiency with mastery and proficiency.

Here is a small routine to teach everyone, which can improve the chance of receiving an interview invitation. That is to print the logo of the company preparing for the interview on the upper left corner of your resume. The interviewer suddenly turned to a resume printed with his company's logo among a bunch of resumes, and he will inevitably look at you more.

About the algorithm

Algorithms can be said to be the necessary knowledge reserve for job hunting, depending on the company's business. Based on my interview experience, in general, I don’t ask much, and some companies don’t ask about algorithms.

But if you go to interview Byte, NetEase, Kuaishou, a company that must ask algorithms every round, it would be a pity that you can't get an offer for the algorithm questions.

Algorithmic questions are like the silent writing of ancient poems in the college entrance examination Chinese. There are not many points, but it is a pity to lose it.

It is mainly the accumulation of brushing questions in daily life.

Face sutra

Next is the experience of each company, share it for your reference.

Shanghai Bilibili (Station B)

The first one I went to was station B, which I had been thinking about, and I could hang up in the second round...

One side of station B

1. Self-introduction
2. Treemap, red-black tree, fully balanced binary tree
3. Quick sort and insertion sort
4. How to sort a roughly ordered array, the fastest time complexity
5. How to customize a FlexLayout
6. RecyclerView Recycling reuse mechanism
7. How to achieve partial updates of RecyclerView
8. Talk about the understanding of generics, how is the analysis of generics in Retrofit
9. Talk about understanding of the binder mechanism
10. Process status, thread status, Is there a difference between the two
11. The understanding of synchronized locked objects
12. The life cycle change of
Fragment replace 13. What is the difference between TCP and UDP? Talk about the process of beckoning and waving.
14.
Have you ever used C++ for development? 15. Do you understand Dalvik and Hotspot virtual machines? What's the difference?

Two sides of station B

1. Say that you have done the most satisfactory project
2. Performance optimization What work have you done
3. What work have you done for screen adaptation
4. What pitfalls (difficulties) have encountered and how to solve it
5. If you want to come Develop a page of station B, which page can be started quickly
6. Which frameworks have you used? MVVM? Has Jetpack started?
7. Which open source libraries
have you used? 6. Have you used hot fixes and plug-ins, and what pits have you encountered? Can you talk about the principle?
7. Why do you want to come to station B ? What kind of video to watch more, like more or more prostitutes?
8. What do you think can be optimized in station B APP

Betta live

Betta side

1. Understanding of
Java polymorphism 2. HashMap principle
3. Handwriting a singleton mode, asking what are the advantages and disadvantages 4. View
drawing process
5. APP startup process
6. Talk about the principle of plug-in, resource plug-in id How to solve the repetition?
7. Recyclerview optimization
8. Handler message mechanism
9. Which third-party libraries have you used, the OKHTTP principle, and the hot fix principle?
10. Understanding of the screen refresh mechanism, double buffering, triple buffering, butter model
11. OnCreate, onResume, onStart, where can the width and height be obtained
12. Why use the thread pool (the process of thread allocation, and the process The difference in the process of allocating resources)
13. What algorithm is used for GC kernel cleaning, and what algorithm is there in the old age?
14. The TCP three-way handshake waved four times. What happens if no response is received for the first and third time?
15. What is the difference between MVP and MVVM?

Insert picture description here

Tencent

Tencent side

1. What are the construction methods? What is the difference between overloading and rewriting?
2. What status does the thread have?
3. WebView security issues, have you optimized the performance of WebView
4. RecyclerView cache structure
5. RecyclerView recycling reuse mechanism, what to recycle? What to reuse? Where does the recycling go and where does the reuse go?
6. How does Handler sleep? What is the principle of epoll? How to implement a delayed message, if a delayed message is removed, will the hibernation be lifted?
7. How to cancel after gesture operation ActionCancel
8. Familiar with AIDL? What data types are supported? Talk about the role of oneway? How to understand one-way call?
9. Talk about how https prevents packet capture

Insert picture description here

Byte Douyin (offer)

Byte technical

1. Introduce the architecture of your project
2. How does Rxjava implement thread switching
3. Rxjava custom operators
4. The principle of
ARouter 5. How ARouter implements interface calls
6. How ARouter implements page interception
7. How MVP handles memory leaks
8. How does OkHttp implement connection pooling?
9. If you are asked to implement a network framework, what will you consider
10. What performance optimization work have you done
11. The principle of hot repair, the principle of hot repair of resources, will there be The problem of resource conflicts
12. How does the nested ViewPager in ViewPager deal with sliding conflicts
13. What are the design patterns in the android source code
14. Talk about the principle of the binder mechanism
15. How to retrofit post requests
16. Some methods of interface optimization, ConstraintLayout implementation three
Equally divided, ConstraintLayout animation. 17. Synchronize usage, volatile usage, the difference between the two and scenarios
18. Have you ever done process keep-alive?
19. How is App sandboxed and why do you want to do it?
20. Talk about the process of bindService. How did you optimize the background service process?
21. How do you optimize the network in a weak network environment?
22. The realization principle of
ConcurrentHashMap 23. Kotlin Xiecheng
24. Have you ever gotten started with flutter?
25. What is the difference between MVP and MVVM
26. Use a loop to implement a pre-order traversal, and some of the programs mentioned do not need to write code.
27. A problem of adding two linked lists. Idea + pseudo-code implementation (this is different from Ali, because it is a platform of Niuke, in fact, the coding experience is not particularly good, the interviewer asked me to use pseudo-code to realize the idea)
28. Rhetorical

Byte hr surface

1. Why consider changing jobs?
2. How have you been in your company for the past few years?
3. In the past few years, what do you think is the most valuable work
4. What is
your impression of byte 5. Do you have anything to ask me? How many offers are there at present, what is the tendency?

Prepare for gold three silver four

Let me share with you a collection of "Android Development 2020 Interview Real Questions"

The interview book not only includes the questions I encountered in the interview, but also includes questions collected from some friends. In the future work, I will continue to update and enrich the interview book. Of course, I also hope that everyone can contribute more high-quality interview questions.

It not only shows the common interview questions and answering skills, but also explains in detail the knowledge points contained in each question, so that every programmer not only knows what it is, but also why it is.

Due to space reasons, the following screenshots show part of the content. If you need the following complete study notes PDF, you can like + comment to support the worker brother, click here to pick it up for free !

The main body is divided into 6 parts in total:

  • Java basics (★★)
  • Java Advanced (★★)
  • Android basics (★★★)
  • Android Advanced (★★★)
  • Android project (★★★)
  • Frequently Asked Questions of Project Interview (★★★)

1. Java basics (★★)

Object-oriented thinking
, polymorphic
exception handling,
data type,
Java IO
collection,
Java multithreading

Java Advanced (★★)

Reflection in
Java Dynamic proxy in
Java Design pattern & recycling mechanism in
Java Class loader in Java

Android basics (★★★)

Basic knowledge of Android
Activity
Service
BroadCastReceiver
ContentProvider&Database

Layout
ListView in Android
JNI & NDK
Network Access
Intent Fragment in Android

Android Advanced (★★★)

Android performance optimization
Android screen adaptation
AIDL
custom control
event handling in
Android Android signature
animation
network protocol in Android
Other

Frequently Asked Questions of Project Interview (★★★)

  • Development cycle
  • Problems encountered in the project
  • The biggest gain in the project
  • How the project went live
  • How the project is profitable
  • Draw project architecture diagram
  • Project development process
  • Your role in the project
  • Which modules in the project are you responsible for
  • Talk about the specific implementation of the module you are responsible for
  • Which third-generation frameworks are used in the project
  • Have you ever written a framework by yourself
  • How do you improve yourself (learning) in your spare time
  • Do you have your own technical blog
  • Your career plan
  • Why leave
  • Why choose our company
  • Talk about the highlights and shortcomings of your project
  • How does your project maintain a consistent style
  • How is the project structure built
  • How to solve the screen adaptation
  • What source code have you seen
  • How is the project version upgraded
  • What version control tool to use
  • Can you develop independently
  • How the app interacts with the server
  • Have you written the requirements document?
  • Has the interface document been written?
  • Which cloud servers have been used
  • Which third-party platforms have used

Resume + social recruitment solution + classic HR interview analysis

The above is a summary of the real questions encountered in the Android intermediate and senior interviews. I hope it will be helpful to everyone. At the same time, many people often encounter many interview questions about resume production, career confusion, and HR classic interview questions. Similarly, I have also collected and compiled a full set of resume production, puzzles of recruitment by the Golden Three and Silver Four Clubs, and HR interviews. If you have any questions, I can provide professional answers.

For Android development friends, it should be the most comprehensive and complete interview information. In order to better organize each module, I refer to many high-quality blog posts and projects on the Internet, and strive not to miss every knowledge point. Many friends relied on these contents to review and got offers from big manufacturers such as BATJ. This information has also helped many Android developers, and I hope to help you too.

Due to space reasons, if you need the PDF of the above complete study notes, you can like + comment to support the worker brother, click here to pick it up for free !

End of sentence

I always think that a technical interview is not an exam. I recite the questions before the exam, send you an exam paper, and give you a notification after you finish the exam.

First of all, a technical interview is a process of getting to know yourself and the gap between yourself and the outside world.

More importantly, the technical interview is a two-way understanding process. Let the other party discover your shining points, and at the same time try to find the other’s shining points, because he may be your colleague or leader in the future, so the interviewer asks When you have any questions, don't say no, try to understand the content of his work and the atmosphere of the team.

Looking for a job is nothing more than looking at three points: who you are with, what you do, and how much you give, and you have to divide the three in your own mind.

Finally, I wish you all find your favorite destination in this unfriendly environment!

Guess you like

Origin blog.csdn.net/Androiddddd/article/details/113884325