[Software Engineering] first job - warm-up!

project content
This work belongs courses Spring 2020 Computer Software Engineering Institute (Roger Ren Jianxin)
Where this requirement in the job The first operational requirements
My aim in this course is Master the software development methodology and a number of technical cooperation with students to develop a good software
This job helped me in terms of what specific goals Summing up the past, a clear future goals
Text of the job as follows

Part I: the computer become attached

Like many students, I origin with computer video games. Set of primary school "Young Computer World" Recommended "StarCraft", from out of control, vision plummeted. I blog in blogger computer and determined to learn English, but I was to understand the story of the game, mimicking game voice and accumulated a lot of vocabulary, and trained an orthodox American accent. Still vividly remember the understanding of "program" is derived from the word "StarCraft" in "Exit Program", the term felt very "big on."

· Why did you choose computer science?

Unfortunately, my childhood passion for the game and did not migrate to the love of your computer. Having said that, I have been amazed at the complex and delicate computer, so it is always occupy a high position in my professional list. Did not want to go to most of the South Department of Physics college entrance examination, he chose to study Beihang computer. Today, I am very grateful to past choices. After nearly three years of study, in addition to "hack into the computer", wrote a great sense of accomplishment large and small program, it is more important is that I gain in this process can be said to be a "general rule" powerful way of thinking --abstraction, as well as to solve their problems with the code tries to be - it brings a lot of fun to my life.

Any problem in computer science can be solved by anther layer of indirection.

This sentence in the learning operating system, compiler theory, when a database ....... is repeatedly mentioned, I think, to my way of thinking had an impact indelible. How to design the interface between the intermediate layer and the hierarchy is a quite particular knowledge, or even study it formally. This dismantling, abstract methodology is very powerful and cool, I believe that in the next software engineering and computer networks to learn, I can deepen their understanding of.

· How do you think your condition? And the ratio of these bloggers do?

I think I'm serious, this pursuit of simplicity is in line with the temperament of the computer. But the blog the I , blog M compared to bloggers, I did not discover the computer as they did from the young age of enthusiasm, and blog C compared to bloggers, I do not have his kind of paranoia firm, thus it lacks some interest-driven exploration process. Blog wheels in M freshman brother tells homemade script engine and was later found in Java using the same details of the operation, this experience will undoubtedly help to strengthen the confidence of related concepts (objects) awareness and self-study. Their experience tells us: real skill at drawing on the computer, to enhance the abilities, skills, ideas are great, and will be able to be reflected in the near future.

· Do you love this major? Your love is like a computer? It is just verbal?

Learn computer, either to obtain improvement in thinking, and can appreciate the music of a technology geek's house; recently many methods, and even let the computer abstract general rules from life phenomena. Hath not love the reason for such a universal machine? ! Today, up and down the structure of the computer has a certain understanding, but also have a program to address some of life problems. As Queen's song "radio ga ga" sing the emotion of a generation of signal noise, I found the computer has become an integral part of my life. Though sometimes courses are oppressive, but the love of the computer and thus will not weaken.

Part II: Learning the computer department

For me, studying computer science at Northern does have the characteristics of an ideal college life: every semester tone when fighting large work day and night bug, optimize, and finally the ladder mechanism are very exciting; os end of the period when few people gathered in persons space-e finishing a semester code, knowledge, and did not forget to care about each other but the "knife" a few times. All these have become the common memories 6 Series.

· What do you think Tucao place for your college life?

Read FutuerxGo students blog , which is deeply profound understanding of undergraduate education, point out problems reading it really refreshing! Overall, I am more satisfied with college life, the only think Tucao low fault rate is part of the experiment course: the self-study, will inevitably step on the pit, while the higher frequency of checkpoints reduce the trial and error testing opportunities. Of course solution should be to gather information and share their own writing tests, but in this mode of experience is not new to the rich, can not grasp in some way in a short time, resulting in some mistakes we can not continue because, indeed resigned.

· Your ideal university education should look like? What is the difference to you with the school? Compare your experience in Chinese university, your teachers and schools can do and abroad that right? If not, analyze why.

My ideal university education should be to provide several professional direction on the basis of general education to students on the path (of course have relations), in accordance with their own elective encourage students to explore the development direction. Each course is clear about his former successor and content, with the aim to enable students to attend class. Content, courses of experimental courses should be more closely together and theory (theory should grasp the progress of the experiment by the class teacher, rather than another teacher). More emphasis on course project rather than a tense week test, put a long test period, to allow a process of constantly refine. Frontier high school courses course project will aim to improve a rigorous academic achievement, students can do very well on this published. Contrasting with foreign countries, I very much agree with edward-crazy and MisTariano answer, the hard conditions of the environment caused by lack of selection of new ways and not simply sex does make it difficult to achieve the level of foreign schools, but there are still many teachers in trying to introduce the new model, and you can achieve good effective. For example, the term data mining and machine learning lessons encourage hands-on machine learning models to achieve, is a lot of code in engineering, mathematical principles are harvested. Many students explore their own EDA (Exploratory Data Analysis) method and parameter adjustment techniques, this accumulation of experience is very important.

· To date, the number of code you write, do you describe the most complex software projects / jobs.

The total amount of 6-7 million lines of code. Done the most complex project is implemented in C language grammar class C compiler. By analysis of top-down parsing the source code do generate an intermediate code, intermediate code after translation assembly instructions MIPS, and do some peephole optimization intermediate code. Code amount in about 4,000 lines.

· When learning linear algebra and probability theory, if you had this question "Why should we learn so much math, and that our computer has a relationship", you now whether there is such a question? On this issue, you have your answer yet? So do other disciplines?

Mathematics of time before more is a continuation high school, mind: class notes, class brush exam questions. Did not think too much on the sense of, course difficulty is not too large. The first bit of the size mathematics program plays a central role in the programming idea is great job data structure. For long text modeled using Markov chain, based on this description the abbreviation. Although its mathematical and rather trivial, but it has begun to take shape programming mathematical model. Last semester Introduction to data mining and machine learning, encourage yourself to achieve model, access to optimized solving quadratic programming (SMO algorithm in the SVM) In this process, it took a long time to understand the principles and realized the level of mathematics weak. After reading some of the papers and I found many innovative ML directions are derived from a mathematical (loss of function, optimization, etc.), programming often only play the role of a test.

Other disciplines, there is a direct relationship Needless to say in English - English is the language of international academic exchange. During the modeling of real-world physics also need to use a lot of knowledge. For the computer, let it solve the other problem areas, on areas of knowledge must be coded as a priori.

Part III: Future planning

• For your future development in the IT industry, what kind of dream you have or wish to engage in the future what kind of work? How are you going to plan your road technology, career paths and social way?

My dream is to make its own contribution in the forefront of research in computer science, want to engage in scientific research, innovation. This requires a solid mathematics, programming foundation and in-depth understanding of the various methods in the field (including traditional and SOTA) - the understanding of a way to discover its advantages and limitations. On this basis, a solid mathematical modeling can be well assisted (or complement to existing methods) process to ensure the model can work. And has a strong coding ability to quickly verify their own ideas, to snatch the initiative. In addition, English is the international language of academic exchanges, excellent English reading comprehension and writing ability is a window to absorb views, express their views.

· Realize their dream for you have done or plan to do what kind of preparation?

We had some knowledge map excavation work in the school's laboratory to understand the depth of the methods commonly used methods of learning and knowledge representation migration. Internship try to read the original literature, to maintain a certain amount of reading, and the accumulation of vocabulary in the reading process.

Practice has restricted the programming to be efficient, they wanted to simplify operations and accumulate some commonly used algorithms in programming time in. In addition, during this time the lab made me deeply understand the shortage of math level, so plan for the future in the face of mathematical knowledge to get stuck replenish digestion.

· You are about to face the internship, you are going to practice in the business or practice in the lab?

I think the choice of enterprises and laboratories that want to understand the direction of the drive. In some of the more practical, it has great commercial value areas (such as software engineering, computer vision, etc.) companies tend to have more insight than a university laboratory (trick). In terms of basic research, because of its commercial value can not even fast implementation, research universities run much deeper (as indicated by the study of natural language modeling, knowledge maps, etc.). Of course, the value of these new ways, after all, still have to put into practical application in order to demonstrate, so often difficult to find companies who figure in the paper in college. For me, business and laboratory were hoping for a touch.

· How important internship experience? The need to immediately start to accumulate internship experience?

For me, the internship experience is very important, I think it should accumulate undergraduate internship experience as possible in case there is spare capacity. This is actually a natural process of exploration. No matter what kind of work interested in the future, advance contacts are necessary: ​​on the one hand by bringing some of the practical internship experience make us understand more clearly if you truly like to own this path. On the other hand, during the course of the internship novice user, that the learning process and then apply their knowledge, learning ability, enhance communication skills are also very useful. If more determined in its own direction in practice, this practice can also give you a more clear goal.

结语:Life-long learning

20 years to see the changes between the "StarCraft", the development of computer hardware and software technology is evident: to improve the resolution of a larger screen adaptation, has become more intricate texture lifelike, 3D images, the use of shadows to create a sense of depth, the unit was given a sophisticated automation idle, more intelligent routing algorithm, even Blizzard introduced AlphaStar with the players real-time battle Grandmaster level of RL-based ......

More comfortable with technology, immersive experience that will last forever, as technology and demand will expand. In the computer industry needs to maintain continuous learning and progress to keep up with the times. breaking barriers in CS will be a life-long process.

Guess you like

Origin www.cnblogs.com/blueshift/p/12391906.html