I spent 7 years to grow into Java architect Ali, How about you? (With knowledge path)

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

以下五大知识体系是我从业多年总结出来的经验,都是当前最主流的技术。想学习这些技术的朋友可以加群:650385180。群里会分享这些技术知识点供大家学习免费下载。希望能够帮助大家全面、科学地建立自己的技术体系和技术认知!

分布式学习路线


 

微服务学习路线


 

性能优化学习路线


 

经典设计模式与源码分析


 

开发必备工具


 

动手实践项目


 

总结:

以上就是我总结出来的这些年的知识路线,中途也有了解过其他的技术,但是最后还是坚持下来走Java这条路,想要学习提升的,可以加上面的群,希望这些知识点可以帮助在这个行业发展的朋友和伙伴们,在论坛博客等地方少花些时间找资料,把有限的时间,真正放在学习和前进上。


Guess you like

Origin blog.51cto.com/14422729/2415276