preface

Today, I would like to share with you six aspects of ant Financial experience of a friend. Although he was abused in the interview process, he finally got the offer

One side

  • Introduce yourself
  • Ask about project experience, talk about “data synchronization”
  • Then we talked about the K8S project
  • Is there any technology that you dig deeper into? (ME: Kubernetes, Golang, Prometheus, Java)
  • What is the architecture of Kubernetes? This problem is very big, which is divided into Apiserver, controller, Kubelet and Scheduler
  • Golang versus Java was a big question, and I was comparing VMS, coroutine support, the difference between object-oriented and generics, and my own understanding of their respective usage scenarios
  • Golang’s GC algorithm is known to be tricolor, but the details are not available
  • From the infinite character stream, randomly select 10 characters that I have never seen or thought of, check it is the reservoir sampling algorithm, classic interview question, did not brush the question to fail
  • How to extend kubernetes Scheduler to handle large-scale node scheduling
  • Single-node speed increase: Select some nodes randomly for optimization in the optimization stage; When scheduler nodes are extended horizontally, the pod does a consistent hash to determine which scheduler is scheduled
  • What do you want to ask me?

On the one hand, I was a little bit restrained. The interviewer didn’t give any feedback or in-depth response to my answer. Therefore, I thought I had hung up after the interview.

Second interview

  • We talked about the project first
  • What changes were made to Prometheus?
  • Self-research configuration center, what specific content did?
  • Have you used any advanced features of MySQL? I asked what was an advanced feature, and the interviewer moved on to the next question
  • How is the core data table in the configuration center designed?
  • Why use Redis in business, what are the advantages of Redis? Single thread: concurrency safety; High performance; Rich primitives and data structures; Widely used, low cost of stepping pits
  • Are you familiar with Redis data structure implementation? Said a zset skip list
  • What data structures have you used in Redis and in what scenarios?
  • What parameters can be configured to initialize a thread pool in Java?
  • What JVM parameters have been tuned by your Java application, and why? I only know the basic things like Max heap min heap, open G1, open GC log and OOM Dumper
  • Do you have any parameters when you use Jetty, and why?
  • Would it be okay if the Jetty QTP wait queue was configured to be infinite? Will there be any problems?
  • Which Linux Bash commands have you used and what do you use them for?
  • Start two threads, one output 1,3,5,7… 99, another output 2,4,6,8… 100 last STDOUT output 1,2,3,4,5… 100 ME: I’ll do it with Go No, let’s use notify in Java. I’ll use Java BlockingQueue. I’ve never done wait + notify before, but I can’t do it. The interviewer said, “Ok, you can do it with Go.” Finally, I implemented a version using go Channel, but I can’t run the code on the web page. I don’t know if it’s right, and then the interview is over.

This time, the interviewer continued the style of the first interview, rushing to the next question after one question, without seeming interested in or recognizing my answers. So after this round, I feel dead again…

On three sides

  • Still talk about the project first
  • Interested in a project to monitor alerts, I asked a lot of details, and finally asked a question: Can you implement a query language whose semantics are not weaker than PromQL? I’ve seen some Prometheus code, but I haven’t really looked at PromQL’s Lexer and Parser parts. Thankfully, I’ve studied ANTLR a little bit in my data synchronization project because I wanted to write declarative Stream SQL. ANTLR write syntax + AST traversal plug query logic is fooled.
  • I was asked what was the most in-depth project that I’ve worked on of course data synchronization
  • Talk about data synchronization projects
  • How is Linux?
  • Without systematic learning, it is basically accumulated by their own operation and maintenance
  • How is Golang mastering it? Six months, effective Go
  • How is the algorithm mastered? All the way up to the diagram
  • The shortest path algorithm, I just remember Dijkstra, describes the code flow
  • How’s your mastery of k8S? I haven’t written controller and Scheduler by myself, but I am familiar with the concept. I have read the source code of XXX. How to implement k8S exec? This question is right up your street, and I’m very familiar with it from the PingCAP assignment

This round went much better. The interviewer seems to enjoy asking you to comment on yourself: “How well do you think YOU mastered XXX?” (With only five interviewers, the sample is not large enough to count).

All around

  • Introduce yourself
  • How do you feel about your basic knowledge
  • What data structures do you usually use?
  • What are the advantages and disadvantages of linked lists versus arrays?
  • How to determine if two acyclic singly linked lists have intersections
  • How can I tell if two singly linked lists have an intersection
  • How to determine whether a single linked list has a ring, and find out the ring point
  • What is the difference between TCP and UDP?
  • Describe how TCP waves four times
  • The status of TCP
  • What is the LISTEN state of TCP
  • What is the CLOSE_WAIT state of TCP
  • How to set up a socket connection
  • What are the common HTTP status codes
  • What’s the difference between 301 and 302
  • What’s the difference between 504 and 500
  • What’s the difference between HTTPS and HTTP
  • Write an algorithm problem: hand type

The basics of this round, if you have a solid foundation, you’ll be fine.

Five surface

  • Introduce yourself
  • What secondary development has been done on k8S?
  • Have you ever built Chart with Helm? What are the?
  • Have you considered encapsulating your own DEVELOPment-oriented PaaS platform?
  • What does the configuration center do?
  • Why not Use ZooKeeper?
  • How does the configuration center ensure consistency?
  • Spring uses singleton beans. How to ensure concurrency safety when accessing Bean fields?
  • Use concurrent safe data structures, such as ConcurrentHashMap; Or mutex
  • What if I also want to isolate data from two threads?
  • ThreadLocal, and then gave an example
  • What is escape analysis in Golang? How do I avoid memory escape?
  • I don’t know. I’m sorry
  • Comparing Golang’s GC to Java’s CMS, G1, and tricolor markers, my point of comparison is that the JVM has generational collection, while the Go Runtime does not
  • Golang’s GC trigger time is the threshold trigger; Active trigger; Two-minute timing trigger;
  • Have you written Operator or Controller for K8S? (Me: No)
  • Talk about your understanding of microservices architecture in general “the essence of microservices is the evolution of people’s organizational structure and separation of concerns”
  • “Serveless is the boundary between application development and infrastructure providers after Docker and container choreography.”
  • Do you think Serveless is the future? Why is that? The general idea is that the future of cloud services will take the pie out of the IT, operations, and middleware departments of the enterprise, creating economies of scale where the more you do, the more you make. In the company, Servless can help accelerate the front end business iteration, but the benefits of the middle back end are not yet visible. In the future, there may be a better architecture for the middle back end than Servless.”
  • Interviewer: What’s the last thing you want to ask me? Me: Why did you arrange five rounds of technical sides, and two of them seem to have nothing to do with K8S? Interviewer: We feel like you’ve done a lot of stuff and we want you to try it in every direction (heart:…) Me: So is this the last technical round? Interviewer: Not necessarily

I also asked the interviewer some business related questions, so I won’t go into details here

Six sides HR side

  • Ask experience
  • Why would you consider coming out? “Now I have hit a bit of a bottleneck in my technical growth, plus I have been admiring your company relaxed”
  • What is the company’s main business now? (This is a lot of technical questions, I feel like I want to test my ability to explain complex problems)
  • Are you bringing anyone now? What is the report level?
  • Are you satisfied with your experience these years?
  • What weaknesses do you see in yourself?
  • Have you encountered anything frustrating?
  • What are your future career plans?
  • When looking at an opportunity, do you consider salary, platform, people or other factors?
  • How are you being paid now
  • Is there anything you want to ask me

2020 Latest BAT big data required test interview questions collection

Java back end questions and answers

JVM interview questions and answers

Java surface by

Spring interview questions

For SpringMVC interview questions

SpringBoot interview questions

SPringCloud interview questions

Tomcat interview questions

Concurrent programming interview questions

Multithreaded interview questions

MySQL55 asked

Optimistic lock and pessimistic lock interview questions

Redis interview questions

Kafka interview questions

They are the interview questions

Linux interview questions

MyBatis

Nginx interview questions

Memcached interview questions

MongoDB

Summary of interview questions

conclusion

Ant interview feeling more focus on basic knowledge, development of common sense, technical insights, no partial door and curious questions, students with solid basic knowledge can cast ant try.

The dozens of sets of interview questions xiaobian has been sorted out for you, because the interview documents are a lot, more content, there is no way to show one by one for you, so we had to extract a part for your reference, need all the documents, like + attention, scan the below TWO-DIMENSIONAL code, free