I spent 7 years to grow into Java architect Ali, How about you? "Advanced attached roadmap."

Preface  : I spent seven years, go step by step now, halfway there to find out about other techniques, also thought to turn to other languages, but ultimately he decided to go down this road Java, I hope my experience can help later the people, if that is helpful to you, you can look thumbs up.

REVIEW:

1, the architect should or should not write code

2. Why is it always so rotten system

3. What is the most difficult threshold to become an architect that?

4, learning how to be more efficient?

1. The architect should or should not write code

Qualified programmers explicitly assigned to the task will be completed well, but in most cases "architecture" of the word means that architects and does not involve too much detail, the total is still some distance between the architecture diagram and code implementation, you We can not guarantee that everyone will understand your design right, or the programmer will immediately come up with enough elegant solution obstacles encountered when writing code.

In my opinion, architect writing code is more like doing logistical work: the first time to detect possible problems in the code, proposed warning to others, or give someone else suggestions for improvement, when necessary or to other people show you the correct posture.

In most cases I do not need to as the architect who won the "core module" to develop this kind of work, after all, I can too fragmented deployment time, and efficiency is difficult to guarantee, in the case of a lot of people focus a lot better than I do, I just need to keep the bigger picture needs an appropriate participation in it.

Overall, architects and programmers in some respects a bit like the relationship between product managers and users, most programmers do not take the initiative to tell you what they want and where they need to optimize, or even do not know that. Want to make a good product, one shortcut is to do the same thing with the user.

2. Why do people always so rotten system

Many programmers strong ability to solve problems that they have to solve a problem, the afternoon will be able to write hundreds of lines of code to achieve the function. But something made out of a kind of small considering the feeling of something. Most programs can realize the function, but if the "time" is also considered as a dimension, it would realize a qualified project needs to consider something more: the document more general use, easy to understand, simple the easily expandable design, and so on.

Many companies should have some legacy systems, they are bulky, heavy, difficult to use, almost impossible to maintain, everyone is complaining about these systems, and are trying to replace those legacy systems every day. But after a period of time in the past, you will find new people around them began Tucao that system was the replacement of legacy systems.

"Most systems are initially so that, when enough functionality, scalability, looks can be, but these systems are developed by people worse after departure."

3. What is the most difficult to become an architect THRESHOLD?

Many people call themselves architects who simply tell you when a rattle architecture, all kinds of technical terms like Laughed as saying from his mouth came out, true to his large high concurrent data, but asking a little bit, it will find missing many basic concepts, such as high concurrent claims to know people who say do not know where he called bottleneck in highly concurrent systems, claims to know the architecture design of people did not understand how his system to ensure high availability, claiming large amount of data system is actually less than one million data, and so on.

Although architects sounds very big, but the essence remains the engineer, not a scientist, not a charlatan Bluff. To learn more, but also we need to practice landing. More design architecture program is doing some abstract and trade-offs: the complex needs into simple abstract model, functionality, performance, availability, cost, etc., R & D planning how to build a system, content needs more practice exercises .

4. How more effective learning?

Most people can learn for yourself every day a limited time, focus on learning how to enhance the efficiency of this stage has become to be solved.

Talk about their experiences to enhance learning efficiency, it is actually very simple: the system of learning.

In repeated several times painful learning - after carding process, and then to see some independent articles or materials tend to be more effective, because they can find the corresponding knowledge in the system, and sometimes even a book one only need to look a then point out that layer of paper windows, you can acquire new knowledge.

Like many people, I think just graduated as a programmer, if they work hard, with a little talent can get some results.

After working for some time, understanding of their own and other people are also more and more clear, gradually found that the gap between the programmer and perhaps bigger than the gap between humans and monkeys, accept the fact that it makes me depressed for a long time.

Over time, he found himself able to objectively evaluate their own ability, but also aware of the distance is not so important as long as find ways to run faster, would be sufficient.

5. fast becoming the architect of the learning route

The following are my top five of knowledge practitioners for many years summed up the experience, are the most current mainstream technology. Share these technical knowledge for everyone to learn for free download. We hope to help you comprehensive, scientifically establish their own technology systems and technical knowledge!

To have a solid foundation of Java

Here the so-called solid foundation of Java is not what we usually understand Java syntax, object-oriented concepts, but a deep understanding of Java's multi-threaded development, skilled network programming technology to optimize the use of NIO, understand the underlying mechanism of the JVM, with the underlying performance tuning the ability to precisely these skills are the foundation for Java developers often overlooked.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

In-depth study of popular open source framework

Many small partners may be very confused as to why BAT interviewer always like to ask the source? In fact, we often use Spring, such a framework can be said MyBaits JAVA inside the most classic textbook, from which you can learn a lot of skills to experience write code, try to realize open source framework contains elegant architectural design of the road that is the most important of.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

The design and application of high-performance distributed systems

The double eleven log statistics, valid requests the headend system above about 60w QPS, and the peak near the rear end of the cache cluster 2000w / s, but also nearly single 30w / s, facing architects manufacturers Internet is such a production environment, the distributed cache, a message such technology to build high-performance systems must master.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

Micro Services (Distributed Technology Services)

Micro service architecture is an architectural style, the entire application is divided and designed to separate the business domain model loosely coupled services, the ability to easily scale, high stretchability, and the like to facilitate the development and maintenance of these services are born with a micro to advantage.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

The ability to communicate cooperation

Programmers fighting, more often than not a fighting man, how efficient deduplication in a single platform, code review, the function to adjust, debug, done under unified planning at every step, chaotic heap code process find their own records. It all depends on effective tool, Git, Maven and jenkins.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

These are becoming an architect needs to master all the technical points, this technology is a system architect six more than ten years experience in the industry combined with actual combat experience, first-tier Internet companies mainstream technology, collate and analyze together. And technology for each point with the corresponding video Comments, annotations and notes the source document (Spring, MyBatis, Netty source code analysis, high concurrency, high performance, distributed micro-services architecture).

Free Information Access: concern micro-channel public number: JAVA programmer onslaught of K can get.

North drift current situation five years programmers: it was a million a year, some grassroots moving bricks

Guess you like

Origin blog.csdn.net/weixin_45127309/article/details/91990653