Job Recruitment Website - Job seeking and recruitment - What questions are asked in Java two-year experience interviews?

What questions are asked in Java two-year experience interviews?

Personal introduction:

First of all, let me introduce my own conditions during the interview. I divided my situation into advantages and disadvantages, which may be more helpful for you to compare your own situations.

Disadvantages:

I started working in Shanghai after graduation in July 2015. The interview was from March to April 2017. More than one year of experience can barely be counted as two years of experience. . Analysis: I think having more than one year of experience is quite embarrassing, as you are in a position where you are neither above nor below. Many companies prefer to recruit people with three years of experience, or directly recruit fresh graduates for training.

2. Graduated from a non-985/211 college and barely got into one. Analysis: This has a relatively small impact, because after you have work experience, the company's requirements for the school are not so high. As long as you have a bachelor's degree, there is basically no problem. However, there are still some companies that only require 985/211.

3. The previous company was in the traditional telecommunications industry. When I joined the project team, the project had been online for a while. Our task was to develop if there was demand, optimize if there were bugs, and chat about it at other times. Everyone is doing their own thing. Working for more than a year is like taking care of the elderly. In one sentence, it takes 5 minutes to program and 2 hours to talk nonsense. I have a serious lack of project experience and have never developed difficult needs. Analysis: This is the most hurtful thing. When the company recruits experienced people, they want to see what awesome things you have done. As a result, you tell the interviewer that the requirements I wrote are all rubbish.

Advantages:

1. I won many awards in college. I was an outstanding student at the school level every year. I was an outstanding graduate at the municipal level when I graduated. I won the provincial ACM second prize. Prizes etc. Analysis: For a person with work experience, the company may not necessarily value university honors, but it may have a subtle impact on the interviewer, especially the ACM Award. I have met some interviewers who have also done ACM. , it is always easier to talk about similar topics, but you must also be careful not to write too much in this column. It can only be used as an embellishment. I put it in the last column of my resume, briefly Won several major awards.

2. Good communication skills. Analysis: This ability won't be critical, but it can be a bonus.

3. Strong learning ability and logical thinking ability. Analysis: Some companies and interviewers still value a person's learning ability. Experience represents what level you are at now, while learning ability represents what level you can reach in the future.

Learning process:

After reading my advantages and disadvantages introduction, you will find that my advantages are simply not worth mentioning compared to my disadvantages. I have a clear understanding of this myself, so after the Chinese New Year, I began to seize my free time to study. The learning process is as follows:

1. Read the interview questions

Normal people will definitely read the interview questions as the first step, and I am no exception. In the process of reading, I found some articles The writing is good and it helped me a lot. I recommend it, as follows:

The Complete Collection of Java Interview Questions (Part 1) contains many basic things, so I recommend reading it first.

Summary of Java back-end development interview questions in major companies

Interview experience and summary—BAT, NetEase, Mogujie

You should prepare these for Java interviews Knowledge points

2. In-depth study

In the process of reading the interview questions, you will encounter some knowledge that you have not been exposed to or have not studied in depth before, such as the most frequently asked questions The internal implementation principle of HashMap prompts you to start looking at the source code of jdk or learn something new. Reading the source code is a very important step. It is difficult to get started, but it will benefit you a lot. If you encounter something you cannot understand during the process of reading the source code, you can use Baidu to check other people's understanding. In the process of learning source code, I have read several good articles about source code, as follows:

Cangjie in May

Zhan Xiaolang

zhangshixi's Core java series

3. Familiar with the project

Find out the most interesting function that you have developed since you started working, and thoroughly understand the process of the entire function and the things involved. Projects are a mandatory part of the interview, and are usually based on a function point. Therefore, you must have a deep understanding of this function and there should be no ambiguity. If you have time, it would be best to understand the knowledge points involved.

4. Do interview questions

Many companies have interviews. If you are not prepared, it is easy to make mistakes in various small places. It is recommended to go to some interview question websites. To do some questions, I use Niuke.com.

5. Study records

Recording your daily study time and study content can make you more motivated to study. Learning is a boring process, and you must allow yourself to Stay motivated at all times.

Submit your resume and schedule an interview

1. Which websites can you apply for?

Lagou.com, BOSS Direct Pin, Liepin.com.

2. Should we invest overseas?

There are two situations when submitting a resume.

1) No social recruitment interview experience: It is recommended to adopt the overseas investment method. As long as the job requirements match your own, you can apply and accumulate interview experience.

In this link, you can add two more websites for submitting resumes: Zhaopin and Wuyou.

2) Think that you have enough experience in social recruitment interviews: apply for positions that match the position and that the company is satisfied with. Company reviews can be found on Zhunwang, Baidu, Zhihu, etc.

3. How many interviews a day is appropriate?

The ideal situation is to have interviews with two companies, usually around 10 o'clock in the morning and around 2 o'clock in the afternoon. It is recommended that you apply to your ideal company in the afternoon, because there is plenty of time in the afternoon, which allows the company to get to know you more fully. When I started interviewing, every time the interview was bad in the morning and good in the afternoon.

4. How often do you submit your resume without success?

I didn’t expect the resume screening process to be so difficult at first. Maybe it’s because my resume didn’t have many bright spots. Moreover, many HR personnel are not insiders, so what they see most directly is your job. company and the school you graduated from. If you did not come from a great company/school, you may encounter the same situation as me. The way to deal with it is to invest more.

5. Should I resign naked?

I initially applied while working, and then used my time off or asked for leave to go to interviews. Later, there were more and more interview opportunities, and I was embarrassed to ask for leave too frequently, and I already had enough confidence. At this time, I chose to resign naked. Another reason for resigning naked is that during the interview process, you will find that some companies are very demanding of people. If your resignation process is too long, you may miss the company.

6. Things to note

1) Calculate the route and time the day before the interview. It is best not to be late.

2) Carry a schoolbag, resume, power bank, tissues, and umbrella.

Interview session

1. What are the common questions in the written test?

Common Interview Questions The links to the interview questions given above are basically there. I will only mention a few points: 1) Writing SQL: When writing SQL, group by, inner joins and outer joins are often examined. 2) Handwritten code: Handwritten code generally tests singletons, sorting, threads, and consumers and producers. I suggest that in addition to bubble sorting, it is best to hand-write another sorting code. Just imagine: if most interviewers write about bubble sort, and you write about quick sort/heap sort, it will definitely leave a good impression on the interviewer.

2. Interview process?

1) Let you introduce yourself

2) Ask about Java basics

3) Ask about projects

4) Scenario questions, such as : After one of your functions was deployed in the production environment, the server pressure increased sharply. How should you troubleshoot it?

5) What do you want to ask the interviewer?

3. Common knowledge points asked in interviews?

1) Collection-related questions (must ask):

The underlying implementation of HashMap, LinkedHashMap, ConcurrentHashMap, ArrayList, and LinkedList.

The difference between HashMap and Hashtable.

The difference between ArrayList, LinkedList and Vector.

The difference between HashMap and ConcurrentHashMap.

The difference between HashMap and LinkedHashMap.

Is HashMap thread-safe?

How does ConcurrentHashMap achieve thread safety.

2) Thread-related questions (must ask):

Three ways to create threads.

What is thread safety.

The difference between Runnable interface and Callable interface.

The difference between wait method and sleep method.

synchronized, Lock, ReentrantLock, ReadWriteLock.

Introducing CAS (lock-free technology).

What is ThreadLocal.

4 ways to create a thread pool.

The inner workings of ThreadPoolExecutor.

How to ensure thread safety in a distributed environment.

3) JVM related issues:

Introduce the garbage collection mechanism (when, what, what is done).

What are the garbage collection algorithms and their respective characteristics.

The process of class loading.

Parental delegation model.

What class loaders are there.

Can you write a class called java.lang.String yourself?

4) Questions related to design patterns (required):

First ask which design patterns you are familiar with, and then ask you specifically about the specific implementation and related extensions of a certain design pattern.

5) Database-related questions, for Mysql (required):

You will be asked to write SQL by hand.

Do you have any experience in SQL optimization?

The data structure of Mysql index.

How to optimize SQL.

The execution order of SQL keywords.

What kinds of indexes are there?

When should (and should not) be indexed.

Explain which columns are included.

Explain what values ????are in the Type column.

6) Framework-related issues:

The difference between Hibernate and Mybatis.

The difference between Spring MVC and Struts2.

What design patterns does Spring use?

What is AOP mainly used for in Spring.

Spring’s way of injecting beans.

What is IOC and what is dependency injection.

Is Spring a single instance or multiple instances? How to modify it.

Spring transaction isolation level and propagation.

Introducing the caching mechanism of Mybatis/Hibernate.

The difference between # and $ in the mapper file of Mybatis.

The difference between resultType and resultMap in Mybatis mapper file.

The DAO layer interface in Mybatis does not have an implementation class. How are the methods in Mapper and the DAO interface methods bound together, and how are they implemented internally.

7) Other problems encountered:

Introducing stacks and queues.

The difference between IO and NIO.

The difference between interface and abstract class.

Issues related to automatic unboxing/packing of int and Integer.

Constant pool related issues.

The difference between == and equals.

The difference between overloading and rewriting.

The difference between String, StringBuilder and StringBuffer.

Are static variables, instance variables, and local variables thread-safe? Why?

Which one is executed when try, catch, and finally all have return statements.

Introduce B-tree and binary tree.

What do the four letters of ajax mean?

What is the full name of xml.

Implementation of distributed locks.

Distributed session storage solution.

Commonly used Linux commands.

Some experiences:

1. Invest in some ordinary companies first, and then invest in ideal companies after you have gained experience.

2. Don’t take the initiative to mention unfamiliar technologies.

3. For companies that offer a 20% discount for a 6-month internship period, don’t go unless you have no other choice.

4. Small companies like to pressure you on salary, so increase it appropriately when opening.

5. Don’t go to job fairs, it’s a waste of time.

6. Treat the interview as a technical exchange, and don’t worry too much about whether you can be admitted.

7. The company usually decides whether to admit the applicant after the interview. It is generally useless to ask you to go back and wait for news, no matter how good you think the interview was.

8. Try to pass phone interviews as little as possible, as the effect is not good.

9. During the interview days, keep learning every day, whether it is learning new things or reviewing old things.

10. After you get an offer, ask yourself if this company makes you 100% satisfied. If not, please continue to work hard to find a better one.

11. The interviewer can roughly judge the situation of the company.

12. Many resumes submitted by Lagou will be screened out, but Lagou is still the main source of interview opportunities.

13. You can invest in an ideal company several times. I have experienced that many times I was screened out the first time I invested, but I just invested a few more times and passed.

14. When asked about knowledge that you have studied in depth, seize the opportunity to perform well and don’t let it go easily.