Recently, I changed a company. From the end of March to the end of April, I met nearly 20 companies. I am a person who likes to sum up experience. After every interview, ON the way back, I will carefully review which questions I could have answered better today, or which questions I have not met before, or which knowledge points I asked again today, etc. By mid-April, I was thinking of writing an interview, mainly to help others in my situation and to document the month-long interview process.

# Personal Introduction: First of all, I would like to introduce my own conditions during the interview. I will divide my situation into advantages and disadvantages, which may be more helpful for you to compare your own situation.

Disadvantage:

1. After graduation in July 2015, I started to work in Shanghai. The interview was from March to April, 2017. Analysis: more than a year of experience I think is more embarrassing, in a position of no place, many companies prefer to recruit three years of experience, or directly recruit fresh graduates training.

2. Graduated from a non-985/211, barely on the first college. Analysis: This has a relatively small impact, because after working experience, the company’s requirements on the school are not so high, as long as the undergraduate is basically no problem, but there are still some diao MAO companies only 985/211.

3. Before a company is the traditional telecom industry, to join the team, the project has been launched for some time, our mission is to have a demand development, there are bugs in optimizing, other time to chat to each work, work more than a year, just like in the pension with programming for 5 minutes, a word is bullshit for 2 hours, a serious shortage of project experience, haven’t seen it is difficult to develop needs. Analysis: This one hurts the most. Companies want experienced people to see what you’ve done, and you tell the interviewer that my requirements are rubbish.

Advantage:

1. I won a lot of awards in college, and was awarded the school-level outstanding student every year. I was awarded the city-level outstanding graduate when I graduated, and won the second prize of provincial ACM. Analysis: Honors from the university of a work experience, the company will not necessarily value, but may be a subtle influence on the interviewer, especially the ACM awards, I met some interviewers are made of ACM, have common topics to chat is always more easy, but also should pay attention to not too much space to write this column, only as an ornament with, I put it at the bottom of my resume, briefly listing my top awards.

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

3. Strong learning ability and logical thinking ability. Experience means what level you are at now, while learning ability means what level you can reach in the future.

# Learning process:

If you look at my strengths and weaknesses, you’ll see that my strengths are nothing compared to my weaknesses. I myself have a clear understanding of this, so after the Chinese New Year, I began to seize the spare time to study. The learning process is as follows:

1. Look at the interview questions

Normal people will certainly look at the first step of the interview questions, I am no exception, in the process of reading, I found some articles written well, to help me is not a small recommendation, as follows: Java interview questions complete (1) many basic things, suggested to read first. BAT, netease, Mogujie Java backend development interview questions summary and summary of the interview, you should prepare for the Java interview

2. Learn more

In the process of reading the interview questions, you will come across some knowledge that you have not been exposed to or have not studied in depth before, such as the most frequently asked internal implementation of HashMap, which prompts you to start looking at the JDK source code or learn something new. Look at the source code is a very important step, it is difficult to start, but will let you benefit a lot, look at the source code process if you can not understand the place, you can baidu look at the understanding of others. I learn the source code process, read a few people on the source code of the article to write very good, as follows: May changjie accounted for small Wolf Zhangshixi Core Java series

3. Familiarize yourself with the project

Find out the most diao function I have developed since I worked, and understand the process of the whole function and things involved thoroughly. The project is a must-ask part of the interview, usually based on a function point, so you must have a deep understanding of the function, there is no ambiguity. If you have the time, can also understand the knowledge points involved in the best.

4. Do interview questions

There are many companies have an interview, if you have not prepared, it is easy to make mistakes in all kinds of small places, it is suggested to go to some interview questions website to do more questions, I am using niuke network.

5. Record your learning

Writing down the time and content of your study every day can make you more motivated to learn. Learning is a boring process, so you must keep yourself motivated all the time.

Send in your resume and schedule an interview

1. Which websites do you invest in?

Pull hook net, BOSS direct hire, hunting hire net.

2. Should I make an overseas investment?

There are two types of application. 1) There is no social recruitment interview experience: it is suggested to take the way of overseas investment, as long as the job requirements match with their own can be applied, accumulated interview experience. This link can add two resume sites: Zhilian and 51job.com. 2) Think social interview experience is enough: apply for positions that match and the company is satisfied with. Company evaluation can go to the accurate network, Baidu, Zhihu and other queries.

3. How many interviews is a good number for a day?

Ideally, two interviews will take place around 10 a.m. and 2 p.m. It is recommended to put the ideal company in the afternoon, because the afternoon time is more sufficient, can let the company more fully understand you. When I started, it was always bad in the morning and good in the afternoon.

4. Don’t always get anything from your resume?

I was surprised that the CV screening have so hard for you, this is probably my resume highlight really few, moreover the HR many people are not inline, so they look at you is the most direct express company and you graduate school, if you are not out of the cow force of the company/school, may encounter the situation and I, is to cast more.

5. Should I resign naked?

I started by working and then taking time off or taking time off to interview. Later, there were more and more interview opportunities, I asked for leave too often, I was embarrassed, and I had enough confidence, at this time I chose to resign naked. Another reason to quit naked is that during the interview process, you will find that some companies are very demanding, and if your resignation process is too long, you may miss the company.

6. Precautions

1) Plan your route and time the day before the interview so you don’t want to be late. 2) Pack a backpack, resume, power bank, tissues, and umbrella.

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

The interview questions above are basically linked to the interview questions. I’ll just mention a few points: 1) Write SQL: It’s common to look at group by, inner join, and outer join when writing SQL. 2) Handwritten code: handwritten code generally tests singleton, sorting, thread, consumer and producer. I suggest that the sorting algorithm in addition to bubble sort, it is best to write a kind of other sort code by hand. Think about it: if the average interviewer writes bubble sort, and you write quicksort/heap sort, you’ll make a good impression.

2. Interview process?

1) Introduce yourself 2) Ask about Java basics 3) Ask about the project 4) situational questions, such as: how do you check when one of your features is in production and the server is under a lot of pressure? 5) What do you want to ask the interviewer

3. What are common interview questions?

1) Collection related issues (mandatory) : HashMap, LinkedHashMap, ConcurrentHashMap, ArrayList, LinkedList low-level implementation. Difference between HashMap and Hashtable. ArrayList, LinkedList, Vector. The difference between HashMap and ConcurrentHashMap. The difference between HashMap and LinkedHashMap. Is HashMap thread safe? How ConcurrentHashMap is thread safe. 2) Thread-related questions (mandatory) : 3 ways to create a thread. What is thread safety? The difference between Runnable and Callable interfaces. The difference between wait and sleep methods. Synchronized, Lock, ReentrantLock, ReadWriteLock. This section describes the CAS(Lockless technology). What ThreadLocal is. Four ways to create a thread pool. The inner workings of ThreadPoolExecutor. How to ensure thread safety in distributed environment. Java learning exchange QQ group: 589809992 we learn Java together! 3) JVM-related issues: Introduce garbage collection mechanisms (when, for what, and what). Garbage collection algorithms, their characteristics. The process of class loading. Parental delegation model. What class loaders are available. Can you write a class called java.lang.string? 4) Design pattern related questions (mandatory) : First ask which design patterns you are familiar with, and then ask you specific implementation and related extension questions of a design pattern. 5) Database related questions, for Mysql (must ask) : give questions to let you write SQL. Have experience in SQL optimization. Mysql index data structure. SQL how to optimize. The execution order of SQL keywords. What kind of indexes are there? When to (or not) build an index. Explain which columns are included. Explain what types of values are available in the Type column. 6) Framework related issues: The difference between Hibernate and Mybatis. Differences between Spring MVC and Struts2. What design patterns Spring uses. What AOP is primarily used to do in Spring. The way Spring injects beans. What is IOC and what is dependency injection? Is Spring singleton or multi-instance? How to modify? Spring transaction isolation level and propagation. Mybatis/Hibernate caching mechanism # and $in Mybatis mapper file. ResultType and resultMap in the Mapper file of Mybatis. Mybatis DAO layer interface does not write implementation class, Mapper method and DAO interface method are bound together, how is its internal implementation. Java learning exchange QQ group: 589809992 we learn Java together! 7) Other problems encountered: Introduce the down stack and queue. IO and NIO. The difference between interfaces and abstract classes. Int and Integer auto unpacking/boxing related issues. Constant pool-related issues. == and equals. The difference between overloading and overwriting. StringBuilder and StringBuffer. Are static variables, instance variables, local variables thread safe? Why? Which to execute when try, catch, and finally all have return statements? B trees, binary trees. What are the four letters of Ajax? What is the full name of XML? Implementation of distributed lock. Distributed Session storage solution. Common Linux commands.

# Some lessons:

1. Invest in some ordinary companies first, and then invest in your ideal company. 2. Don’t bring up unfamiliar technology. 3. If you don’t work for a company that offers a six-month internship 20% off, don’t go unless you have no other options. 4. Small companies like to squeeze you on salary. 5. Don’t go to job fairs. They’re a waste of time. 6. Treat the interview as a technical exchange and don’t worry too much about getting hired. 7. The company usually decides whether to hire you after the interview and asks you to go back and wait for news. This situation is not likely to happen, no matter how good you think you are. 8. Try to avoid phone interviews. 9. During interview days, keep learning every day, whether it’s learning something new or reviewing something old. 10. Once you have an offer, ask yourself if you are 100% satisfied with the company. If not, move on. 11. You can judge the company by the interviewer. 12. Checkboxes get a lot of screening, but they’re still the biggest source of interviews. 13. The ideal company can invest several times, I have several times is the first investment was screened out, more than a few times on the experience. 14. Ask for information that you have researched deeply, seize opportunities to present yourself well, and don’t let them go.