Construction of Law - the first time the job

Reading and preparation work

Course Properties

Course work System Analysis and Design
Work requirements First solo work
Course objectives Learning modern software engineering thinking
Jobs goal Read the excellent blog, recalls the beginning of the heart, plan for the future. Prep materials, familiar tools
student ID 201731062416
blog address Garden blog blog personal blog

Self introduction

I'm a long time three-year trainee program from the Southwest Petroleum University to practice, I like music, programming. I am a disciplined person, able to stick to their goals. And I think my advantage is that a relatively large have sense of urgency, a lot of things can be rational analysis, prepared in advance, rather than self-satisfaction in fantasy. In daily interactions, I tend to be more shy in front of people are not familiar with, but it is quite familiar and lively. (Wow, introduce yourself so hard ah)

Reading and Thinking

I first joined the University of Imagine Software Engineering

  1. I know know almost from the first time on the professional software engineering. With many of the programmers know almost, they know almost user groups are the coolest group of people. I learned from the mouth of those big brother, little original program can help us solve the big log on to the moon, many interesting issues to small and so good night to his girlfriend. When I fill volunteer, software engineering has become one of the few I am familiar with the professional. And when I think that software engineering can build their capacity to make their own barriers to other people can not be replaced (it seems, I was really naive, is now training a month or two will be able to train a substitute for my programmer a).
  2. In the last study, I was quite satisfied to come into contact with the course. Theoretical courses and practical courses combine to provide comparative knowledge into the system. But many programs speak basis of comparison, it needs its own down to spend more time (which in fact quite normal). There are many courses Practice, practice session in the application of knowledge to the project-driven way to learn new knowledge, develop self-learning ability, a sense of full harvest. But there are some courses are not very satisfied, feel and content of the curriculum overlap, low knowledge intensity.
  3. I think where I was a professional I like the field, because I can be a relatively quiet person, I feel the need to write code to stop and think worked very well for me. And through years of study, I found that I like to write more code, just love.
  4. Future I will choose to engage in related work. I want to stay in Chengdu to become a good Java engineers. My ultimate dream is Ali (as if no matter who to turn to at this stage, the answer is to go BAT).

Now I

  1. Currently I Javaweb related technologies have a more comprehensive understanding of the application level control is good. But knowledge of the basic principles behind distributed and related knowledge is not deep enough. Mastery of knowledge important operating systems, computer networks and other self-study only a few. Because I am a more disciplined person (almost every day to write the code oh), so these years of accumulated amount of code, or more, but the amount of code you have to ask how many rows I really estimate not coming. In the learning process that I talked to the most complex projects is a voice and data annotation system, I am responsible for the shearing module development and performance of audio modules in the project, the difficulty of this project is a complex process, many user roles, and The audio processing system resources and more. In the project, the more difficult to manage because of the number of participants and caused the lack of safety concerns and other issues has become a project to promote resistance. And the time involved in the project, I also have very little knowledge, so at that time found it difficult (in fact, it now appears is not simple). Although this project last hasty ending, but left me with a very, very valuable experience, until now, sometimes I would think, if I do this project now, how should I do?
  2. I currently mainly in the gap from becoming a qualified college graduates an understanding of some basic principles of basic computer is still not deep enough, the reserve of knowledge and software engineering is still relatively small. Moreover, not only to write code every day, buried communicative competence worse, health has to die (getting greasy). Dezhitimei students from farther away, ah!

My future options and plans

  1. My goal has always been very clear, that is graduating from college to work to become a good software engineer.
  2. Compared to other selected students I think I chose the employment advantage is the ability to quickly enter the business experience real development work. Software engineering is a practical very strong discipline, I think in the development of high-strength enterprise, at least initially, be able to learn a lot, plus your own additional educational foundation and I believe I could develop into a senior technician . Compared to other selected students, I think my main disadvantage is the lack of ease of learning time in our lives, the future of self-improvement may be more sneak in learning, but also earlier in the brutal world of feelings. And not so ample time to learn the current very popular technology (such as artificial intelligence, block chain, big data, etc.).
  3. I target my junior set is mainly the accumulation of basic knowledge, learning technical principles for the work to prepare. Specific arrangements can be found in my personal blog .
  4. In order to achieve to become a good programmer goals, I've got some early technology accumulation, the latter is to the job interview-oriented learning. After work, I hope I can keep a sense of crisis, continuous learning, the only way to be in an invincible position in the ever-changing Internet industry.

After reading the book in doubt

Question one

All tests link has to go through it again?


The second chapters of the book are mentioned test, I found that when I read the test link is very diverse. Testing has become part of the entire software development life process very time-consuming part. A small change also needs to undergo an extensive test session, whether they choose to test items can be under the circumstances? If you can, then you have to choose what is the principle?

Question two

Whether to use agile development simply need to do what needs analysis on it?


On the demand analysis, it requires us to define software requirements as much as possible. The agile development can respond to constantly changing demands. So if we can use agile development model in the development of links, reducing the demand analysis aspects of the time.

Question three

How do we want to demand confirm?


Demand software life cycle analysis is a very important part. How do we generate for early confirmation of requirements specification to ensure full functionality, describing clear, logical self-consistent.

Question four

When using agile development model, we encountered more difficult, how to solve the task difficult to estimate the time?


I found when reading agile emphasize efficiency short, iterative cycles. But time project tasks will be difficult to estimate, and the development is very difficult, most likely because of a difficult task and drag the entire schedule. If we have this mission, we should be how to adjust.

Five questions

MFS model for each member needs to accomplish your goals, otherwise it will jeopardize the entire project, it is also suitable for NFS weak technical capacity of the team do?


Each member of the MFS model is very important, does this mean weak team is not suitable to use the MFS model. If less capable team can use NFS model, we should pay attention to?

Source code management tool

git

Git is a distributed version control system open source, can efficiently at high speed process from small to very large project management version 1
advantages:

  1. Suitable for distributed development, emphasis on individuality.
  2. Public pressure on the server and the amount of data that will not be too big
  3. Fast and flexible.
  4. It is easy to resolve any conflict between two developers
  5. You can work offline
    disadvantages:
  6. Learning cycle is relatively long
  7. Unconventional thinking
  8. Poor privacy code

Microsoft TFS

advantage:

  1. You can demand version of the task, project schedule at a glance.
  2. Integrated project management, version control, bug tracking and other functions
  3. And can seamlessly vs
    disadvantages:
  4. TFS build maintenance more difficult, the hardware requirements are relatively high

Mercurial

Mercurial is a lightweight distributed version control system, using the Python language. 2
advantages:

  1. Easy to manage a distributed model.
  2. A more centralized version control system, the system will be more robust
  3. Learn to use simple
    Disadvantages:
  4. Based python, and only supports python2.7
  5. Less relevant course materials.

  1. Baidu Encyclopedia, Git entries

  2. Baidu Encyclopedia, Mercurial entry

Guess you like

Origin www.cnblogs.com/zofun/p/11504535.html