How to prepare for the 2021 technical interview for older Android developers

This year is undoubtedly the winter of job hunting. Every student who comes out to find a job is worthy of respect. Although it is a bit difficult to find a job now, it will also force us to become better selves.

But whether it's the peak season or the cold winter, some outstanding students find jobs very smoothly. So we still have to improve our own hard power.

This article mainly answers these questions. If you want to know the following points, you can read on

  • It's easy to find a job now
  • How to write a resume
  • How to choose a reliable company
  • How much salary can I get for my experience level
  • Asked how to answer the technical difficulties in the project
  • 2021 Android Interview Questions
  • How to chat with HR, such as talking about money, etc.

1. Is it easy to find a job now?

Presumably everyone now often sees a certain company layoffs again, and they worry about whether they can't find a job. In fact, in general, although the current environment is indeed not very good, there are companies that lay off employees, and there must be companies that are hiring, and there must be more companies hiring than companies that lay off employees.

Then come to answer the question "Is it right to find a job now ?" For people with good skills, they will never worry about this problem. But for people who are not so skilled, it does require some skills to have more opportunities than others. For example, write a clear resume and prepare well before the interview.

In general, opportunities are reserved for those who are prepared . No matter the environment is good or bad, you will definitely have more opportunities than others if you prepare carefully.


2. How to write a resume

I usually do charge services for revising resumes, and I will be an interviewer in the company. Generally speaking, I have read a lot of resumes. But most people's resume routines are the same. What kind of technology stack the project uses and what functions are done are generally running accounts.

So once you write a resume that is different from this kind of routine, your resume will inevitably be looked at by the employer, and it is inevitable to increase the success rate.

Generally speaking, I would advise others to write a resume like this:

  • The full text puts an end to any proficient words. If you are really proficient, you do not need to submit your resume to find a job .

  • The resume is limited to about two pages . You don’t need to find any resume templates. You can directly generate PDF files with Markdown . The interviewer doesn’t care how good your resume is. He cares more about the content of your resume.

  • Pay attention to the capitalization of any English words, and there is a space between numbers and English and Chinese .

  • In the project, there is no need to introduce what functions this project has, and we will go straight to the most worthwhile content of this project . Such as bugs encountered, own thinking, etc. But many people may say that the business is very simple and there is nothing to say or that there are no problems at all. When encountering this problem, first break out of the business framework and think about other problems. I believe everyone has written components, but how to design a good component is not something everyone can do.

  • The best way to write project experience is to follow this idea: what problems were encountered, how to solve them, and the results .

  • Assuming that every technical point on the resume will be asked by the interviewer, consider all the knowledge points to ensure that they can answer.


Three, how to choose a reliable company

A reliable company must be the sum of the following points: awesome core management, good ideas, high financing, and promising industries .

The first two points are basically black boxes for job seekers, so we can only choose companies from the latter two points.

The higher the early financing and the stronger the leading company, the more likely the company is to be reliable. Because the decision-makers of these companies are not fools, people must have ample reasons to believe in and invest money in this company.

Another promising industry is also a necessary condition. If you don't know what a promising industry is, choose from industries that are closely related to people. Such as food, housing, transportation, education and so on.

At this time, you might say, what if I learn about these situations in a company? Then "Sky Eye Check" can perfectly solve your problem. We can learn more about a company's financing, industry, competing products, legal risks, management, products, etc. through this website.


4. How much salary can I get for my experience level

Regarding this question, I really want to say how much experience really has nothing to do with how much salary .

For the same year of experience, some people can only get 10K, but some people can get 20K. The reason is that the two people have different technical abilities .

If you have good skills, you can get more salary than others; if you have average skills, you can only get a lower salary. This is a very realistic problem. So salary is only linked to technology, not your so-called experience.

If you just want to know the average salary of the industry, just look at the salary provided by the local company. If you feel that your salary is not in line with the industry average salary, you can bravely change your job.


5. Asked how to answer the technical difficulties in the project

For this question, the interviewer examines your learning ability and problem-solving ability .

Many people will be confused when encountering this problem, and feel that Google has solved all the basic problems. Of course, if you really encounter a problem that can't be solved by Google right away, it is great. Just follow the steps of describing the problem, how to solve the problem, and the result.

So if you think your project is really simple and there is nothing to say, just follow the following ideas to talk about this topic. For example, if you have never been in contact with a certain technology before, how did you learn it, what problems you encountered during the learning process, and how to solve it. For example, if you wrote this project, you have any insights and ideas .

Because of this topic, the interviewer does not say that you must listen to what difficult problems you have encountered in the project, but to examine your learning ability and problem-solving ability. Even if you don’t have anything to say, it’s okay to talk about your own learning process, frustration, and thoughts. After all, it’s better than saying that it feels simple.


Six, 2021 Android interview betting questions

Java related

1. Containers (HashMap, HashSet, LinkedList, ArrayList, array, etc.)

2. Memory model

3. Garbage collection algorithm (JVM)

4. What is the difference between garbage collection mechanism and calling System.gc()?

5. Class loading process (need to look more, focus on understanding, it is more important for hot fix and plug-in)

6. Reflection

7. Multithreading and thread pool

8. Design patterns (six basic principles, design patterns commonly used in projects, handwritten singletons, etc.)

9. Java four major references

10.Java generics

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


Android related

1. Custom View

2. Event interception and distribution

3. Some performance problems that have been solved, the practical application in the project

4. Performance optimization tools

5. Performance optimization (tell the performance optimization you have done in your own project)

6. Http[s] slow request solution (DNS, carrying data, direct access to IP)

7. How to realize the cache itself (LRUCache principle)

8. Graphics and image related: OpenGL ES pipeline process, EGL understanding, Shader related

9. Differences and usage scenarios of SurfaceView, TextureView, GLSurfaceView

10. Animation, Differentializer, Estimator (View Animation and Attribute Animation in Android-Brief Book, Introduction and Use of Android Animation)

11.MVC、MVP、MVVM

12. Handler, ThreadLocal, AsyncTask, IntentService principle and application

13. Gradle (Groovy syntax, Gradle plug-in development foundation)

14. Hot repair, plug-in

15. Componentized architecture ideas

16. System packaging process

17. What are the ways to store data in Android.

18. SharedPrefrence source code and problem points;

20.sqlite related

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


Source code understanding

  • Glide: loading, caching, LRU algorithm (how to design a big picture loading framework by yourself) (LRUCache principle)

  • EventBus

  • LeakCanary

  • ARouter

  • Plug-in (the principle and genre of different plug-in mechanisms, advantages and disadvantages. Limitations)

  • Hot fix

  • RXJava (RxJava's thread switching principle)

  • Retrofit (What encapsulation does Retrofit do on OkHttp? The difference between dynamic proxy and static proxy, how is it implemented)

  • OkHttp

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!

Algorithm and data structure

  • Time complexity / space complexity

  • What are the commonly used sorting algorithms?

  • String reverse

  • Linked list reversal (head insertion method)

  • How to find the first character that appears only once (Hash search)

  • How to find the common parent view of two child views?

  • The median in an unordered array (fast sorting idea)

  • How to give an integer array and a target value, find the two numbers in the array whose sum is the target value.

  • Preorder, middle order, and postorder traversal of binary tree

  • Max K problem

  • Breadth, depth first search algorithm

  • String to int. The core algorithm is three lines of code, but there are many critical conditions. In addition to null, you also need to pay attention to negative numbers, the maximum and minimum boundaries of Integer, etc.;

  • How to judge that a singly linked list has rings?

  • 10 billion words, find the most frequent word. Several options are required;

  • Reverse order for every k bits of the linked list;

  • Mirror binary tree;

  • Find a number that appears more than half of the times in an unordered array;

  • Calculating the maximum depth of a binary tree requires a non-recursive algorithm.

  • String method to calculate addition.

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


The internet

1. Network framework comparison and source code analysis

  1. What are the seven network protocols?

  2. What is the difference between Http and Https? Why is Https more secure?

  3. HTTPS connection establishment process

  4. Explain three handshake and four wave hands

  5. The difference between TCP and UDP

  6. Cookie和Session

  7. What is DNS?

  8. DNS resolution process

10. HTTP message structure

11. The difference between HTTP and HTTPS and how to achieve security

12. How to verify the validity of the certificate?

13. Where is symmetric encryption and asymmetric encryption used in https? Do you have any knowledge of encryption algorithms (such as RSA)?

14.How does the client determine that the message it sent was received by the server?

15. Talk about your understanding of WebSocket

16. The difference between WebSocket and socket

17. Talk about your understanding of Android signatures.

18. Please explain why Android adds a signature mechanism?

19. Video encryption transmission

20. How is App sandboxed and why do you want to do it?

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


Kotlin related

1. Analyze Kotlin's delayed initialization from the principle: lateinit var and by lazy

2. Use Kotlin Reified to make generics simpler and safer

3. Analysis of the implementation principle of Extension Functions in Kotlin

4. Top-level functions and attributes of the Kotlin series

5. Kotlin is compatible with the biggest "pit" encountered by Java

6. Kotlin's coroutine took a hard look

7. The essence of Kotlin coroutine "hanging"

8. What exactly is a "non-blocking" suspension? Are coroutines really more lightweight?

9. How does resource confusion affect Kotlin coroutines

10.Kotlin Coroutines (coroutine) complete analysis

11. Crack Kotlin coroutine

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


Flutter related

1. Flutter principle and practice

2. Demystifying Flutter Hot Reload (Principle)

3. Flutter dynamic exploration

4. How Flutter communicates with Native-Android perspective

5. Deep understanding of Flutter Platform Channel

6. Flutter Engine compilation guides north

7. Deep understanding of Flutter multithreading

8.Flutter state management-preliminary and summary

9.Flutter | State Management Guide-Provider

10. In-depth understanding of Flutter application startup

11.Flutter rendering mechanism-UI thread

The contents of the notes are all free to share, and those who need the full version of the notes [click me] get it for free!


7. How to chat with HR, such as talking about money, etc.

First of all, you met with HR, indicating that you have basically become one of the candidates . At this time HR will talk to you a lot of questions, these questions are to understand some of your personal situation. For example, personality, reaction ability, emotional intelligence, etc. In addition, the HR of most companies does not have a veto power. If the interview is not successful, it is likely that there are better candidates instead of being stuck by HR.

Then it comes to talking about money. First, recruiting people in need with the least salary is definitely one of HR's assessments, so it is normal to keep prices down. And the salary of the previous company is also a very important reference. Generally speaking, a salary increase of more than 30% is very awesome, usually around 20%.

Your offer price is generally the upper limit of the offer. Taking into account the low price situation, you can go up to about 1K on the original expected salary, and then you can make a selective offer based on the situation of the interview .

  • The noodles are good, I originally wanted 16K, so I had to ask for an extra 1-2K, no problem
  • If the noodles are average, please report 16 K
  • The noodles are average or not very good, but I really want to join this company. You can drop 1-2K as appropriate. This is mainly up to you
  • I don’t really want to go to this company and make a free price

8. Conclusion

I always think that a technical interview is not an exam. I will recite the questions before the exam, send you an exam paper, and give you a notice when you finish answering it.

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 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, here I also share a piece of dry goods, the Android learning PDF + architecture video + source notes collected by the big guys , as well as advanced architecture technology advanced brain maps, Android development interview special materials, advanced advanced architecture materials to help you learn Improve the advanced level, and save everyone's time to search for information on the Internet to learn, and you can also share with friends around you to learn together.

Guess you like

Origin blog.csdn.net/ajsliu1233/article/details/111278903