-
For programmers, if you want to avoid a midlife crisis in the future, it is necessary to plan your career as early as possible (the sooner the better). Architects are the core of the technical team, with high salaries and technical skills. Therefore, many programmers have buried their dreams of architects in their hearts since they first entered this industry, remembering that many years ago, I made a bold statement to the female ticket in front of a fast food stall in Metro City, Xujiahui, Shanghai, that "I want to be an awesome architect".
Fortunately, the cowhide has become a reality, all the way to persevere, all the way bumpy, the female ticket became LP, and I also realized my dream of being an architect, in this article I will sort out the responsibilities and necessary abilities of architects, and share some learning directions for programmers who are determined to chase their dreams.
The importance of an architect has been described as follows: the architect's job is like building the trunk and branches of a tree, and then the programmers make the tree grow leaves and fruits. An architect is a team leader who needs to control the whole and understand local bottlenecks, and provide solutions based on specific business scenarios.
He is involved in the entire process of project development, including requirements analysis, architecture design, system implementation, integration, testing and deployment, and is responsible for directing and coordinating technical activities and technical specifications throughout the project. In a nutshell, the responsibilities of an architect are threefold:
In the process of project development, the architect needs to split the complete system into subsystems and components according to user needs, form different logical layers or services, determine the interfaces of each layer and the relationship between layers, and decompose the entire system layer layer "vertically" and the same logical layer into blocks "horizontally".
-
The difference is that senior developers know how to ask questions correctly and how to deal with them.
-
The ones that need to take the exam are likely to be very difficult.
-
Take your time, it's urgent, it's a programmer's task.
-
The architect's job is like building the trunk and branches of a tree, and then the programmers make the tree grow leaves and fruits.
-
You can only learn slowly and down-to-earth, isn't it, there is no shortcut to learning.
-
They need to become more and more experienced and more skilled.
-
There is no specific way or method for this, and it all depends on the acquired learning and development.
-
Practice makes perfect, so only by practicing and exploring more can you reach the highest level.
-
Three paths: one architect, two managers, and three big data workers.
-
I think they need to have a plan ahead and some preparation in advance.
-
In the previous article, we pointed out to you what mistakes novice programmers will have when they transform into technical masters. And today we have brought you the solutions to these misunderstandings. Shahe Computer Training hopes that everyone can truly understand and become a senior programmer through reading this article.
There are many benefits to doing this, to give a few simple examples:
The requirements analysis is more accurate, and the risks, impacts, and difficulties can be identified at the demand stage.
The problem is handled more quickly, because the relevant business and the first company are familiar with it, and can quickly judge the possible cause of the problem and troubleshoot it.
The design of the scheme is more thoughtful, and because of the understanding of the overall business, a better plan can be designed.
2. Familiar with end-to-end.
For example, if you are responsible for web background development, but in fact, when a user initiates an HTTP request, it takes a lot of intermediate steps to reach your server (such as browser cache, DNS, nginx, etc.), and the server will generally go through a lot of processing to the part you write (routing, permissions, etc.) Many systems or steps in the whole process, most people are impossible to participate in writing, but mastering these knowledge has a great effect on your comprehensive level, such as program design, online fault handling, these more valuable technical work requires a comprehensive technical level.
Systematic", "overall", "comprehensive" these words seem to be relatively empty, but in fact, they are all necessary qualities of technical experts, to achieve such a state, we must be familiar with more systems, business, **.
3. Self-study. Generally in a more mature team, because the framework or components have been encapsulated a lot, the technology used to write the business is indeed relatively small, but we must understand that "the only constant is change", the framework may be improved, the components may be replaced, the existing technology may not be able to meet the business needs, or you change a company, the new company has neither components nor frameworks, and you need to start from the beginning of the quarrel.
These are opportunities and challenges, and opportunities and challenges will only be distributed to those who are prepared, so in this case, we need to learn more things on our own, because there is no time to really wait until we need to use them.
-
Practice more, communicate more.
To master programming ideas, we must practice and experience them in actual programming work. At the beginning of programming, you should often design programs by yourself, and don't stick to a fixed way of thinking when designing specific designs, and think of several solutions when encountering problems. This requires more communication, each person's way of thinking is different, the angle is different, each has its own skills, through communication can continue to absorb the strengths of others, enrich programming practice, and help yourself improve your level.
Hands-on programming is the embodiment of creative thinking applications and a great way to develop logical thinking.
-
First, the technical improvement, the level of middle and senior programmers must be relatively high.
Second, the work experience is improved, the longer the working years, the older the seniority.
Third, the certificate is upgraded, and more certificates are taken.
-
We will continue to update our knowledge in various industries and fields.
-
Personally, I think it's the difference between skill levels.
Junior programmers may be the ones who have just finished their studies, have done one or two small projects, and are not proficient in all aspects.
Intermediate programmers are already proficient in the skills and knowledge they have learned, have three or five years of work experience, can independently complete the development of projects, can find bugs in the program, and so on.
As a senior programmer, I feel that I am already a big figure in this field, and I can solve almost any problem at hand. I can be proficient in all kinds of framework tools, and even write the framework and tools I need by myself.
-
There are also big differences between programmers, and the biggest difference between them is mainly in this aspect, so I will share it with you.
Ability. Some programmers have just entered a unit and have not learned much, and their ability gap is much worse than that of old employees.
Experience. Some programmers have improved their own abilities, but because the stay time is relatively short and the experience is not very sufficient, they still can't solve some incurable diseases.
Salary. Because of different abilities, the rewards are also different, and the salaries of senior programmers are generally very high, after all, they can solve many difficult and complex problems.
Of course, in addition to these aspects, there are also some gaps, such as hair, thinking, and seniority.
-
For junior programmers, the tasks they are usually competent for will be very simple, only a little simple processing of the program**, and the salary at work is not particularly high, but for senior programmers, the salary is definitely a big advantage, because his work ability is much better than the other two, and the difficulty of the work is much greater.
-
Junior programmers work crazy overtime every day, and then they can't figure out what they're doing, and they spend most of the day scratching their heads; Intermediate programmers are better, they know what they do and what they should do, and they will take care of their hair every day; Senior programmers are more powerful, and they are also the most paid. At this stage, they will not choose to touch their heads, because they are already bald.
-
The junior programmer is the legendary coder, relying on copy and paste, than the gourd to complete the way of writing, usually a method of hundreds of lines, eager to a class to achieve all the functions, do not consider the principles of program design, nor consider the efficiency of the program's execution.
Intermediate programmers prefer elegant ones, and write elegant ones by themselves, encapsulating, inheriting, and abstracting them freely, and can independently complete the development of modules in the system.
Senior programmers are able to design systems and use their skills to solve problems. And it can take into account the scalability, security, stability and other issues of the system.
-
In my opinion, the biggest difference between junior programmers, intermediate programmers and senior programmers is their hair, because junior programmers start with thicker hair, but after they work overtime for a while, they become intermediate programmers, and their hair will gradually become thin, and when you become a senior programmer, your hair will definitely be bald.
-
Junior programmers write process, intermediate programmers write function, and senior programmers write architecture. Low to high is actually the reusability, maintainability, and extensibility of relevant language knowledge in the face of proficient applications and functions.
-
The biggest difference is, of course, the different salaries, the higher the rank, the higher the salary; Just kidding, the biggest difference is that the density of hair is different, the higher the level, the less hair, some people say: you are a programmer, no wonder you have less hair, programmers have high salaries and high pressure, work overtime every day, and hair loss is serious. Except, of course, genius.
-
The junior program employees are miscellaneous workers, the ultimate program employees are small workers, and the senior program employees are big workers. The architect is equivalent to the main design and project manager, the network engineer is equivalent to the design and construction of water, electricity and heating, the operation and maintenance engineer is equivalent to the after-sales technical team, and the software engineer is equivalent to the preparation of design specifications.
-
The junior programmer is the legendary code farmer, who completes the writing of ** than the gourd drawing scoop, which is particularly easy to develop problems at this stage, while intermediate programmers prefer elegant **. They are able to develop the modules in the system independently, and the senior programmers are able to design the system and solve problems using their own skills.
-
One of the biggest differences between beginner, intermediate and senior programmers is the level of skills and abilities. A senior programmer will definitely have a better level of practical ability and operation, but for a junior programmer, he may only have some introductory skills.
-
Low-cost programmers only know how to implement functions, intermediate programmers know how to expand and maintain, and senior programmers want to think more and do less, and think about the whole architecture!
-
I can't tell, there is no difference on the surface. You have to find a senior programmer to see their best design ideas. The higher the level, the more esoteric the design of the old programmer will be.
All kinds of gossip arrays Tai Chi arrays, when encountering changes, you only need to move a chess piece and immediately change the formation. The logic of junior programmers is chaotic, and they work overtime to deploy troops when they encounter changes.
-
The junior level is working overtime desperately, the intermediate level takes care of the hair, and the senior level is already bald.
-
The annual salary of junior is 200,000, 2 million for intermediate, and 20 million for senior.
-
Junior programmers can write programs, intermediate programmers can write a lot of programs, and they can write fast, and senior programmers can lead the team and make a product.
-
Those who work overtime every day are junior, those who do not work overtime are intermediate, and those who can not work are senior
Related questions8 answers2024-05-01I think it's better to refuse directly, the so-called "euphemism" must be grasped, such as "you are a good person", "I just help you as my brother", "I don't think I deserve you" ......This kind of words may seem euphemistic, but when you say it, it will actually make the other party feel that he can continue to pursue you, even if he understands that you are refusing, but he will feel that your current rejection can move you through his own continuous efforts. This involves whether you really want to reject him completely, or do you have a crush on him, but you really don't want to fall in love for a while.
14 answers2024-05-01In fact, chasing the program ape is the same as chasing others, but the program ape is always busy because of work, working overtime, rarely meeting people outside, and having little social range, so it is no problem to chase the program ape, because the program ape is actually no different from normal people, such as my roommate. >>>More
10 answers2024-05-01When a programmer chooses his or her own career path, he must first determine what kind of career path he is suitable for. If you are more persistent in technology, then you will take your current route, but you will suffer a lot, but this is your own choice, you have to persevere, if you are not very direct to your technology, you can change the career development route.
3 answers2024-05-01Easy language.
A programmer is a professional who is engaged in program development and program maintenance. Programmers are generally divided into programmers and programmers, but the boundaries between the two are not very clear, especially in China. >>>More
How programmers can improve their work efficiency, talk about how programmers can improve their prog2 answers2024-05-011.Improve your typing speed.
Chat with Chinese input methods such as Sogou When switching between writing documents and writing **, develop the habit of switching back to the English input method of the system directly. It's all a shortcut key, saving a lot of trouble. >>>More