First, write first

My career in JINGdong is coming to an end. In retrospect, JINGdong has witnessed rapid development and changes in the past three years or so, from the time when I joined the company in 2016 to the time when I left the company at the beginning of this year. I have also grown from a junior background developer who just entered the workplace to a team leader with more than ten individuals. In the past few years, I have met a lot of things, met a lot of people, and learned a lot of truths. Both my technical level and management ability have been greatly improved.

I have nothing to do recently, so I would like to summarize my work in the past few years, especially my thoughts and experiences in team management. On the one hand, it is convenient to read in the future, and on the other hand, it is also very good if I can bring you some meaningful references.

Review these years

Under the environment of rapid development and change of JINGdong, it is always full of opportunities and challenges. The whole process of an idea coming up, landing, and developing into a major project is extremely fast. Of course, the premise must be that the idea is worthy and recognized and supported by the leader.

When I joined JINGdong in 2016, I was fortunate to join a project team with rapid expansion of business coverage, high attention from the leadership, and high growth and great potential of all the team members. Fortunately, when I joined the project, after several tests of e-commerce promotion, the whole project was gradually becoming stable and was at a critical stage of rapidly expanding business coverage and rapid growth of system traffic. In this critical stage, the most important thing, besides ensuring the normal promotion of business requirements, is a series of self-research requirements such as system architecture optimization and upgrading, function decoupling of different business fields, low-level data optimization and independence. In order to ensure that the system still has excellent performance and high stability in the case of rapid growth of traffic, the original two or three systems were split, reconstructed and upgraded from aspects of architecture optimization, focus, business coverage and business nature. It has gradually evolved into a “large system” composed of building system, rendering system, data system, internationalization and many other subsystems. I had the honor to participate in this project, which gave me a clear and profound understanding of how to build an e-commerce background system with hundreds of millions of traffic, and also laid a solid foundation for me to lead the team independently later.

The years at JD can be clearly divided into two phases. In the first year, I mainly participated in the development of many business requirements and system architecture optimization and other self-developed requirements, and gained a lot in system architecture design and optimization. Later, I began to lead the team slowly, and then I had the experience and experience of team management that I want to focus on today.

Three, team management experience and experience

Since the project I led was a relatively independent new business in the department, I was basically in direct charge of most things in the team. From new recruitment, training to business needs follow-up, and e-commerce to promote the preparation, etc., basically do everything personally. In this process, I deeply realized that in the environment driven and oriented by business needs, reasonable allocation of development tasks according to team members’ technical level, technical points they are good at, and previous project experience, etc., and ensuring that business requirements are completed on time and with quality and quantity are only the most basic requirements of a qualified team leader. In addition, you also need to consider the culture of the team, the improvement of the team’s technical level, the stability of the team, how to do well in the communication and other aspects. Along the way, STEPPED on a lot of pits, also learned a lot of knowledge, for the management team also have a lot of their own experience, I will talk about what I think is more important.

1. Team culture sounds lame, but it’s really important

I read a sentence that goes like this: For an enterprise, what determines the short term is skill, the medium term is strategy, and the long term is culture. I think the same is true for a team. Almost every enterprise has its own unique corporate culture, for each team, should also have its own team culture. Team culture, it sounds like a big deal, but in fact, we can call it team atmosphere. In my opinion, the quality of a team atmosphere is closely related to team culture. It can even be understood that team culture is the intrinsic nature while team atmosphere is the external performance.

What kind of team culture is a good culture? In my opinion, it is not important whether the team culture is unique or not, but two aspects are important. On the one hand, the team culture should be recognized by most people in the team. For example, a team advocates that if the balance between family life and work is not balanced, you can choose to divorce. In my opinion, such a team culture is not a good culture, even though no one is against it on the surface, most people do not approve of it in their hearts. On the other hand, the culture can be described as abstract, but there must be concrete examples to refer to or concrete implementation or implementation. Those cultures that can only be thought and talked about, but cannot be put into practice, are rather a bit of false suspicion, and the positive effect is not significant. For example: a team to promote, we should have passion, to struggle, to have the courage to devote their youth to the future of the company, these slogans are ok, Shouting is really exciting. But what about the excitement? Take a moment to think about it. What makes it passionate? How to do it is a struggle? How to dedicate your youth to your company’s future? This is very empty, in addition to Shouting when the passion is surging, the real effect is not much.

2. Do a good job on the upper level, refuse to report

As a manager, especially at the bottom of the pyramid, it is very important to do a good job on the top. You should let your team members know clearly, on the one hand, you will be timely known to everyone about the things conveyed by the top leadership, before you officially known, try not to discuss hearsay news among the team members; On the other hand, you will give truthful feedback to the top leaders on the efforts, efforts, achievements and personal demands of each team member before selection or other appropriate opportunities, and never bury their voices. Let oneself become a link between the preceding and the following, the upper through the middle of the bridge, so that both sides can timely smooth exchange of information, of course, appropriate filtering, processing is also very necessary.

Under such a general premise, I found in practice that it is relatively easy to convey the news from the top leaders to the team members. You can communicate in various ways, such as morning meeting, weekly meeting and one-on-one private chat. However, to synchronize the feedback information of the group members to the leader at the right time, it is necessary to deal with it according to the timing, specific content, leadership style and other factors. Generally speaking, there are a large number of employees at the bottom who belong to the top leaders, and the leaders also have a lot of things to deal with. If every member of your team gives feedback on everything, it will inevitably cause harassment to the leaders. However, if you don’t give feedback at all, you haven’t done a good job on this point.

Take how to feedback the achievements of the team members as an example: If there is outstanding performance or strong data evidence, you can directly copy to the superior leaders and students in the group, and add your recognition and encouragement to the achievements of the team members. However, this kind of thing is not much, we usually work more ordinary business needs, self-research needs, which we often laugh at “add, delete, change and check”, then this kind of work should be summed up or feedback? I generally encourage team members to write monthly, quarterly and annual summaries, etc. It is particularly important to note that such summaries must be taken seriously and written carefully. How to let everyone treat seriously, in fact, there are many methods, for example: you can find a time to let everyone talk about their own summary, summary to cc all the people in the group, the leader to do a lead role and so on, I will not expand to say.

When you put these kinds of summaries into practice, you will find that they are very powerful and have many uses. If team members a lot, as a team leader at the end of the month, it’s hard to do very clearly understand what everyone did this month, or even for group members themselves, also what is likely to be done to yourself this month is very fuzzy, the monthly summary is very helpful, in addition, you can also sent to the superior leadership and team members according to qualification. Quarterly and annual summaries can be made into PPT reports by team members as far as possible. On the one hand, it can exercise team members’ summarizing, expression and communication skills. On the other hand, you can also invite superior leaders to attend, or you can choose the time before performance evaluation, promotion and salary evaluation, which will bring many benefits and convenience. As we all know, research and development is usually a lot of overtime, often summary can clearly let yourself, colleagues, leaders know what you have done valuable and meaningful things.

In fact, do a good job of the above mentioned points, do a good job of the upper level, there is no report. However, this point can be emphasized again with the team members.

3. Focus on fostering a sense of belonging, responsibility and initiative

To be honest, although we don’t like to admit it, selfishness is human nature. It’s hard to talk about responsibility, let alone initiative, when it’s not your own. Therefore, we should emphasize the cultivation of a sense of ownership, that is, the cultivation of a sense of belonging, which is the premise and basis of the latter two.

So how do you cultivate a sense of belonging, a sense of ownership? You can divide the system, business scope and other factors into the responsibility of the designated person according to the interests of team members, previous project experience and other factors, and clarify the reward and punishment mechanism. To clearly convey an idea, that is, this thing is yours, good performance evaluation, promotion, salary will be prioritized, bad, if anything happens, you will be responsible, I will be responsible.

With a sense of belonging comes a sense of responsibility, of course, as long as he is a responsible person. As for initiative, it needs to be encouraged and nurtured slowly. This initiative, in a nutshell, is the initiative to plan or do something meaningful and helpful for his part of the future, in addition to your assigned task.

4. Set up the backup mechanism

The backup mechanism, also known as the mutual backup mechanism, is to try to ensure that everyone in a group has one or more backups, especially those who play important roles in the group. To put it bluntly, try to make everyone on your team replaceable, including yourself. Try to get to a point where the group and the business must be able to function if one day someone is no longer part of the group.

Why do you do that? For one thing, none of us can be on call 24/7, so if, at some point in time, a piece of online business goes wrong and only one person is familiar with it, who happens to be out of the company and can’t support it remotely, it becomes a very difficult problem to deal with. However, if this person is in addition to one or more people who are familiar with the business, the situation is different. Secondly, we all know that Internet employees frequently change jobs. If someone leaves one day and only he is familiar with this business, it will inevitably lead to higher handover costs and more hidden dangers after the handover. Therefore, in fact, many companies require middle and senior managers to train one or more people who can take over their work within a specified period of time after taking office. For the lowest level of small teams, the same is true. Only the best efforts to implement the backup mechanism can ensure the stability of the team and business to the greatest extent.

5. Be flexible with “7*24”, not rigid with “996”

Talking about “996”, in fact, there are a lot of Internet companies are mandatory regulation of the work time, mandatory everyone to implement “996”. Since I joined JD.com, I have not encountered a situation where “996” has been mandatory, at least not in my department. Occasionally, when the project is busy, “995” still have, weekends or holidays to work overtime.

Compared with “996”, I prefer and advocate flexible “7*24”. It does not mean that everyone should work 24 hours a day, 7 days a week, but that no matter what time, whether it is working day or rest day, day or night, if the company needs your support, for example: For urgent online issues, urgent requirements development, etc., you can be at work or at home for remote support whenever it’s convenient for you.

As for overtime work, I generally advocate: when there are many things to do, we should work hard and work more. When things are light, people go home earlier, rest more and recharge their energy rather than working overtime at the office. If there are special circumstances on the rest day, we need to sacrifice our rest time to support, we can find some appropriate time to ask for a leave to compensate. In fact, the only purpose is to keep people enthusiastic, so that they can actively deal with online problems in a timely manner, rather than using the fixed “996” to make people tired, so that when problems occur on the rest day, no one is willing to support the solution. After all, for e-commerce products, rest days are also the time of high user usage, so it is very important to ensure good user experience.

6. Process, standard and stability above all else

To ensure team stability and business stability, the team must develop its own processes and specifications. Everything should be in accordance with the specified process, such as online function must be in accordance with the test, gray, full and other processes, any step is not allowed to skip; Everything has to be done according to specifications, such as documentation in a uniform format, not arbitrary. It should be clearly recognized that many online accidents are caused by the failure of the implementor to follow the procedures and specifications, or if the implementor had followed the procedures and specifications, the accidents could have been avoided, or at least the negative impact of the accidents could have been reduced.

7. Respect technical depth, not blindly respect “new technology”

As a developer, technology is naturally the foundation of everyone’s life. Many developers like to study new cutting-edge technologies. Not that this is bad, but it is more important to learn and master existing technologies in depth that are commonly used in their work. On the one hand, we should clearly recognize that many online problems are caused by a poor understanding of existing technologies or inadequate usage. On the other hand, the stability of new technology is often to be verified. It is ok to play with it, but it is almost impossible to use it in important projects. If something goes wrong, the consequences will be very serious. Remember, never joke about the stability of your project.

8. Combine technology growth with business demand, product demand with self-research demand

A lot of people complain that I just do “add, delete, change and check” at ordinary times, without technical content, not to mention what technical level improvement. In my opinion, this is not always the case. Many business requirements still require architectural design and detail control. Technology and business combined, technology has value, if only technology, it has become an armchair strategist.

In addition, as the group leader, we must control the progress and proportion of product requirements, and try to set aside some time to do self-research requirements. After all, with more and more functions in the system, reconstruction and optimization is often difficult to avoid, especially those urgent needs are likely to adopt a very violent design and development, it is necessary to fill the pit as soon as possible, or endless future trouble.

Four, team management tips

1. Do a good job in training new employees

Whether you are a veteran or a fresh graduate, you will feel like a blank SLATE at the beginning of your career. What kind of training he has experienced greatly affects his attitude and way of working in the company in the future. On the other hand, the quality of the training and whether it is standardized, also directly affect the first impression of the company. Therefore, new training is very important, to be careful, I think the following is a few more important points:

  • Process training should take precedence over technical training: if the technical level is not good, you can learn it slowly. However, procedures and norms must be trained and guided in the first place. Once a bad habit is formed, it is difficult to change it later. Many of the problems caused by newcomers are caused by the operation not following the process and not following the norms.
  • Old potholes are likely to be trodden by new ones: Each team should compile a “pothole handbook”, documenting previous potholes, online problems and their analysis. Then, when each new employee comes on board, familiarize themselves with these common pits several times in advance, not remembering them all, but at least creating an impression in your mind, which can greatly reduce the chances of stepping on similar pits. One person stepped on the pit, try to let the whole team of people do not fall into the pit.
  • Make clear the order and schedule for the new person to get familiar with the system, technology, etc. : Never say to the new person, we need to use A, B, C, D, etc., well, you see for yourself. It is best to make a reasonable familiarizing order and schedule, clear every day familiar with what, a few days familiar. You know, the right sequence can really help newcomers improve efficiency and speed up the process. Also, don’t forget that the task and its deadline are the primary productivity.
  • One-to-one tutorial system: try not to talk to newcomers, everyone in the group is very nice, you can ask anyone if you have any questions. Try to arrange a one-on-one tutor, which works better.
  • Handbook for beginners: Each team should try to have a handbook for beginners that can be maintained and edited together. So the same thing need not say N times with N new appointments. we can browse by ourselves and ask your tutor again if there is a problem. Greatly saved everyone’s precious time, but also convenient for the future forgotten when referring to.

2. Skillfully use the theme pool to share the team’s technology

The quality of team technology sharing has a great relationship with the choice of sharing topics. So, what is a good topic to share? In my opinion, the most important point is that the topic should be related to the work as much as possible. It can be an in-depth study of the technical points used in daily life, or a horizontal comparison of similar technologies. Can maintain a technology sharing topic pool, everyone can want to know the question points, technology points to the pool, the group leader to do unified check and filtering, everyone to share, must be in the filtered pool. In this way, there is not only a certain degree of flexibility, but also the scope of theme selection can be controlled to a certain extent to ensure that the theme is what everyone wants to know and understand, which is meaningful for everyone’s work and technical improvement.

3. Establish a timeline record to help troubleshoot online problems

When an online problem occurs, the first priority must be to find the cause of the problem and fix it as quickly as possible. So, how to quickly locate the cause of the problem? After summarizing and analyzing many online questions, I found a pattern. That is, online problems can be roughly divided into two categories:

  • Active problems: the problems caused by the active operation of the research and development personnel, I call the active problems, that is, the problems caused by the online function, modify the configuration, modify the switch state.
  • Passive problems: problems not caused by the active operation of developers, I call passive problems, that is, problems caused by the surge of user visits, normal operation of non-developers, etc.

And no matter what type of question you ask, it’s very time dependent. For example, if you have just finished launching your system and you have an online problem that happens to coincide with your launch date, there is a high probability that it was caused by the launch. Another example is the double Eleven Rush that we pay great attention to every year. Every time it reaches 0 o ‘clock, the flow of each system will inevitably reach a peak, which is also the time when problems are most likely to occur. So how do you deal with these two types of problems?

Establish time line records for active problems. Record every function launch, configuration change, switch status change within the team that may affect the online system status. Record content you can simply write down the operation time point and operation content overview, we are responsible for maintenance and editing. This way, once an online problem is found, the first time to see if there is any active action by the developer near the time the problem occurred. If there is any, it is highly likely to be related to these operations, which can quickly locate the cause of the problem.

For passive problems, because we can’t control the behavior of users, non-developers, we have to rely on prediction and rehearsal. For example, we can carry out drills and pressure tests according to the predicted flow before November 11. For example, if the system runs well, suddenly there is an online problem, and the time of the problem can not find the corresponding active operation on the timeline, then you can pay attention to the user access at the time point, whether there is a fluctuation in the system volume, whether it is caused by the operation of non-R&D personnel.

Five, thank you

At first, I just wanted to summarize and record, but I didn’t expect to write so much. To be honest, I have not been in management for a long time, and SOME ideas have not been thoroughly put into practice. It is inevitable that there will be some bias and errors. Welcome everyone to exchange and correct me at any time.

I would like to extend my heartfelt thanks to the leaders, colleagues and friends along the way for the training and growth I have gained in jingdong in the past three years. Everyone is very excellent, whether in work or life, they give me a lot of help and guidance, let me benefit a lot. Thank everyone, every thing and every unforgettable moment in the past three years.