These are some interview notes related to Golang's back-end R&D positions that I have compiled. Everyone is welcome to add them in time.
Of course, it is not limited to Golang's R&D positions. The notes also include eight-part essays such as computer network, operating system, MySQL, Redis, and system design . Other language positions can also be read.
Some suggestions:
Brief introduction : Keep your resume concise and clear, and use clear layout and format to make the information easy to read. Resume length is limited to one or two pages, but must contain basic personal information such as age, gender, phone number, email, and educational experience
Highlight the key points :
- Project experience : If you have relevant project experience, you can list the name, time, description of the project and the roles and responsibilities you assume in the project. It is best to be those projects that are not bad (name a certain takeaway, a forum, etc.). If you really don’t have one, you can refer to the distributed timed task management platform Crony, which I personally made. It is recommended to look at the source code. It is not very difficult. As for how to write it in the resume, you can refer to the programmer’s recommendation resume, and the introduction is clear. Also, how to introduce this project during the interview process can refer to the project experience introduction.md
- Internship experience : If you don’t have internship experience, it’s really hard to find a job for fresh graduates. It is recommended to find an internship in your sophomore or junior year.
130 resumes
Programmers recommend resumes, and the introduction is clear
The answers to some interview eight-legged essays that have been compiled may not be accurate. If you feel that they are inaccurate, you can search and verify them online by yourself.
Among them ❤ means the focus
Go language
Golang interview questions, including the basic grammar of Go, garbage collection , memory management , GMP model , and the underlying principles of common data structures (channel, map, select...), etc.
It is recommended to read the gopher documentation, you can find many documents related to the go language in it
For example, Go expert programming, Go language standard library, etc. are all worth reading
Code programming
Some code programming that the interviewer may require to implement during the interview process
for example:
Two coroutines alternately print 10 letters and numbers
Start 2 groutines and cancel after 2 seconds. The first coroutine is executed in 1 second, and the second coroutine is executed in 3 seconds.
...
Common algorithms and templates
Templates of some common algorithms, such as KMP, LRU algorithm, dichotomy, backtracking method, division and governance method, sliding window, etc.
Recommended reading algorithm-pattern, which is based on Go language. Reading this document can solve most algorithm questions in the interview
MySQL
Some interview questions for MySQL include:
Storage Engine
Index and its optimization
Transactions (MVCC) and locks
Library and tables and master-slave replication
...
Redis
Redis interview questions
Including basic data types, processing strategies for expired keys, persistence, clusters, masters, slaves, and sentries , etc.
Computer network
Computer network-related interview questions
For example, network protocol, TCP three-way handshake, four-way handwave, http and https , etc.
operating system
Operating system interview questions
For example, threads, processes and how they communicate, multiplexed IO multiplexing, memory , etc.
High-frequency interview questions for massive data
Some interview questions in massive data scenarios, such as:
Looking for popular queries, counting the 10 most popular queries out of 3 million query strings
Find non-repetitive integers among 250 million integers, and the memory space is not enough to accommodate these 250 million integers
Find their median in 500 million ints
...
Microservices
Interview questions in microservice scenarios, such as service governance, circuit breaker and downgrade
System Design
Interview questions designed in certain specific scenarios, such as:
Distributed ID generator
Short URL system
Timed task scheduler
...
Architectural design
Interview questions related to architecture design, such as:
Why do multi-level caching
How does MQ middleware realize message reliability delivery
...
Still being updated...
This project mainly introduces the interview eight-legged essay in the form of simple questions and answers. If you want to have an in-depth understanding of computer networks, operating systems, databases, etc., it is highly recommended to read Kobayashi coding (xiaolincoding.com)
Most of the interview questions and answers come from the Internet, including:
The answer is not necessarily accurate. Everyone is welcome to mention issues or pull requests for supplementation.