This article is also the story of architect Liu.
As an aside before the story begins, I’ve been asked a few resume and interview questions, most of which I covered in a previous hardcore article. Here’s the portal:
Best practices: Tips and tips for avoiding pitfalls, from resume writing to job interviews and salary negotiations
Very comprehensive a programmer looking for a job dry goods article, basic cover the whole process of job hunting, the most rare is in addition to experience, there are a lot of need pit. If you haven’t seen it yet, I recommend it. It’s definitely helpful.
End of digression, beginning of story.
Who knows me? Heroes end in trouble. Mang world where to find friends? The blue wet!
It was the modern heroine Qiu Jin who wrote this poem. It was an ambition that defied the world and defied setbacks. At this time, Liu has also qi Qi Yan.
Liu is an architect, but as his work has become busier, he has gradually left writing code on the front line. But when he left the front line, he could not help but hear some discordant voices.
- What architect doesn’t write the underlying code, I don’t know what the point is…
- What architect does not write code all day long, will be obsolete…
The incessant noise of these years, Liu inevitably have the above mood.
An architect is, by definition, a technical expert. Some of those architects have moved on and some have not, as the company has grown and expanded its responsibilities. But on and off the line,
It doesn’t affect the core values of a technologist.
There are some theories that say that technical experts live on technology, and technology is a skill, and a few days without practice. But unlike practice, this “craft theory” doesn’t take into account the core values that companies place on architects themselves.
The reason for this is that “craft theory” only defines technical problems as problems that can be solved by craft, and assumes that technical problems are solved by writing code. It’s as ridiculous as a product manager telling you, “This requirement is simple.”
An architect who doesn’t write code doesn’t become a company’s bread and potatoes — to illustrate this, it’s important to first explain what the core value of an architect is.
Some people live in such a muddle that they can’t distinguish between core values and ancillary values. Just starting out with a decent salary, thinking that’s what they’ll be doing for the rest of their lives. I do not know this is actually a gentle country, slowly catch people, and then to middle age, everything collapsed, at that time, regret is too late.
The value of this thing, in the body of the current workers, is how much profit you can bring to the company. Take technology. You create a new product for your company, the company makes money, you demonstrate your value.
Further, if you create a new product for the company that the company estimated would take a month, and you get it done in half a month, you create a small enterprise for the company. Not only are you demonstrating your value, but you’re also giving the company a little bit of happiness by buying one and getting one free.
Assuming you create more value for the company, let’s look at the formula:
Value you actually create = money you should have made for the company + money the company made (or saved) unexpectedly because of your superior ability
As you can see from this formula, value is divided into two things. One is the value that the company needs you to make money for the company, and the other is the value that you may be able to do better than your peers.
The first part is core values. The value that you’re better than your peers or the company asks you to build a product, not only do you build a product, but you clean the floor is some sort of ancillary value, ancillary value.
OK, now that we know that, we’ll have to murmur about the architect. Where is Liu Depressed? Whether or not an architect develops code is not a measure of whether or not an architect is good enough.
However, some people may be used to scratching from the ground, come out to do some code farming, think that if you don’t knock code, you don’t deserve to engage in technology. Holding the keyboard that was still in close contact with on February 14, and expressing some strange opinions on the Internet, it is very unpopular and easy to mislead the young people later.
Why do companies need architects? Lu Xun once said
There were no architects in the company, and as the system became complex, there were architects.
The position of architect did not grow out of the ground, it was created out of demand.
You see, the core value of an architect is coming out: the ability to navigate a company’s complex systems. Of course, can capitalist business be called exploitation? It’s called helping you grow. To help the architect grow, the architect’s responsibility chain is lengthened:
From fixing one complex system -> Fixing all complex systems -> Fixing all systems -> All technologies you’re in charge
Therefore, architects have their own history of growth.
All right, let’s get back to that.
Companies need to work out complex system products to operate, need complex technical chain to operate and maintain, need complex tools to speed up product development…… These are all things that architects care about.
Coding is a small part of this, and architects are so overwhelmed that they have to give up coding and think about something else.
The architect codes well, and that’s what senior programmers do, but it’s a small part of all the technical work.
If liu coding done, no bugs online, but energy did not care about the overall technical architecture, also did not care about the overall system analysis, such as
- Does business data need to be highly available or highly consistent?
- The online operating system has been running for a long time, is it necessary to do code refactoring?
Because Liu delved into the details of coding, he neglected the more important issue of judgment, and liu’s core values were compromised. Even if he writes the code smoothly, but the overall system is not in place, it is a loss to the company, the architect is not qualified.
Now some young people who are new to the industry, while writing code, are told that architects must write code, and if they don’t write code, they are pseudo architects, which is a complete generalization. It’s hard to be an architect. As mentioned above, as your work changes, it’s very likely that the architect will take over all the technical work of the company.
There are a lot of people with technical aspirations who really want to be architects but don’t know how to learn. In Liu’s own experience, you need to develop three skills:
1. Ability to quickly analyze problems
Because the architect has a very important job, is responsible for solving the company’s system problems, many system problems are not difficult to solve, but very difficult to locate, so the ability to locate problems needs conscious training. The ability to locate problems requires the ability to quickly comb through the overall process and then pinpoint exactly where the process is broken, which is likely to be the problem point. Of course, exposure to various system problems is also necessary.
2. Ability to learn quickly
Architects are responsible for a variety of jobs, and you can get involved in almost any technical job. The architect is a backup of sorts for the master of technical work. However, architects are human, and they don’t know everything. In order to complete these back-up tasks, architects need to be able to learn quickly, to make quick technical research conclusions in some new areas, and to learn quickly and deeply in some unfamiliar technical areas to find bottlenecks and solve them. In addition, I have to pay more attention to the technical field at ordinary times, and keep learning rapidly and persistently.
3. Ability to quickly allocate resources
The ability to quickly deploy resources is due to the possibility that operations, development, and testing have some technical problems that they need to work together to figure out. For example, network problems are likely to be blamed on each other by operation, development, and testing. In this case, architects need to quickly identify problems, deploy personnel, and figure out how to eliminate the existing technical problems.
As you can see, none of these things can be done by writing code, so you really can’t just write code by looking at the architect.
As an architect, it’s not bad not to write code.