preface

When you start to job-hopping interview, it is clearly only a 15K job, but ask you can multithreading, do you understand the high concurrency, rocket built to let you and not prevent, the result is cool; In today’s market, multi-threading, highly concurrent programming, distribution, load balancing, clustering, and so on can be said to be essential skills for advanced backend development job hunting. Today, I share an interview experience with Bytedance, followed by interview question analysis.

Bytedance interview experience

Byte side

1. Find a project you want to talk about. First, introduce your project, what responsibilities you undertook, what work you did, and the difficulties

2, From your project, you use mysql, what are the int data types of mysql? How many bytes does each take up, from small to large?

3, What are the ints in Java? How many bytes

4, ask you a computer network, TCP three handshake say?

5, TCP and UDP differences

6, you say you are familiar with Linux, I will give you a case, search for the most times in the log text IP, and give the number

Let’s talk about Java GC

8. Talk about the hashMap data structure

What is the time complexity of haspMap for a lookup

10. I’ll give you an algorithm. I have an infinite array of integers, sorted from smallest to largest, non-increasing. So how do you find a key in an array

Byte 2 face

1. Describe the mysql index structure

2. Let’s look at a question. How does this question establish an index

Mysql > select * from user where order id = ‘user_id’ and order date = ‘day’

A. Query all orders of a user

B. Query all orders on a certain day

C. Query all orders of a user on a specified day

Let’s do problem two

10 GB file, each line contains a uint32 number. I have a machine with 1 gigabyte of memory

  • A. Find the largest number of k

  • B. Find repeated numbers

The third problem is

I have a bunch of playing cards in my hand, but the audience doesn’t know the order.

First, I take a card from the top and put it on the table.

Second, I take another card from the top and place it at the bottom of the hand.

Step 3: Repeat steps 1/2 until all my cards are on the table.

Finally, the audience can see the order of the cards on the table: 13\12\11\10\9\8\7\6\5\4\3\2\1 Excuse me, what was the order of the cards I held in my hand at the beginning? Implement the following in code

Bytes on three sides

  1. What do you think are the difficulties you are currently facing? Difficulties in the project?

  2. How big is your project database? QPS? Which SQL is slow?

  3. What do you think you should do if QPS is bigger in the future?

4. Give you an algorithm problem, you see the idea

Four (HR interview, about 35 minutes, mainly asking about personal career plan, salary, expectations of Bytedance, etc.)

Bytedance’s interview questions have been put together, including their interpretation. Content outline includes: HTML, CSS, JS, browser, server and network, Vue, algorithm

HTML

  • How do you understand HTML semantics
  • What HTML5 tags have you used
  • What does meta ViewPort do?
  • What is the H5
  • Label Indicates the function of the label
  • What are the inline elements? What are block-level elements? What are the void elements?
  • How to disable the href redirect page or location link in the a tag
  • What is the difference between canvas setting width and height on a tag and style

CSS

  • Box-sizing can be used to model the layout of dom elements for page rendering. According to the calculation of width and height
  • Ie box model on the border, padding and their own (not margin), the standard only on the size of their own form
  • Several ways to get width and height:
  • Expand the various ways to get width and height:
  • What is the difference between CSS reset and normalize.css
  • Center method:
  • CSS priority:
  • How to clear the float:

JS

  • Talk about the pros and cons of cookies
  • Array. The prototype. Slice. Call (arr, 2) the method is:
  • What is browser local storage like
  • Prototype/constructor/instance
  • The prototype chain:
  • Execution Context (EC)
  • The variable object
  • The scope chain

The browser

  • Communication across tabs
  • Browser architecture
  • The process from entering url to presentation
  • Redraw and reflow
  • storage
  • Web Worker
  • V8 garbage collection mechanism
  • Memory leaks

Server and network

  • The HTTP/HTTPS protocol
  • Common status code
  • get / post
  • Websocket
  • TCP three-way handshake
  • TCP waved four times
  • Node Event Loop: 6 stages
  • Summary of the URL

Vue

  • What are the two cores of vue.js?
  • How does vUE’s bidirectional binding work?
  • What are the VUE lifecycle hook functions?
  • What is the difference between V-IF and V-show?
  • Vue is a common modifier
  • nextTick
  • What is the VUE lifecycle
  • Data response (data hijacking)

algorithm

  • Five algorithms
  • Basic sorting algorithm
  • Advanced sorting algorithm
  • Recursive application (Fibonacci sequence) : stair climbing problem
  • Data tree
  • The scale looks for defective goods

For those of you who need the full version of byteDance,Please click here to get it directly!

A few tips for job interviews

Be logical: Be very logical, otherwise the interviewer won’t be satisfied even if you know the answer to this question. Be logical and the interviewer will give you points even if the answer isn’t.

Unique understanding: Interview questions are pretty much the same these days, so it’s important to show your strengths. Speak in terms of the business and your own knowledge.

Deep thinking: for each question must have deep thinking, otherwise it is difficult to enter a big company, depth to have a high in order to obtain good results in the interview

Fluent expression: The interview is a process of expression, some questions in my heart know not to be able to, but also fluent expression, basically if the interviewer thinks you are fluent expression, when you talk about half will not let you continue, proof has passed