working life:8 years service company: 4 (including the four major portals of two) recent occupation: Java architect Workplace keywords: social platform, high concurrency system architecture design, technical team management, a variety of products from zero to one city!
For six years, the man had been in two of the four portals, completing the transformation of engineer to architect. Through a variety of products from zero to the development and growth, but also experienced the largest social platform billion-level traffic and user architecture design and optimization work. The work of clear-minded, serious and responsible, are colleagues in the minds of excellent problem Solver.
Q: What about yourself?
A: After graduating from my master's degree in 2008, I was in a traditional IT company for the last 6 years and has been a Java development engineer, senior engineer, architect and so on in the past 2 years in the Internet company. Work content, experienced a variety of products from zero to one of the birth of the development process, but also through the domestic users, content and the largest social/community product structure optimization work, a wealth of social product research and development experience, currently in a start-up company as a technology partner.
Q: What are the technical areas you are good at?
A: A good programming language is Java, Golang, Scala, the degree of familiarity descending in turn. Focus on high-performance, high-concurrency system architecture design and implementation.
Q: How do you usually explain to your family what your job is?
A: Generally not explained in detail, even if the explanation is futile. So they will describe my work according to their own understanding, such as repairing computers, such as selling mobile phones.
Q: Do you think programmers can be a lifetime? Have you ever imagined what you were doing when you were 40 years old?
A: Should still be engaged in the development of work, foreign companies have a lot of years of programmers AH.
Q: In the process of cooperation, what do you think is the most important three traits of a good product manager?
A: Logical thinking ability, sensitive to data, good language and writing skills, of course, if you can write some code to follow ...
Q: Who is the software engineer you admire most?
Answer: Linus Torvalds and Doug Lea
Q: In your mind, what qualities can you call a full stack engineer?
A: I think to be a full-stack engineer first to have a good learning ability, to the new technology can abandon prejudice, quickly understand the problem it solves and how to solve, and secondly to the technology to retain curiosity, finally there is a strong hands-on ability, without delay, to dry.
Q: Do you think a good What are the most valuable qualities of the CTO?
A :1, Broad technical perspective, so that advanced technology to solve practical problems;2, familiar with the field of business, according to the actual situation in the field to determine the system architecture and system capacity;3 , team management ability, build Team talent echelon, build a technical team.
Q: Do you think there is the best programming language in the world? If so, what language is it?
A: There is no best, only the most suitable. Any language is to solve a problem in one aspect, so it is meaningless or bad.
Q: What are the most favorite or discussed designers at work?
A: There is product thinking, able to work with the Product manager to confirm the interactive details and even the product direction of the designer.
Q: If Java Software Engineer 3 advice, what would you write?
A :1, pay attention to the basic knowledge (algorithm, operating system, network, etc.) 2, broaden the technical field of vision. Go to the technology salon to see how other people's cool is blowing, pay more attention to the open source project of Interest 3, protect the cervical spine and lumbar spine (⊙o⊙) ...
Q: As a software engineer for 8 years, what is your position on yourself now, and what kind of expectations do you have for your next job?
A :1, at present, my position is an architect or a team leader;2, for the next job, It is either a screw in a large company with a strong technical atmosphere and a high concurrent platform, or a leader in a promising start-up company;3, the company stage preferably in the B-round or later; 4 . Industry in addition to the game, the others are OK.
Q: How did you study at that time?
A: Architect is a challenging career, the breadth and breadth of knowledge often determines an architect's architectural ability, so at this point I agree with your way of learning, is to read a large number of technical books, but I hope you do not limited to software-related books, often bubble technology forum, on the one hand can make friends, On the one hand can increase their knowledge, can also join a technical blog, you can add an architecture group communication.
PS: Recommend a Java Architecture AC Group: 788692365
Q: Do you think What does the Java architect know?
A : Beginner Java Programmer's Center of gravity in writing code, using the framework--Intermediate Java Programmer Center of gravity in writing code and framework, Advanced Java Programmer Technical Research, performance tuning--architect to solve business and technical issues
the important point for an intermediate back-end programmer to raise pay is:
1. Project experience: payment, notification, IM, SMS and other public modules to achieve fast.
2. Code Quality: Abstract encapsulation, log specification, release process, quick positioning.
3. Performance optimization: server memory, hard disk, data growth, bandwidth, the most performance-consuming place in the system, what services a request needs to invoke, how long each time the db is accessed.
4. Architecture capabilities: Distributed, load-balanced, read-write separation.
5. Selection Ability: jms,soa/sca/micro-service, Mongodb/redis/memcache,java/go/nodejs and so on.
6. Management capacity: Team technology sharing organization, Project risk control, task and work assignment
7. Requirements Review Ability: Give feedback suggestions quickly, how long it takes to complete, technical risk points where, there is no time spent long, but not important needs.
8.Geek Ability: A special depth of research on a technical point, such as Nginx configuration, design, architecture. Elasticsearch's design, advantages.
Q: How did you learn before? Is there a Java Advanced learning route?
A: I've planned a few system diagrams to get a look.
Topics in Distributed architecture
Team Collaboration efficiency
Micro-Service Architecture topics
Performance optimization
SOURCE Analysis
PS: Get HD pictures plus Architecture Group: 788692365
Tanabata Come, come to extract your 520 advertising fund!!!
From the ordinary Java programmer to the Ali architect, he spent six years