Traditional Culture Encyclopedia - Traditional stories - What kind of competitiveness should a newcomer to the workplace have when starting out?

What kind of competitiveness should a newcomer to the workplace have when starting out?

I think that the core competitiveness of different professions is not the same, as a programmer, the core competitiveness of the programmer to say it:

Learning ability, especially the ability to self-learning, when do you see those famous program masters in the forum to ask "learn XX what books to read, how to quickly learn XXX, learn XXX what code! Recommendations" and so on, what they want to learn will soon be able to find the relevant information. This industry is developing too fast, the technology out of the speed is also very fast, 3 years do not learn new things may be out of date.

Hands-on ability, are reading books and reading materials, when others are still entangled in what to read, still entangled in the book of the meaning of the words and phrases, some people's hundreds of thousands of lines of code have been able to run.

Patience and perseverance, do programmer interest is certainly important, write their favorite code that is quite a pleasant thing, but program development in any case there are a large number of tedious and uninteresting things to be able to adhere to, grit your teeth and get these done. \

Expression skills, the ability to speak your thoughts logically, clearly and fluently enough to be understood in front of a large audience.

The above points are the most basic hard ability, and then say a little "false" it:

Learn to ask smart questions. This is very important, asking questions does not mean that you will not encounter to ask, in fact, asking questions is not limited to go online to find information, in fact, I recommend that we go to derive the answer to the question, because a lot of the problem is the actual project in the problem, you are simply very difficult to find a 100% match on the Internet question, if you take your question to the Internet to ask, and may not necessarily be able to give you a complete answer. I'll give you 2 points, the first, look at the VS to give the exception information, the second, learn to learn by example, because any problem can not be a perfect match, but the general idea is correct, if you mastered the idea, then everything is very good to do, and in the future to encounter similar problems you can also solve, do not have to look at that fixed answer.

To have a sense of crisis. I remember a person once said to me a sentence: if you are comfortable at an age when you should not be comfortable, then you will be in a comfortable age can not be comfortable. This sentence reflects a problem, the most dangerous place is often the safest place, the most secure comfortable place is often the most insecure, the world can not be fair to everyone, the competition, the survival of the best, if you have experienced layoffs, you should understand. If you often on Cnblogs you may feel that you are still "OK", but if you go to CSDN, you will find that many freshmen students than you work for 2,3 years of people still know the technology, you say that you have the technology, their freshman year on the more than you, you say that you have an interest in, he said he can stay up all night every day to write code, you can say that you have the capital, but you do not know what to do. What capital do you have to compete with them? What do you lack, you lack time, because the older you get, the less time you have left!

Never just learn technology. As a .neter, last time I went to an Internet company interview, the result was completely despised, why? Because I know too much technology, what MVC ah, EF ah, NHibernate ah, some people may wonder, will these things is not very good, why still be despised it? Because they in addition to the .net framework, other things simply do not use, that is, can not be used! Even now the popular MVC do not use, they are all the controls, the underlying code, are based on the needs of their own site to additional customization! The role of the framework is to facilitate us to use, but it will also make us into a fill-in-the-blanks mode of work, because you just use a Helper class can solve all the problems ah! The essence of programming is the architecture and the underlying layers, but often there are very few people who can really understand the architecture, or rather, there are many people who understand the architecture, but those who can apply it in real-world scenarios to make her shine - very few! Programming ideas matter!