What skills do Java programmers need to achieve their monthly salary of 30,000?

Source: Internet
Author: User

Aside from work experience, project experience, academic background, single technical point of analysis, which aspects can judge a Java programmer's technical level, how to know how much he is worth the monthly salary? This article will answer for you:

In accordance with the theory and practice of the method, I generally do not ask the above purely intellectual and theoretical problems, but let him write a program to prove that HashMap is thread insecure. Then, let's change the program to make it thread safe.

In the interview and other circumstances, if there is a condition, it is best to give the person who is being assessed a computer can be on Google, and then give it a section of their own space and time, such as a person in a small meeting room for 10-20 minutes. Then, another monitor, and watch what he does on the computer in a synchronized way. It can be seen that he solves the problem of methods, ideas. Of course, the other side of the monitor, you have to know in advance.

Or, if you want to save time, take out a program that is unsafe to write threads, and let it tell you why there is such a strange phenomenon.

And so on, you can write proof list is stored in a reference or object entity program, write proof weak reference strong reference difference program, write to prove a design pattern effect of the program ....

This method can not only check the basic knowledge, but also check the thinking ability. If the knowledge is not understood thoroughly, this kind of proof procedure is actually very difficult to write ...

The more powerful part of this approach is that you can still roughly measure the other person's level by not knowing Java well.

For example, if you do not understand each other's procedures, you can be a student to consult. A true understanding of the concept of a person, is to know how to use an easy-to-understand way to understand a knowledge, he can be floating in the air of the concept to you all the way down to the edge of your feet, so that you feel at your fingertips. People who can refer to this level of concept, usually in the relevant field is not a general master.

When I am interviewing, I sometimes play dumb and deliberately see if the other person can understand. Encounter smattering, will put himself around, very fun, met Master, really benefited. Of course, there are times are really do not understand, open-minded learning, but while learning one side of the question, the basic can know each other's level.

From an interview point of view, a way to find a better person than yourself is the most promising way. Otherwise, can only recruit lower than their own level of people, the future of the company can only be confined to the level of leadership ability ...

If you are doing business-oriented, the focus is on how to build a business model, how to respond to business changes, how to deal with version splitting, and develop a migration upgrade plan.

If you are doing a relatively low-level technology optimization, the focus is on performance, the details of the underlying technology being packaged in Java, the OS, network, and so on. The more meticulous the mastery, the better.

Operating system level: processes and threads, how processes are created, and how threads are created. Memory and the concept of page changes, process communication, locks, and so on.

Network communication layer: 7/5-tier model, IP shard reorganization, IP routing, TCP Handshake, UDP reorganization, the cause of network storm and so on.

Programming language Level: Object-oriented, overloaded and rewritten, polymorphic. Object creation patterns, inheritance and composition, language features, and so on.

Data structure and algorithm: Array linked list, map application scenario. Basic sorting algorithm, algorithm analysis and so on.

Database level: Index, SQL, transaction isolation level, and so on.

Data aspect: binary operation, each type occupies the number of bytes, various types of numbers, the maximum value, the minimum and so on.

1, first said the conclusion: the foundation is not solid interview officer to ask this sprat question.

2, you can list several:

and the non-gate at the electronic circuit level is how to achieve? How does a logic circuit make the simplest calculator? For example, the three-body description of the Qin Shihuang how to use a human phalanx to make a computer to predict the movement of celestial bodies laws?

Research point: The principle of computer composition, is the undergraduate freshman course.

How exactly does the SYSTEM.OUT.PRINTLN function display characters on the screen? Involves character sets, system classes, static variables, ASCII codes, Io,buffer,os, graphics drivers.

Research point: "Computer composition Principle", "Operating System", JDK, character set, garbled problem.

Why is Java using a single root inheritance? What are the advantages and disadvantages? How to remedy its shortcomings? What are the popular frameworks and best design practices? How can I implement a programming pattern that simulates a single-root class by using the C language?

Research points: OOP, Design Patterns

Class diagrams and selection decisions for a collection class? The problem of countless data structures can be dug up.

Research point: Data structure

What is the principle, order, and distribution of the variables in the memory of the class? What are the extensions and hack points?

Research point: JVM

What is the use of volatile keywords and JVM compilation optimizations? can elicit concurrency problems

Research point: concurrency, hotspot

How is an exception thrown? How do I do a Java program that doesn't crash?

Research points: exceptions, daemon threads

What skills do Java programmers need to achieve their monthly salary of 30,000?

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.