Some views on project management

Preface

​ Having worked for five years, I have witnessed our growth from a small team of five or six people to a large team of more than 40 people. Looking back on my work over the past few years, I am very happy. I occasionally turn to the photos of my previous work and I feel happy inside. I think I am still a lucky person. I found a job that I like, and found a group of people I like to work with. We are constantly growing and getting new results.

​ During the continuous growth of the team, I have a lot of good experience. I want to talk about project management this time. I chose this topic first because the company is currently implementing a new project management system. The project management method we used has been abandoned. I have used both of these management systems. I can make a comparison.

status quo

​ Talking about project management, I think I need to describe the business processes in the group first. After all, different business processes may require different project management methods.

​ Our team is responsible for the business of the mall. At present, the main framework of the mall has been improved, and our demand side comes from the product.

​ Students who know the mall should know that the business of the mall needs rapid iteration , so we may have 30 or 40 projects in parallel every week, which can be regarded as one project. The project usually takes 1 to 2 months from development to launch.

​ Every week, we will meet with the product team at the designated time to check the project progress and project priority, and determine the plan for the next week.

​ This is our current status quo.

Three systems

No management

​ When we only had five or six people, almost all projects were set deadlines, the product said: I will use it that day.

​ We can see the rapid development of the business, we feel full of energy, we are full of enthusiasm, we don't need project management, we roll up our sleeves and work hard, and then we are done.

​ Of course, we don’t have no management at all, we still do some scheduling and related planning, but it’s a bit crude, generally like this:
Insert picture description here
Insert picture description here

​ An email contains the time point of the project and the specific content breakdown. At that time, there were few R&D projects, few projects, and few product managers. Most of the students were of high quality and level. Generally, they were able to complete the tasks as planned, so this management plan was feasible at that time.

​ Now think about it. At that time, the wheels were really spinning, and a lot of things that others thought were impossible were accomplished, but no one was tired. Everyone was very happy.

​ This is the first set of project management system we used during the brutal business growth period-no management

Self-built project management system

​ With the increase in business, product managers and R&D students continue to expand, resulting in too many projects, and the above methods can no longer satisfy management. There are mainly the following reasons

  1. Whether it is product or R&D, you need a location where you can view all current projects , so that you can control resources and planning
  2. Projects have different statuses, you need to check which project has not been processed for a long time or whether it is risky
  3. The person in charge of R&D needs to know the usage of R&D resources

​ At first I wanted to make a set by myself, but there were many projects, and the leaders felt that it was unnecessary. At least a product manager and a front-end were needed for this matter, so I didn't do it. Now think about it. Fortunately, I didn't do it at the time. I thought it should be easier to build a project management system. It was completely arrogant. It's not that the project management system will be technically complicated, but whether the system can really meet everyone's needs. At that time, the scale of the business, the number of businesses, and the various things encountered in the project were relatively small, and things made on this knowledge basis may not be good things.

​ Later, I investigated some of the existing management tools, and they were more complicated to use. In the end, we used a relatively simple solution to solve this problem. Use TB

TB

First, we determine a good project status are: line up demand, needs assessment, technology assessment, flighting, development, testing, on-line, it has been on-line, suspended or abandoned. There will be a corresponding item list in each state. Product and R&D together promote the continuous change of project status.
Insert picture description here

​ For each of the project details, the configuration items are as follows

  • Project manager

  • Project start time and end time

  • project progress

  • Project coverage area: domestic/overseas

  • Product line: which business party proposes the demand

  • Milestones: key time points, start development time, test time, launch time

  • Requester

  • Product owner

  • Head of R&D

  • Test leader

  • Estimated value

  • wiki link

  • Remarks

​ Because there is a weekly meeting with the product every week, the day before the weekly meeting, the project leader will update the progress and make notes if there are risks.

​ TB has the advantage that the search is very flexible, so you can easily filter out the items you care about. We managed the project by using TB.

Normalization

​ Of course, TB alone is not enough. Another thing we do is to standardize the project requirements. Every project needs to have

  • Requirements document: contains requirements details and prototypes of the product

  • Technical documentation: If the project is complex, the technical documentation needs to include technical details such as architecture and api, and the documentation needs to be reviewed by various technical parties

  • Schedule document: an extremely important part, generally including the following

Insert picture description here

  • Go online and roll back documents

​ These documents will be placed on TB's wiki link configuration item for everyone to view.

​ When the project is tested, the test content will be filled in the test system, and the test students will also be demonstrated to prevent the R&D project from being unusable. Of course, R&D students will also test their test cases together.

​ If there is a risk of postponement and launch of the project, you need to communicate with the product in advance. If the risk cannot be avoided, you need to have a meeting with all personnel to re-formulate the plan and determine a new time point, and send an extension email .

​ After the project is online, you can review it based on the project implementation. In this way, we continuously optimize our management.

​ Personally, I prefer this management method.

  • The first is that the detailed information of a single project is very easy to obtain, and the information of many projects is also clear at a glance.

  • Secondly, this approach is tight but loose, that is, all projects are gathered into a stream, but it also allows developers to make timely adjustments when they encounter problems.

  • The third point is that the cost of maintaining the project is very low, and updating once a week can ensure that all parties have the same view on the project

​ Of course, this also has its shortcomings. The shortcoming is that the workload of each R&D student cannot be quantified. The direct leader may know the approximate, but cannot express it in numbers. This will lead to lack of basis in matters such as promotion and rating.

Self-developed project management system

​ This year, the department started to develop its own project management system. The disassembled content is entered in the project. After completing a small item, the status of the small item needs to be updated. In this way, the self-developed system can view everyone's working hours and working conditions.

​ Because this system is still under construction, there are some areas that I feel can be improved, mainly as follows

  1. It is troublesome to fill in the split small items. In the past, we only needed to write a scheduling document, and the scheduling document can easily see the workload of each group. Now it is necessary to write the scheduling document first, and then fill in the small items in the scheduling document into the system, which requires multiple times of man-hours. The function of filling in small items can be made more intuitive, and the display content can be clearly displayed.
  2. Update trouble. After each small item is completed, if it is not updated, the entire project progress will not be updated, so it needs to be updated in time after completing a small item. If you forget, there will be problems in displaying the progress. This can be solved by email reminders.
  3. Trouble finding items. If you want to find the items you care about, it is difficult to filter, you can sort out the item attributes and optimize the item search function.
  4. Trouble viewing milestones. This management system lacks a location where milestones are clearly displayed, so finding milestones usually requires viewing the scheduling documents.
  5. Project changes are missing. At present, there is only normal process management. If the project is at risk, there is no place for this kind of change operation.
  6. Difficulty in assigning points. Each project has points. After the project is completed, participants need to score each student participating in the project to score these points. This is a test of human nature and how familiar with the work of other people.
  7. Some minor changes cannot be reflected in the system, such as fixing bugs, tracing problems, answering questions, etc.

​ This system has an advantage. Regardless of whether the data is accurate or not, it does energize everyone's workload. You can view everyone's working hours and see the points earned by everyone. I hope this system can get better and better.

​ So the project management system is still very difficult to establish. It needs to be easy to fill in, easy to view, easy to update, plus the more humane part of calculating each person's contribution, which will test the wisdom of products and research and development.

to sum up

​ Project management is a must after all. Everyone can feel safe and control things better only by seeing everything in operation. But what is the original intention of project management? I think the most fundamental thing is to make the business develop better and faster.

​ When we didn't use any project management before, why could we complete so many challenges? Does it contain more important things?

​ I hope this article can help you a lot. If you have any other ideas, you are welcome to give feedback.

At last

If you like my article, you can follow my public account (Programmer Mala Tang)

Review of previous articles:

  1. Some views on project management
  2. Current limit realization 1
  3. Some thoughts on product managers
  4. Redis implements distributed locks
  5. Golang source code bug tracking
  6. The realization principle of transaction atomicity, consistency and durability
  7. How to exercise your memory
  8. Detailed explanation of CDN request process
  9. Thoughts on the career development of programmers
  10. The history of blog service being crushed
  11. Common caching techniques
  12. How to efficiently connect with third-party payment
  13. Gin framework concise version
  14. Thinking about code review
  15. A brief analysis of InnoDB locks and transactions
  16. Markdown editor recommendation-typora

Guess you like

Origin blog.csdn.net/shida219/article/details/107597876