Three things you should consider before you change your career as a programmer

Source: Internet
Author: User
Tags ruby on rails

In the 2013-2014, the world blew up a flurry of code-writing, and the big media reported wildly that young people, whatever they were learning, must learn to write programs. From time to time you'll see "programmers are one of the most qiantu jobs!" "or" Even Obama is starting to write code, can you not start? "This kind of article, regardless of money temptation, celebrities take the lead, as if the world is crazy to do the program." Even at the end of 2015, there are still such articles appearing. In contrast, many people think that their current job is very bad, including the boss of high-pressure rule, the job content is boring, pay only to live, and so on, see the article in the "well-paid", "work Abroad", "hot job shortage" word, are you want to change? Let's put together some suggestions today.

  First thing, what are programmers doing?

First of all, there are many fields of programmer, I was cheated by the film, the programmer is the movie hacker, as long as a few seconds can be very large system architecture to complete, all mentioned intrusion, crack, infiltration and other words, hackers can easily handle. But to be honest, "hacker" is only one of the areas of the field of procedure, including mobile phone software, web site, database maintenance, servers, big data and so on, each field is a professional, not only we usually see "google engineer", "apple engineer" as simple classification.

Therefore, when the major media are advocating the transfer into the programmer, most of the talk is software engineer (software engineer), the most important or because the software is our daily life most often contact, including desktop software, mobile phone software, web site, are in the development of these years in full swing project.

The programmers mentioned below refer to software engineers. So what exactly are the engineers doing? As far as work is concerned, the following five things are not detached:

1, discuss with other engineers

2, writing code

3, Fix the bug

4, communicate with users

5, and product tear force and be scolded by the boss

For the level of the novice programmer, change the bug this step takes up most of the time, and the process is very boring and lengthy. Looking for an engineer to ask him the most foolish mistake he has ever dealt with, the answer is, "it takes a whole day to find a typo," does that sound a waste of time? Yes, that's a waste of time! Even, all kinds of errors are "house leakage of the night Rain", whenever you need to concentrate on other things, the mistake appeared, and then the original plan to do things on the left, the progress is too late, the boss scolded. This is definitely the norm for the development of new programs. Of course, in these mistakes, we learn how to write better programs, avoid the mines that are planted for ourselves, and reduce the chances of errors occurring. As time goes on, we seldom make such foolish mistakes again.

But don't the master programmer have to change the bug? Unfortunately, senior engineers do not just deal with their own mistakes, but also to deal with other people's mistakes, the more senior experienced problems more difficult. I believe we all know that many enterprises will hold a large amount of money to find senior engineers, and in addition to write new software, many software development is to ask people to wipe the buttocks. Just as entrepreneurs face a variety of economic, psychological, and social pressures, engineers are faced with a variety of procedural problems, which could be a bug in a complex program, or it may be that the technology used by the company's services has been a problem.

For example, a well-known GitHub attack, when everyone thought that Ruby on rails technology was safe, suddenly caught a serious security breach, if we happen to use the same version of Ruby on Rails in the company, and therefore to solve this problem for the company?

Therefore, in the life of engineers, one of the major priorities is to solve the problem. If you are facing these situations every day, can you still enjoy yourself?

  The second thing, don't be blinded by media propaganda.

The programmer's salary is very high.

There are ways to earn high salaries in all areas, but for programmers the situation is more in line with the "80/20 law", as many people say:

The engineer is hungry, but he can't save any money.

No matter the ability of ordinary programmers, who can only obey the rules, or sparked, the boss of the stingy programmers, probably can not get a high salary. If halfway decent programmer, just at the beginning must not expect to have super high salary, also difficult to find opportunities to start a business immediately, especially the transfer of chips less, unlike other types of students have a lot of foundation, there are works, find a job easier.

To talk about high pay, or to take the strength to talk about, if not for the medium-sized software projects to design a good architecture, or the technology they are good at not fully understand, that for the salary or do not have too much expectations, and these are required experience accumulated. Start-up programmers don't think much of the hype about the media reporting millions of dollars a minute .

According to the Programmer Inn www.proginn.com so many programmers experience, the beginning of the programmer as long as patience, can definitely find a job pay for life, plus a little money to save. As programmers, I hope you can resist the prevailing low salary, be brave enough to refuse to pay too low, and accept that the unscrupulous companies will continue to hire other programmers with the same salary, and that their quality of life and morale would be as low as salary.

  Is it good to be a programmer?

  After a real career as a programmer, the problem is followed by a lot of things to explore. For example, education is a major difficulty, the programmer of this industry is to appreciate education, of course, this is not to say that it is necessary to graduate schools, but "undergraduate department" This thing is relatively important. I believe that a lot of people have eaten this loss, a career before thought can rely on a passion conquer, but in the interview many companies, the boss heard not the undergraduate department will be wrinkly. A good-hearted boss also said when he told him that he had not accepted the interview:

  "Wages are linked to education, which is the universal rule of the world, and you want to be a senior developer in the future, which is what every boss will look at." If there is no way to get another degree, at least you can prove that you have a basic understanding of the knowledge of these machines, algorithms and other hard-core disciplines. ”

  It was shocking, but it really woke me up, and the programmer was not just a skill but a knows to the whole field.

Another difficulty is to maintain enthusiasm, the development of the process of technology to go beyond the speed of many other areas, under the pressure of work, many people will choose not to learn, resulting in the speed of progress can not keep pace with the whole world. There may be people in contact who have heard of the era of Web front-end technology in recent years, the framework extends from Java as the stars, from the most popular react Native, to the previous two years of Angular.js, Ember.js, plus the previous Battle of node. JS and Io.js, has had an explosive change every year.

If I were an engineer in the Web front-end today, when these technologies arise, it is imperative to understand the problems, strengths, weaknesses, and so on, and decide if they need to be used to change the existing architecture. For example, the company's existing structure is immediately updated with pure Java real variables, if you use Angular.js, you can significantly reduce the number of code, directly to the function library to handle. If we don't explore these technologies in particular today, the technical lead will expect you to know a little bit about these technologies in the future when looking for other jobs. Simply put, if you don't move forward, others will push you forward.

This is only one example, the field of program development in small places there are infinitely many changes, must continue to learn, accept change. Before the transfer, a lot of things we think is very good, but after the transfer, only know that the field has his own laws, can not be listed here, but in any case, if there is determination, enthusiasm, these difficulties for you will only be a long way to a small stone.

  The third thing, are you really so passionate about writing code?

For the passion, we have to mention the 28 rule again, because 80% of the hottest technologies are framed by 20% of people. No matter what technology you delve into in the future, there will always be men of God in the field, who can surpass 10 of the value of 1 people, have a very complete and esoteric understanding of the technology, and have a very elegant solution to difficult questions. These people determine the future of technology, such as the current large commercial software on the market, many of them are the structure of a few people to complete, follow-up by many engineers to maintain, update.

Do you want to be the "Great God"? Although many programmers do not have a life to do, but still have to retain the "want to be a great God" enthusiasm, to be a programmer happy. In life, programmers not only encounter system errors, but also often encounter user comments, including comments often seen on Google Play or the App Store: "This software Sucks", "too high" and so on, no focus but a serious blow to morale, is a part of life. On the contrary, especially in large-scale projects on-line, has received users said that feedback: "Use has become more convenient, thank you!" "This kind of warm commentary makes people feel very fulfilled. Or are you delving into special technology, and the success of the project has greatly increased, such as the use of the go language to some of the Ruby on Rails API service rewrite, so that the overall speed of more than 20 times times, the data will make the programmer a great sense of accomplishment, but also a great job satisfaction.

On the other hand, when we just want to write code and maintain the project peacefully every day, the above situation will never happen, we can only feel sorry for ourselves all day, dissatisfaction with the current situation but not improve, put all the wrong to the user, push to the supervisor, push to others. It's better not to change careers, you might as well stay in your current seat, good life can be. Be passionate and want to be a leader in the 28 rule, jumping into the programmer's circle makes sense.

Summary

When you decide to become a programmer, you have to be enthusiastic about what you do, want to keep learning, explore new technology, or change a little meaning, if you want to secure life, instead of looking for a boring job, concentrate on the stock market bar, so the quality of life will be much better than the programmer!

Three things you should consider before you change your career as a programmer

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.