Are you growing into a good programmer?

Source: Internet
Author: User

 

Guidance: This article is based on 《Do You Morph Into A Different Programmer?This article is translated from bole online 《Are you growing into a good programmer?.

The content is as follows:

In the software development process, everything you experience will influence you in a subtle way. With the passage of time and the increasing age, the understanding of the Program Development Technology (same/or related capabilities) and itself will continue to accumulate, these will eventually help you achieve your goal-to become a good programmer. The experience mentioned here is not limited to milestones in the programmer's career, such as changing jobs, becoming leaders/managers, or starting your own business. Every job, Project (regardless of size), communication with team members, or even every program module you implement, it will make you better, more dynamic, and more insightful than before.

In your daily work, you will become a better programmer without any new knowledge that you can learn.What I'm talking about is an important experience-you don't have to worry about trivial things (for example, whether each keyboard is perfect). What's important is to grasp the arrangement of every day. If you come back from your trip and find that you have no gains, you must think it is a waste of time. This is also true for the programmer's career. If you have not gained much from completing a project or implementing a program function (for example, your understanding of software development has not improved and you have not learned any new technology ), this is also a waste.

You may say that some work that must be done is boring and repetitive, and you have never learned anything. This may be true, but it depends on how you think about it. In the final analysis, you need to create the conditions for your own growth and maintain innovation when doing things.

Learn nutrition from each experience

First, in addition to learning new programming languages and mastering the latest features of your favorite development platform, you also need to improve your communication skills. Second, it is also important to learn how to work with others to improve your teamwork ability. Next, you also need to master the leadership, management, how to motivate yourself, financial knowledge, industry expertise, marketing knowledge and organizational knowledge. In addition, it is best to have a broad understanding and understanding of the industry-related content. In the process of learning, you constantly push yourself to the limit, and eventually you will continue to become a good programmer.

What I want to say is that no matter what you do, you can compare yourself with these aspects listed above and see which aspects can be improved. Sometimes you have a good opportunity. You are connected to the latest technology and adopt a new development process for you. At this time, you can learn and absorb new knowledge by yourself. Sometimes work is really boring. If you don't create the conditions for self-improvement (from the aspects listed above ), you can only do mechanical work without wasting a good opportunity to improve yourself and your precious time.

Here is an example to illustrate how to improve yourself from ordinary work. For example, if you are an SQL bull and have a job to complete a lot of SQL statements, you are the best candidate. You are very good at this. On the surface, this job is boring and you cannot learn anything from it. However, if we look at it further, this task may need to be completed with others, and you may not be very good at working with or communicating with others. This is a great opportunity for you to improve yourself, all you have to do is find this opportunity. Or you may be very good at working with other people, but if this time your partner may not be new, this is a great opportunity to improve your training skills, it also allows the newcomer to grow fast.

Maybe none of this happened. You are doing a job that you can do with your eyes closed. Why don't you try to get a deeper understanding of and improve the technology you are using? Maybe you can improve your typing skills. If you really don't want to do this boring job, you can try to communicate with the boss and let it go. Although this is not within the scope of our discussion, you can also try it. Maybe communication cannot achieve your goal, but you can exercise your wit and courage from trying to communicate (how to stay calm in an embarrassing situation ), after all, you will not annoy your manager/lead to shirk the task :). So if you can look at a task from a different perspective, you will suddenly find that you have taken another step on the road to becoming a good programmer.

What if you are standing in the same position?

Sometimes you can't get rid of things (it seems that these things are the same ). Even from various perspectives, we cannot find any improvement. What should you do at this time? This is a good question, but you should not ask this question. If you really don't think you can learn and grow from your work, why are you still doing this kind of work (this is what you should ask )? If it is because of economic reasons (such as your current high income), you must ensure that the future will not be damaged for short-term benefits. If you are reluctant to work with colleagues in the team, you only need to analyze the advantages and disadvantages and will know that even if you are not working here, you are still good friends. You just left the company, but your friendship is not over.

If not, why are you still doing this job? You should realize that you will lose valuable opportunities. Remember to evaluate everything you do and see if it can change or deepen your understanding of the development technology. If the answer is no, you can leave immediately. If the answer is yes, you will not only be satisfied when doing this, and every day (not just every year) will move toward perfection in terms of technology and personality.

From: Alan Skorkin

Translated by: bole online

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.