[Translation] engineers how to upgrade Daguai

Beginner, intermediate and senior engineers are not judged by the number of years you are in the encoding work. Junior engineer may sometimes be longer than the senior engineer working hours. Can become a higher-level engineers entirely depends on your mastery of professional skills, this does not mean to be a senior engineer is an expert in every respect, but it is certain that, senior engineer must be more professional than the junior and mid-level engineers .

Programming is not just the ability to be more professional, junior and senior level engineers compared to other differences. This difference in the end what is it?

Knowledge

Obviously, a senior engineer needs to acquire more knowledge. Learning design patterns, architecture, automated testing, performance, and security knowledge is the primary engineer the only way towards a senior engineer.

Software development process need to know what is a very important thing. But when you have mastered all the knowledge mentioned above, you do not have to be a senior, this knowledge is only one difference between the different levels of engineers.

coding

Many people think that coding is a form of communication between humans and computers, in fact, people who are used to guide the exchange and the computer. The final also need to compile the code into binary code.

You need to ensure the readability of the code, so that later other developers to do other work on this basis. The best we can let you have never seen a code team will be able to immediately open a new feature development or repair the bug. This is also one of the primary and senior engineer of distinction.

Here we ignored the mid-level engineers, mid-level engineers in a gray area because the relatively programming capabilities. Since mid-level and senior engineers ranged between junior and senior prefer. More dependent on the ability to encode more experience, and mid-level engineers usually involved at least once a complete software development process. They have learned a lesson from some simple mistakes.

How to identify junior engineer

Junior engineer usually no development experience. Some are just graduated, the first full-time to do the development. Attitude is often the primary developers "can be used on the line." Use software and easy to use software are the same in their view.

Write simple code is a difficult thing. This is also the ability to junior engineers do not have, they tend to write code more complicated. You can identify primary engineers strange abstract single line of code and complex logic. This is the way junior engineers to show off, to let other developers know their abilities, but this is the wrong approach.

Focus on the primary end computer engineer coding, while ignoring the human side.

What senior

When viewing a senior engineer of the code, you may be thinking: This is all code? Where the rest? Senior engineer writing code is always simple and straightforward. One of the strongest skills can practice during this time programming. Senior Engineer follow the KISS principle: the Keep IT the Simple, Stupid .

Senior Engineer differ in coding and junior engineers, they will give priority maintainability and scalability of the code. Mentality of the two levels of encoding engineers are completely different, more senior people when considered in subsequent maintenance of the code, the primary consideration is to engineer the code may be executed by a computer.

More than just programming skills

In addition to the programming capabilities, there are other factors that can tell you the level of an engineer.

Junior engineer usually just do some simple tasks. They are not responsible for any architecture. Mid-level engineers do not design solutions, they also perform the task. The primary difference is that engineers, they do not need much supervision and guidance, as long as they are assigned to the more routine tasks, they can independently. Senior engineer can develop a stand-alone application.

This does not mean the senior engineer in the development process will not encounter problems, each developer will encounter a lot of problems every day, the same is true for the senior.

The difference is a senior engineer to know how to ask questions properly and how to solve the problem. For general questions mid-level engineers know how to ask questions correctly, but you need to seek help when experiencing more complex problems.

Senior engineer never lost, they know how to track the problem in the right way. Not to say senior engineer does not need to seek help from other people. Sometimes the right choice is to experts in related fields to seek help.

Intermediate engineers also need to have the ability to ask questions correctly, unless they are assigned to take a very in-depth knowledge of complex tasks.

You can not expect junior engineers always accurate questions. Because they lack experience, they need more experience to guide engineers. We want to provide the necessary resources for the junior engineers, and they continue to push forward in the right direction.

How to qualify

We all want to upgrade their level, to become a better engineer, but how to do it?

Beginner to Intermediate

Due to lack of experience junior engineers, so they at least go through the complete software development process several times. This process, they do not encounter a lot of the pit, and then step on the need to avoid such a pit next time.

When coding, junior engineers must learn to make your code more concise. More for the next person to take over this code into account. You need to learn how to debug code, which will help you better understand its operation process.

In addition, you need to be more familiar with some of the best practices, but you need to learn architecture, performance, and security know-how to cross over to reach the mid-level engineers knowledge gap.

Intermediate to Advanced

From the mid-level to senior engineers may be more difficult. Some developers throughout his career have stayed at the mid-level engineers.

Senior engineer knows what to do and what not to do. This is the hardest thing to learn a course, you can only learn from the mistakes committed in the past.

If you want to reach senior level, you have to be ready to take on tasks that no one can handle. You should consider is how to do a better job, not just how to complete.

As a senior, you still have a job is to help less experienced engineers, when they do not know how to do, you is their strong backing.

Senior technology stack may not make you surprised, in addition to the programming capabilities, their use of tools and applications used by the company are very familiar with.

in conclusion

The difference between beginner, intermediate, senior engineer not only years of service. Of course, you can be sure that senior than junior and mid-level engineers more professional, more knowledgeable. But this is not the only determinant engineer level.

Senior engineer writing code more concise, and the mentality of the primary developers of different coding. But in addition to coding, and knowledge of how to ask follow-up questions is a necessary ability. Only senior engineer with a wealth of experience to calmly deal with various problems.

Junior engineers want to grow must focus on writing more concise code, and experienced much the complete development process. From Advanced Intermediate to advanced you need to learn to deal with the problem more difficult. You should be willing to take on more challenging tasks, and become masters of technology stack. Another senior work is backed by other developers.

Martin Fowler gave you one last word: "Any fool can write a computer program can understand, write code that humans can understand a good engineer."

Description link

https://medium.com/better-programming/the-differences-between-a-junior-mid-level-and-senior-developer-bb2cb2eb000d

Translator Comments

The author describes the differences between the different levels of engineers from the coding capacity and the ability to deal with the problem. For mid-level engineers think of the ability of Internet companies and domestic demand is still some difference. I contacted at least mid-level engineers must have a certain system design capability. The Senior Engineer will need to have the ability to issue a more comprehensive treatment. But for most people, it may already be mid-level titles, but did not master the knowledge of those mentioned in the text, which turned out to be intermediate to advanced divide. I believe we all aware of the importance of learning, since into this line, it is too old to learn to live with it.

Guess you like

Origin www.cnblogs.com/Jackeyzhe/p/11809672.html