He said the most difficult is not the challenges in front of you, these challenges you can overcome, in fact, the most difficult is the sand in your blood, these are your various demons.





This article has been uploaded to my GitHub warehouse, welcome Star:
github.com/JavaKongHaoI also have my personal contact information and you can contact me directly if you have any questions.

Foreplay: Today is December 2nd, a special day, the first working day of December, the last month of 19. Just today, the empty number broke ———— had its first traffic accident, rear-end the female driver. (Fortunately, the brake was timely and the accident was not serious)Copy the code

Ahem… Foreplay over, let’s get down to business…

Face a need correctly

Ask a few more whys: What is the purpose and value behind your need? What’s expected earnings, after doing why can achieve the benefits, you can not directly ask business party, but you also need to ask you, the business side of the goal and do the requirements of whether path can be matched, if the implementation path has logical loopholes or not be the best this demand there would be no need for; Give alternatives: After the above steps, you will find that you actually have to filter a batch of invalid needs a word, and some of the demand may be there is a certain value, but the point is not possible business mentioned effective solutions or cost too much, then you need to think about alternatives, as far as possible through the existing solution or little cost to meet the business party, Indirectly achieve the effect of “rejection”; You cannot say no directly, but you can conditionally say: When you are sure that the demand is OK, but you really cannot spare the time to deal with the matter for the time being, the key point is that we cannot directly reject the business side, which will affect the follow-up cooperation in the long run. In this case, you can say: I accept this requirement, but I may need a longer buffer time or cut some requirements (partially satisfied). Or if the project must be delivered on time, the effect and quality of the project cannot be guaranteed after it goes online, so the business side should make partial trade-offs

Improve the efficiency and quality of development

Do you have to change code for an oral request and then, for some reason, need to change it back? Are you stuck halfway through writing because, once you've got the requirements, you haven't fully understood them and developed the technical solution? Do you spend a lot of time understanding the business because of a thousand people, a thousand and one code styles? Do you have any problems with...Copy the code

There are thousands of situations that affect development efficiency, and the only way to solve them is to standardize the process.

Maybe not all projects support waterfall model, but standardized process, absolutely universal!! !

Embrace code review with gratitude. Newcomers fear code review as much as they fear Error. Code review is a philosophy that not only improves code quality, but also a learning opportunity. He will keep pushing you to do better.

From business first to business and growth win-win shift

Many new people, holding the mentality of going to the company to learn into a company, such a mentality is good? First of all, the enterprise is certainly welcome to have on the staff, but the enterprise is not a welfare institution, recruit you in is to let you to create value, create profits.

In the past, our team advocated business first, business first win, and later found that business is first win, but personal technology growth, precipitation, some lag, then how to achieve business and personal growth win-win?

Bosses have also discussed this, and concluded that learning communication within the team accounts for 70%, and individual initiative accounts for 30%. When you refuse others’ questions with indifference, you close the door on yourself, and everyone takes the initiative to help others succeed and share their new skills, you will gain more.

Do you take the initiative to get some in your spare time? Do you still have a passion for new technology? Is there any precipitation after learning? Is there output in the form of notes, documents, or blogs?

Can think about business assignment and do technical planning, is a very worth exploring, continuously grope for process, suggest more at ordinary times, with the boss team bosses communication and exchanges, they are a n experienced person experienced, can in the depth of thinking and pattern gives a lot of advice, sometimes the communication has a sobering feeling.

Don’t make a wheel

Some time ago, Alibaba acquired Netease Kaola and completed its cross-border e-commerce layout. Ali has a culture that seems to be looming. It tells me that if someone has something nice, he can use it directly (there is nothing wrong with “taking advantage of it”). Kaola.com’s cross-border business is doing well, so there is no need to spend time making another one.

When I first came into contact with the framework, I thought that I must write an awesome framework for the world to use in my life. Looking at others with their own frame, the face shows satisfaction and mysterious slight smile slowly through.

Many friends of technology fanaticism, love source code, and want to do some research and development, make some wheels, but we all know that a mature technology needs time test, need to shoot pit, to a very long cycle to achieve better results.

Whether it’s caching, databases, search, message-oriented middleware, to name a few, there are multiple sets of mature solutions. You can use it based on different service requirements.

If you must, ask yourself a few questions. What problem are you trying to solve? Why do this (no technology available)? What should you do?

Critical and structured thinking

Critical thinking

① What exactly is critical thinking? Critical thinking is the rational and reflective thinking one does when deciding what to believe or do. ② Why critical thinking is needed? In order to better study, more rational and objective to think about problems, solve problems. We receive a lot of information from the outside world every day. We need dialogue and interaction for information and knowledge, and form our own reasonable judgment through screening and screening. And this dialogue, interaction, screening, screening process is a critical thinking process. (3) 3 w model. What is the source of the opinion? Why is this so? Or how?Copy the code

Ps: I think the 3W model is really versatile. I can ask myself what and why and how I do anything.

Finally, never doubt. The only thing you don’t need to doubt is to doubt everything.

Structured thinking

How to abstract a specific goal, or a complete task, from something? ② Objective disassembly (disassembly dimension) quadrant rule, according to the priority to disassemble tasks. Disassemble according to complexity. There are thousands of ways to disassemble tasks. Make a specific analysis of specific business, select the best solution and discuss it. ③ Completion of subitemsCopy the code

Full discussion before decision, resolute implementation after decision.

Height and pattern

If the five senses are the primary judgment of the world’s information, cognition is the higher judgment of the world’s mechanism. If receptors like the five senses change the fundamental aspect of the world (which is, in fact, a fantasy), then cognitive differences can also make us live in different mental worlds.

Vision determines height. Look more, think more, be more curious and ask more why. As time goes by, you will naturally reach a new level.

Many people complain that they are just adding, deleting, revising and checking in their own company. Then why can someone from CRUD go to BAT from a small company? If else, have you ever thought about how to code more elegantly?

If viewed from a normal perspective, a screw is just a screw, but if you step out of the current perspective and look at it from a higher perspective, it is actually part of the aircraft carrier. Your manager is not your boss because he should be more forward-looking than you. He is your boss because he sees things higher, thinks farther, and works deeper than you.

Consciously think one step ahead, one step ahead, one step ahead, one step ahead, one step ahead, one step ahead, one step ahead, one step ahead. For example: learn Redis, why learn this? What can you do with this? Just thinking about relieving database stress is too low. Some people say that “keyboard knock rotten, monthly salary over ten thousand”, without thinking of the code, is dangerous. Still want to think more, from the macro point of view, enhance self knowledge system.

Two books, Biography of Du Yuesheng and Principles, are recommended for improving pattern and viewing problem height.

Focus on soft skill growth

We are technical people, but code is not all we do. Our team is probably only 30 percent

Pd needs to know the requirements and the background of the requirements. Technical communication is required before the development of a requirement. During the development process, we need to communicate with relevant students, and the upstream and downstream progress is not ideal. When problems arise, what should we say externally and what should we do internally?Copy the code

When you find a problem, do you land it the right way? Keep silent and dry, and you will find that you have done well. (It’s terrible not to be a team player)

No matter where you are or what you do, I’m sure you’re not alone. Always have a sense of team, owner awareness, do one thing, think for everyone must not hurt. Technology will take you far, but comprehensive literacy will take you far.

Owner consciousness, time concept, start with the end, closed-loop thinking, maintain awe, nothing more than two things, design first, good at asking questions, empty cup mentality. Do you check and fill any gaps?

The range of soft skills is too wide. I take communication as the main line. Recommend Cognitive Psychology and Introduction to Communication

4. Self-review in time

1. At the same time of requirement iteration, review, summarize, summarize and share problems within the team. Avoid similar problems next time. 2. Whether you can see from small to big. Based on requirements, whether to understand a business and straighten out the upstream and downstream relationship 3. Through a business, whether to fully understand the usage of related technical framework/infrastructure 4. What is wrong with the construction and design of the project? Can make reasonable suggestions for improvement or promote improvement? 5. Team: Is there any deficiency in schedule arrangement and communication and coordination?Copy the code
The reasons for failure are many and varied, and the success stories are all the same. Successful people are successful in three aspects: solving mistakes, replicating mistakes and avoiding mistakes.

Contact me/public number

Space | article [original] [reproduced please contact himself] if there are any errors in this blog, please give criticisms, be obliged!


Like a person to say like, grateful to say thank you; Saying something negative won’t get their attention, it will just push them further away.


This article has been uploaded to my GitHub warehouse, welcome Star:
github.com/JavaKongHaoI also have my personal contact information and you can contact me directly if you have any questions.