When high school, full of brains is college entrance examination. The information on the hometown is very closed, but it is often heard that the computer is the future hotspot. Although it has finally had a computer course when he was three times, it allowed me to understand the wonderful programming of computer programming, which also deepened my curios of my computer. When filling in volunteers, the first professional has no exception is "computer software". The second major is "Applied Mathematics" (listening to the teacher, applying mathematics is the most closest computer professional). I like mathematics, more interested is the computer, because the computer is magical and wonderful for my computer. The play of the college entrance examination makes me unable to achieve the aspiration of Peking University, I eventually entered the application mathematics major in Sun Yat-sen University. It is still a long time, but it is good to learn mathematics, and it is related to the computer.
However, when entering college, see, hearing and feeling, there is no ideal ideal. The most impressive sentence is: Applying mathematics maps have their name, in fact, can't learn, learning mathematics is not enough basic mathematics professional, learning computer is far away from CS. Different versions of experience and experience make themselves for a few days. However, the college leaders repeatedly emphasized the most outstanding people of the computer, they were "self-directed role", and they would be awake, in fact, as long as they worked hard and active, everything can be dominated by themselves.
Although I have experienced a blow to the "base class" when I first entered the college, I quickly voiced. I have organized some of the teachers' sisters to determine the goal of the university stage: I have worked hard to learn expertise in the first two years (I always believe that mathematics foundation is very important), and use the spare time to learn computer knowledge, from the third The year begins to find practical opportunities to accumulate computer project experience. Compared to those who have the opportunity to learn computer from small, I am really belonging to the "late generation" level, but I believe that through my own efforts, I will definitely make up for the foundation of previous falls.
Fortunately, most of our dormitors are "computer fans". Under their influence, I am more interested in computer programming, and I have gained practical opportunities in the big summer vacation. Through the introduction of Histein, I entered the computing center's raincby studio (later turned to ERP laboratory) learning and practice. In that time, I have participated in the development and implementation of many enterprise applications (deployment, training), starting from then, I learned how to write a variety of applets with BASIC, PASCAL, learn how to use VB, Delphi Write a database application, from Access to SQL Server, I gradually understand the role of the database. Although the program and the design of the program and the design of the design, the user interface is still tender, but constantly obtaining the customer's recognition, this late-year programming personnel have a sense of accomplishment, and I have made me more interested in the development of enterprises. Perhaps because of the start of my contact programming is the development of enterprise applications (database applications), I lock my target in the field of enterprise applications. The students around you are very interested in the development of game development, and some like to write a variety of system tools and even a small virus, and I deeply "love" the company's application development. Many people dismissed the company's application development. They think that it is nothing more than a variety of RAD tools to drag the control, and fill in the simple line of code on the code frame, there is no algorithm, without any technical content. I also produced similar ideas when I started to contact the database application system development. But communicating with the customer made me a sense of responsibility, I at the time is: Although I do is simple, I can bring convenience to customers, it is this simple idea to stick me, and can Repropet the development of enterprises. As you have learned more and more, the level is constantly improving, I found that the company app is not a simple interface code, there are too many things involved. How can I make the app that makes the app better meet the real needs of the customer? How to make my development work more efficient? How to make the development work completed on time? ... a series of questions have been swimming in the mind, the more problems have learned for software development, the more problems in your mind.
My people 's work is a sales software, which is I developed independently of a software company. At that time, the software company's manager was my customers, and he proposed a demand (according to his customer needs), I developed software that meets the requirements based on demand. At the time of the task, it was the beginning of the two summer vacation. I remember that summer vacation I bought the first computer (more than 4,000 yuan) with my own scholarship and tutor. Then I started my development process. Before, I have developed a clothing rental system for a clothing leasing company, but because of the fact that various reasons are not used by users (it is said to use computer systems too much trouble, huh, this, this, store software is my first Works used by customers. The experience of developing the clothing lease system makes me learn the use of database knowledge and Delphi tools, and I know some knowledge of software engineering. I know what is demand analysis, what is the system design, what is development, test and implementation. Of course, the professional course study task is still relatively heavy, and the software engineering study is just self-study, so it is not enough system, knowing the comparison surface, but it will also draw a gourd. At that time, demand analysis was still more detailed, although there was no formal demand analysis specification manual, but the needs of customers were more detailed. When I came to face with the customer, I saw the customer's recognition of the system. I feel very great, I finally realized the true meaning of "science and technology is the first productive", huh, huh. The development of the entire transfer memory software (including database structure design, interface design and code writing) is still quite big, and a developer who has no experience has been developed in two months. It is really difficult to live, especially Some business logic, such as advanced first, and then first waiting for the settlement method, I am very headache at the time. During that time, I have experienced a variety of developers' life: in order to find a problem; in order to complete the work in the hands of the work, I've been happy to solve a problem; in order to get the manager's appreciation US nourish a while; ... development work is hard, but harvest is very large. Software engineering knowledge learned is abstract, but by developing this inventory software, I have deepened the understanding of the various phases of software engineering, although it is still very beautiful, and maybe it is still very sad, but the things experienced let me I have accumulated a lot of experience, I know how to better communicate with customers, project managers; I realize the importance of standardization development and various documents (insisting on writing and developing documents, this is also submitted I have a lot of trouble, after the system is delivered, I rarely receive the manager's harassment phone, huh, huh). At that time, the manager said that I was very impressed, and I have been accompanying me: the development app is not the ideal code to write the ideal in the house, but to keep the communications with the user, always let your own development Direction advancement. There is no value for programs that you think about it. From the beginning of the improvement of your own software, I will aim at the field of enterprise application development. Although the understanding of the understanding is relatively vague, there is no systematic structure in the brain, the knowledge system is still very imperfect, lacks support for the basic knowledge of relevant computer, but I feel that information technology will revolutionize in the field of enterprise applications, and absolutely More than database applications are applied.
As participating projects are increasing, the scope is getting more and more wide, and the knowledge learned is increasing, and the understanding of information technology is also getting deeper. The success of developing the storage software made me get the appreciation of a professor of the calculation center, so I have also got an opportunity to join the formal project group. The development of the first system is completely "personal hero" behavior, although I also tried to implement the idea of software engineering, but absolute experience is less than teamwork, in addition to communicating with customers and managers. So I heard the news that can join the project group, my mood is very excited, and I just started the beginning, and I have initially realized my own goal, advancement to a higher level. During the Rainhouse Studio study, I participated in the project focused on enterprise MIS and some web applications. In a Windows environment, Delphi uses Delphi as a development tool, MS SQL Server is a background database, and the information management system for various C / S structures is developed. At that time, I was a developer, mainly responsible for some design (database structure design, system frame design, front-end user interface) and Coding work. Since the members of the project group is not a lot, it is part-time job, sometimes several projects are in the body, and the entity will go to a programmer's hardship, but they have indeed learned a lot of Programming Skills, which has accumulated a lot of Programmer experience. At the same time as busy handing, I realized the importance of computer basic knowledge, the approach to computer software professional courses, and carefully study others think that boring OO, Data Structure, Software Engineering, etc. foundation. Although I can't fully remember the knowledge of school, some ideas, algorithms and techniques learned, affect my work.
Big two, the three two years is very difficult, study tasks are heavy, I learn every mathematics, I know that the mathematics courses of the undergraduate head are very important; and I am also crazy to learn computer knowledge, and by doing projects Understand the knowledge learned. In that two years, I feel that my progress is very big. In addition, I often hear some contrast, those who like the underlying programming work are advise me to learn some more, lower-level knowledge (they think that I am so smart to do so "simple" application development, really too Wasted), I have also moved, but in the online forum, I discussed with "prawn" on the online forum. At the same time, I often find some experienced programmers in the company. I firmly, I firm my route, small Enterprise application development seems to have no complicated underground programming related to Windows API, but truly guarantees that time guarantees quality to develop a system that meets business needs, it is very difficult, this is a very There is a challenging work, but it is not a common. IT develops to now, many technologies have been very mature, we should stand on the shoulders of the former, and use advanced technology to help companies increase productivity. As participating projects are getting bigger and more complicated, I found that even if the company's application development work is not as simple as many people think, there is more and more things that need to consider, no longer just realize the requirements. The function is OK, you need to consider integration with existing resources (including hardware and software resources), and some factors in small systems have become increasingly determining the success of a project, such as performance, maintenance. Sex, adaptability, etc. At that time, when developing software, as long as a third-party control implemented the required function, it was unusually excited. Later, it was no longer so easy, and it is necessary to consider the architecture taken by the system (C / S? B) / S? Both combined), development platform, database platform, but also expensive to consider whether this design or implementation method affects system speed or performance, whether it can be reused, whether it is easy to modify, and so on. Later, it really realized that the unreasonable system of the overall structure will lead to a variety of problems. From the user's point of view, it will generate problems such as repetitions; from the perspective of the system, it will lead to fatal speed and performance issues. The latter is likely to cause the failure of the project, and a system that often leads to the server or client dead machine allows users to accept it? In the third year, in the past two or two years, some MIS, MRPII and ERP projects, some can be called successful projects, but most of them are very difficult to succeed (whether the progress is still quality and the ideal It is far away). The reason is many aspects, mainly below the following: 1. Project management confusion, no standardized project management causes low code quality, progress continuous delay; 2. Analysis personnel are not paying attention to demand analysis, without good understanding of customer real needs The lack of necessary knowledge on the relevant industry, leading to the final system to meet the customer's requirements, which also makes a considerable amount of small and medium-sized enterprises have doubts about the information system; 3. The computer knowledge of system designers is not comprehensive, do not understand The latest technologies, leading to the system along with the temporary technology and system structure, and neglect the constant repeated development; 4. Developers only consider whether it can be implemented, but not considering how to achieve better implementation, ignore the efficiency, performance, etc. problem.
The 2001 project team has been using the C / S structure into a variety of industries, factory development management systems (MIS, MRPII, ERP), although the system declares that the system is Mrpii, ERP, etc., the Richtha, but in fact the project The members of the group only have a technical background, and there is no management background at all, and there is no experience in the project group, and the so-called MRPII, architect, design, and development of the architect, design, and development. Management, decisions bring help, the only thing you can see is just the system to manage various data, and some data statistics are reported. Each time a project is completed, it is finally able to complete the pleasure, but soon, it will be overwhelmed by the customer's complaint. I have gradually realized that I can't position it again in the level of Programmer, and a good programer, but also to write excellent The code is not available, but you can't provide an excellent system. Programmer can only stay in the system, and the system architect shoulder the heavy responsibility of the entire system architecture, no doubt, architect plays a key role in the success or failure of a project. I realize that the application of information technology in the enterprise is increasingly important, and it is more and more complicated. With the silence of ERP, CRM, DPR, E-ERP, E-Business, etc. are gradually become a hotspot, J2EE, .NET and other new technologies have gradually become a new favorite of programmers. Information technology has been different from the new month. I feel more advanced technology, I should determine the new goal. I am no longer satisfied with an excellent Programmer, and I have determined my goal is to be an excellent system architect, but first, I will try to make myself a good software engineer. At that time, my understanding of architects was that architects were responsible for understanding the business needs of the system, and created a reasonable, perfect system architecture, and architects were also responsible for determining the main technologies through software architectures. Architects require a sound knowledge system, solid technical skills, understand today's popular technologies and products. Summarize the development and life of the big three and two or two years. I feel that I have a certain talent and higher enthusiasm for IT, and I am very interested, plus my solid mathematical foundation, rigorous logic thinking and strong Learning ability, it has been able to better qualify the role of Programmer. But this is not your own goal. After two years of Programming experience, I realized that I should enter the higher level, and should not be satisfied with the status quo. In the second half of the big four, with its own excellent academic performance, I went smoothly to read the master's degree in master's degree, I hope to learn more knowledge and research methods through the graduate stage, learn more, and make yourself improved.