These days, in the CSDN forum software training and certification column, many of the comments, see a lot of people in the confusion, but also see a lot of general confusion, the purpose of writing this article is to give me these years in the software industry some experience and experience will be heard, And for the general concern and general confusion of the issue of some guidance, I will do my best to tell you what I understand the truth, but also sincerely hope that everyone can be rational and clear view of their own direction, future, development strategies and other issues, to avoid their own development mistakes.
I am currently a software development director in a large domestic software company, as this article involves my personal comments on a number of companies and institutions, there are good aspects, there are also bad aspects, so I am not convenient to disclose a lot of personal information about me, and because I write more hasty, coupled with the busy work, There is no text and the structure and logic of the article to do some sorting, so maybe some places seem a bit messy. I think the chaos and not chaos are secondary, the key is, I hope that my article can let you see some things, so as to prevent themselves in the software industry into a misunderstanding, so that in the software industry to achieve greater development and progress.
Two How to plan their own technical development direction and the overall thinking of life development.
1 to always believe that "things are rare", my experience over the years has found that there are many software engineers in the reality of the serious "follow" behavior, that is: as long as the market or the media on a certain field or trend of "noisy" will virtually guide the learning direction of these engineers and learning behavior. If we are purely to develop the future and "money scene" as a measure of the direction of personal technology development, then a general rule is: Keep up with the most popular technology does not necessarily get a high salary; You can see that the same is the use of C + + programming language software, in the Windows Platform VC engineer, It's obviously a lower salary than the C + + engineer under the UNIX platform, why. The reason is that a company in the talent market can easily find VC engineers, but to find a UNIX platform under the C + + software system development experience of engineers is relatively difficult to be found;
2 China's software market is a typical domestic demand-driven market, so China's software companies need different areas of software development engineers, and different areas of software development engineers in the salary of a great difference in the individual professional exhibition process should be "on demand"
3 not limited to technology, a person in their own career success or narrow said that the accumulation of personal wealth is a person's "resource integration ability" of the comprehensive results, and definitely not a person's technical ability to determine unilaterally; in the past, I have encountered too many "smart, skilled" young engineers, They are smart in technology, but lack the ability to manage "basic interpersonal networks" that survive in a company's specific relationships and become a typical "cynic". The high skill and personal IQ or even the academic performance of the school period does not mean that a person is more likely to lead the way to financial freedom and career success. It is necessary to have a certain technical accumulation in the young stage, but if you are completely addicted to technology, instead of focusing on the core competencies, industry background and interpersonal network that you must rely on to succeed in your personal career after 5-10 years, sooner or later you will fall into the passive situation of life.
4 Do not complain about the complexity and conflict of the company's environment, in fact, whether it is to the management of a very high level of multinational companies or some of the management of a very confusing private enterprises, as long as there are people in the place, and as long as there is a relationship between the work content and responsibilities, there will inevitably be the various forms of personnel struggle , in this company environment, some people are good at analyzing the company's internal environment and power dynamics, and know how to properly develop themselves and protect their interests from harm, they exercise a complex environment of "leadership", and some people in this complex environment become "cynical" or "cold"
5 The development pattern of personal career history is: With the increase of the number of years in the career of the individual, you work effectively in the workplace, and due to the core competencies of work performance and personal gain as little as possible since the technology of the province's things, It's about personal management and leadership, and about the relationships and interpersonal skills that people have to do in the industry.
6 Do not follow the common sense of "card", most people's ordinary life, because most people's thinking is the mode of China, so they do things do not really use their brains to delve into the truth and make their own choice and judgment.
Three How you should start your own actions and have a very good career development start.
1 to get a software development work, self-study or find a training organization.
No training organization can solve all the problems of your professional development once and for all. So there are a lot of things that you have to learn by yourself, but from the perspective of the company's recruiting software development engineers ' processes and concerns, there are basically two major factors, one is the knowledge structure and basic development skills in a specific area of the individual, For example, the ability of a programming language to use, another important is probably through a self-study channel is not likely to get the "Specific software development field work experience" This work experience must be through the actual development of some practice to be able to obtain, and this work experience is you in the company decided to give interview opportunities, And the company decided to hire a very important link. On the one hand, whether or not your resume has the company you are applying for the software development Business related to the "Work experience description" Determines whether you will get the opportunity to appear (it is because of this point, the vast majority of computer-related major undergraduate students, and even graduate students are facing heavy pressure on employment), The employer's concern is not what you've learned, but what you've done, on the other hand, after you get an interview, The employer's interview framework is technically two: by letting you describe a software development project that you have ever done to determine how deep your development experience is and whether it matches their requirements, on the other hand, in the process of getting you to describe your work experience, or process your basic knowledge structure and basic technical skills (such as programming skills) for evaluation.
My conclusion to you is: not that you have studied technical knowledge in a particular field, for example, a programming language, such as a database, means you can find a job in software development, the employer will always "you really do the project and the company's business Anastomosis" as the first important point of judgment, you can through self-study, Or if you have poor self-learning skills, follow some training institutions to learn a field of expertise, but the main factor that really motivates you to get a well-paid job is that you can do a relatively complete and complex software development project in some way. This project work experience can only say that you are in a company to get hands-on work, or from a software Training institute (if this software training organization can provide this level of software project work experience, but I found that the real software training institutions in the market is very few.
At present, there are a lot of software training organizations in the market name Yue, they have project development practices, but want to remind you that the same project development practice, whether it can eventually be used in personal job search, the main decision is whether the project itself will give you enough ' Working background experience ' and the "scarcity" of this working background experience in the talent market.
Quote me here a word from a friend of the project development director at a domestic telecoms software company: "When I was recruiting my own development engineer, I basically paid little attention to the person who had no certificates, and I was concerned about a few things that were basically simple, one that he had not done with my current project from the technical physiognomy of the project experience, The second question is his own technical knowledge and practical hands-on skills, the third question is the person's ability to learn and the potential quality of the fourth question is whether it is an easy to cooperate with people, good at communication, technical personnel have so many "personal hero" complex, but generally as long as the complex system projects, What's more needed is the collaboration of the entire development team.
2 Some training institutions to cultivate the "low threshold into" the so-called "software blue collar" can adapt to China's current situation.
The so-called "software blue collar" training, which has been very popular in the market for two years, has been a very hot word in the media, but China now needs the "software blue collar" of this meaning. Or is "software blue collar" really able to get jobs in China? Because blue-collar or white-collar workers, for those who want to engage in software development, their purpose is simple, to find work in it software companies.
For this question, first of all, my basic point of view: the traditional meaning of "software blue Collar" in the current situation in China is not suitable.
First of all, it should be said that software blue collar is actually the development of software industry to a certain historical stage of the inevitable results, the software blue collar is in the large-scale software factory-type production mode, specializing in software code and basic debugging of the front-line personnel, software blue collar is the need to reduce the development of the overall development costs and achieve large-scale, The inevitable requirements for the production of factory software, in this regard India's software factory model has achieved considerable success. They have a large number of software blue collars working on basic software development, and they form a pyramid-type talent structure.
Second, we talk about anything that can't be divorced from the status quo of historical development, China's software production is still a long way from the large-scale software factory model in general, from the government's will, the government hopes that China's software industry to complete the rapid pace of industrial restructuring, The process of merger and reorganization of enterprises can really form large software enterprises which can compete with the international market, but it is difficult to realize at least in the next few years, and the adjustment of software talent structure needs a long process. The traditional meaning of software blue collar is actually, these practitioners need not care about the entire software system it developed is a system structure, what he should do is already set up, he just follow the "Software production specifications" to achieve the line, must not forget this premise is "Large-scale software production mode", The number of people may be 1000, to thousands of people at the same time software development, but we take a look at the situation in China, China's software companies last year, the statistics are 4,700, of which 55% are 50 companies, 50-200 people accounted for 42%, only a very small number of companies to reach 1000 people We have to be very clear on the point that if we train software blue-collar it is needed in China's software companies to be employed, which will account for the vast majority of people, most of them will go to a software company with a population of less than 200, but actually stand in that perspective, It may be that some of these software blue-collar workers are not able to find a job, for the simple reason that the vast majority of software companies in China are working in ways that do not work according to the Software factory model, for example, many of the companies are project managers that do system design and code writing, and, similarly, The project manager's development team's first-line software engineer is also to do code, and participate in the system's overall or local architecture design, I cannot say that all software companies in China are doing this software development, but at least in the current situation in China, such a way accounted for the vast majority. So, I'm sure that India's software factory model under the "Software blue collar" to China, he will not be able to do the work of many software companies in China.
So, as you can see, software engineer training courses are currently very popular, but the popularity does not mean that its curriculum, as well as its trained software engineers in the Chinese software talent market is fully competitive.
Again, the media to fry "software blue collar" is a thing, do for it education institutions how to do education is another matter, the government is sure to want us to embark on the Software factory model in the software industry structure upgrade, but as the final employment of employees is the software company, So these Chinese software companies he first has to take care of his current stage of development, need more than software blue collar more comprehensive quality, comprehensive knowledge structure and skills of practitioners to engage in their own development, rather than comply with the government's will, this is a very obvious thing.
Therefore, it is impractical to talk about the education of software practitioners in the software industry beyond the specific industrial history stage.
3 IT certification training in the case of hot, you should maintain a sober and calm mind
From 2001 to 2002, these two years, the entire IT industry in a period of deep adjustment, China's IT market has been the corresponding unprecedented impact, but it education and training business has achieved more than 30% annual development speed, here to talk about my understanding and experience
In fact, the start-up and development of each market is related to the whole market environment, market driving force comes from the internal psychological needs of customers, although the IT industry is facing a stage of adjustment, but there are two points we must see clearly, China's IT market potential there are too many not developed aspects, such as enterprise information, industry information, E-Government, data communication, wireless communications and so on, and from this point of view, IT industry is still a relatively high salary and treatment in various industries, even if he is affected by a certain degree. But from another point of view, it should be said that the adjustment of the entire industry, the increase in employment pressure to drive the entire IT education and training market for the rapid development of business.
It is precisely because of the speed of the development of the market, resulting in the whole industry is not standardized, training institutions fish mixed, in fact, many spent a lot of money to take a certain certificate of many people, and not as they expect to find a good job, get a good salary. I think there is a major problem:
First: The development of any market, the ultimate driving force from the consumer's inner demand, a business as long as can meet the psychological needs of a particular consumer group, he will certainly be able to seize the market, to win business opportunities; So businesses are concentrated on the deep heart of consumers, to carry out the key positioning of the demand, health care products market, with very obvious characteristics of this, as to whether the health care products can really reach his "appeal", only consumers are most clear. It education and training market development is also the case, because the entire industrial environment change and the pressure of the job market, driving consumers to carry out it certification, we first of all regardless of whether these it certification can ultimately achieve the customer's intended purpose, but at least the demand is in the customer's brain.
Second. Our investigation shows that most of the choice of it certification consumer groups, in the choice is with a lot of blind obedience and herd mentality, these people did not really seriously study the needs of employers, for example, a lot of college students to obtain an IT certificate, just because he felt that the university did not learn anything, Want to test a certificate to increase their employment weights, want to in his employment, to the employing unit to prove: what he learned during school. But he didn't think of one of the most critical questions, is this certificate really useful? Anyway, whether useful or useless, first give yourself some psychological comfort. One problem we've found is that college students are rarely able to really stand up to the employer's point of view and decide what they should do to prepare for the job.
The third question relates to a software education organization, especially to the IT field education organization, his overall transportation does the idea and the competition strategy question, whether this organization is standing in the employer's angle to ponder, what is their employment logic exactly? Are they really looking at a candidate's certificate? Or in employing the time to pay more attention to from the experience to make judgments, and secondly, in reality, the real employment dilemma in the end is where. Finally, the software education institutions how to set up their own courses to meet the employer's "software talent" of "core needs."