My way of Programming (II) __ Programming

Source: Internet
Author: User
Tags function definition
2001, this year I began to turn to PC software development, and also from a large company to a small company for software development. Remember that small company, I have not yet set up, I was the first employee, the manager only three people, the company's office is a set of three rooms and a hall of the place. In such a small company, the manager is in charge of sales and planning, I am responsible for the design and development of products, both as software development engineers, as well as software testers, but also as software training personnel. To accommodate a variety of roles, I started reading every night to learn a variety of skills. Also at that time, I began to buy one or two books every month, and all the evening to read the book, day up is to write code. During this time, the programming technology improved a lot, such as com,c++ template, the use of STL, also began to use slowly. Also exposed to the most fashionable XML technology at the time, Dom analysis and event-type analysis techniques. Because the main development of network communication tools at that time, so the network research is more in-depth. From TCP to UDP are very familiar with the use of Peer-to-peer technology also need the most advanced, such as breaking the local network firewall technology, there are several kinds. Text communication, voice communication, video communication as many, in order to quickly realize voice communication, but also to study ADPCM coding, RTP protocol. In this year, there are too many technology to learn, all the energy in the study and work.   from 2002 to 2004, from a small company to a large company to develop software in the three years. In that company, the main development of the bank's credit card software. For the bank's software, the need for stability and quality are very high. In this company, software developers should be a lot of, C + + developers have 7 people, testers have 3 people, System analyst 3 people, database design 2 people, web developers 5 people, project Manager 5 people. In the face of these 25-person software development teams, use a new approach to software development. The whole process of software development is based on the project system, that is to say, the project manager is very knowledgeable about the business, after three months to write a detailed function instructions, and then the entire function into several modules. The function definition of the module is very clear, the module function instructions are distributed to the relevant software developers, so that software developers have about three days to design the entire module. For example, when writing a C + + module, software developers need to draw the entire C + + module frame flowchart, and the interface layout clearly described, but also all software developers in front of the project manager of their own design plan and time on the board of the conference room to write out, so that all the people attending the meeting to understand so far. This way, the code plan is set up and all the estimated time is determined. Generate a Gantt chart based on all worker's plans and send the progress map to all relevant developers. Although there are only 3 testers, they all track the entire development process, such as having them write test programs and writeConstructs the test data the program, but also has the massive data test preparation, the exception data test preparation work and so on. Testers can test each function in the interface very carefully, but also need to test the business process, testing the bug is too much, each improvement will be more stable. In these years, learn the importance of project management and testing.   In the spring of 2005 to a considerable software company, in the company, a total of 300 people, just C and C + + developers have 50 people. So many developers, also divided into several groups, each group of 10 people, such as network server groups, client groups, IM client groups, database server groups, the basic component group. Large companies generally divide their work into very thin, such as a VSS version of the management of a person specifically managed, and only this person can release the software version and installation program production. Of course, this person also needs to manage all the developed documents and maintain the integrity of the document as well as the security of the source program, like backing up source programs and documents once a week. Developers more, so the cost of communication is also relatively high, fortunately in this company can use all advanced IM tools, such as QQ,MSN, such as personnel exchanges and communications. Like a 10-person working group, the meeting is often on the QQ or MSN to solve, so save a lot of time, such as to the conference room also need to arrange, in the QQ all the meeting records will be recorded in the history of the Conference records. The use of QQ can allow all employees to communicate with each other, whether it is the project manager, or the boss at any time to communicate, put forward all suggestions, once adopted are prizes. For a large office with more than 100 people, a few people in a day can't hear a word, all of them hear the keyboard. If you do not use QQ such as instant tools, everyone up to say a word, like a street, so for the in-depth thinking of the work of the staff is a very bad working environment, interrupting in-depth work of the mood. This means why programmers can write code quickly in the dead of night. For software development companies, it is important to keep a quiet environment. From this company to learn from the large group of software development, using instant messaging tools to improve efficiency, reduce the cost of communication, increase the technical exchange of software developers, for the whole team of technology improved very quickly.  

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.