Einstein said, “Patience and perseverance always pay off.” I have always taken that as my motto, that motto
And this year it’s definitely worked out for me.
Every programmer has a big factory dream, I am no exception. Advantage for many no qualifications, interview companies is very difficult, this for me, too, was born of a second-tier cities of ordinary undergraduate, thought is three point one line of life through life, until life changes, just let me have the new ideas and goals, so I this 2 Tony also struggle to get up, unexpectedly won the tencent offers.
Today, I share this experience mainly in the hope that it can inspire technical people who are also troubled by academic qualifications and have a reference value for their career and technical planning. Thank you!
I sent out my resume in the afternoon of June 28, and it took 39 days from sending my resume to the end of the interview to three technical interviews and one HR interview.
Tencent three times by +HR face
Tencent one aspect of the test questions
-
To introduce myself
-
Do you know android database?
-
Several ways to store data: SharePreference, database, file
-
What lifecycle methods are available when using an Android database
-
What do I need to do if I want to add fields to the database?
-
Are database reads and writes thread-safe?
-
SharePreference is thread-safe. What is the difference between Apply and COMMIT
-
This section describes the Handler mechanism
-
Five layer model of computer network
-
The HTTP status code
-
Algorithmic question: With 10 million people and 10,000 COVID-19 testing kits, how can we detect as many people as possible who have COVID-19
Tencent 2 face area test questions
-
Introduction of the project (asked me to live a life without love, fortunately, or passed)
-
Bubble sort and heap sort
-
What is the structure of a heap
-
Why can a computer calculate that 1+1=2?
-
Consumer producer model
-
What happens if you use a normal list that’s not thread safe
-
What’s the difference between what the sychronized keyword modifies
-
Can other threads get other real methods of that instance
-
What is the difference between volatile and locking
-
Is i++ safe?
-
Hand rip code: map top left to bottom right, obstacles, up, down, left and right directions can be walked (BFS or DFS)
-
For another question, the common parent of the two child nodes (find root and target paths recursively, explain the logic to the interviewer)
Tencent three aspects of the test questions
-
Deadlock, deadlock detection algorithm
-
King of Glory ensures that users can share images in real time and understand each other’s operations
-
Maximum number of flights departing
-
Rotate the array
-
Ask about the project, the biggest problem
-
How do YOU know if it’s a balanced binary search tree
-
What are the problems of multithreading accessing resources in the same memory? How do you solve it?
-
What is the difference between Clone and zip?
-
Find all A in the array such that the first number is less than that number and the next number is greater than that number
-
What is your biggest advantage in this position?
Tencent HR side
Meet my HR. She’s a very pretty little sister. She did not ask too many questions, almost half an hour to finish the question, she felt quite shy.
-
Which city do you want to work in?
-
What are your salary expectations?
-
What advice would you give to the department and the interviewer?
After that, I talked a little about home affairs and career planning, and asked me what I wanted to do in the future. If you don’t have any serious problems with HR, you will get the offer.
Tencent three aspects of the answer:
Due to the length problem, the answers to the interview questions are arranged in the PDF document, hoping to give you a reference ~
Review summary and suggestions
In fact, after many interviews, you should know that with the following points, the interview is more than half successful.
01 — Adjust your attitude and face your gains and losses correctly
02 — Improve technology and broaden knowledge
For programmers, the only way to grow into a great man in the industry is to constantly improve their skills, broaden their knowledge, and reach a certain height and depth through learning. So how to improve their own technology, broaden their knowledge reserve?
The following are some of my personal practices, I hope to provide you with some help:
Java basics: JVM, String, inner classes, polymorphism, abstractions and interfaces, collection frameworks (Hashmap, Arraylist), singletons, threads, Synchronized, Look locks, dynamic proxies, references
Basic aspects of Android: four components, View, process, Bitmap, screen adaptation, message mechanism, thread asynchronous, WebView.
Android extension: ART, Apk optimization, Hook, Proguard, architecture (MVC/MVP/MVVM), Jetpack, NDK development.
Android source code: Leakcanary, Eventbus
Design pattern: six principles of object oriented, factory pattern, singleton pattern, builder pattern, observer pattern, adapter pattern, policy pattern, agent pattern
Algorithms: sorting, binary tree, linked list, stack and queue, binary, hash table, heap, array/double pointer, string processing, dynamic programming
** Network knowledge: **Http (cache, Https, Http2.0), TCP (three-way handshake, four-way wave, socket), classloader
Attached is my collection of Android knowledge points (including Java foundation +Android Foundation +Android Advanced +Android source code + algorithm questions and answer analysis + design mode + network) + advanced Android development mind map. The technical points are differentiated and summarized layer by layer (actually more energy than expected), including the context of knowledge + many details, due to the limited space, here in the form of pictures to show you some. Click “here” to get all the content for free
Some screenshots of Java basics
Screenshots of basic Aspects of Android
Some screenshots of Android advanced aspects
Android source code part screenshots
Summary of algorithm questions (some screenshots)
Network Knowledge (partial screenshots)
Advanced Android development advanced mind mapping
conclusion
The last point I want to emphasize for the interview is that your attitude is really important, which is the key to determine your performance in the interview process. If you can’t play well, you may lose the offer due to a small mistake, so you must pay attention to it. Another point to remind, full review, is the key to eliminate your nervous state of mind, but you review enough, the natural interview process will be much more confident.
The above content I sorted out the Android knowledge summary and Tencent interview review PDF, all content click “here” ** can be received for free, ** HOPE you have a smooth interview, win your favorite offer!