Writing in the front

My college entrance examination score was not high, I only went to a very average school, and I was not interested in my major. Fortunately, during the four years in college, I gradually developed an interest in programming, learned how to learn and entered the door of programming.

Afterwards still calculate smooth! I was admitted to a 211 master’s degree program. Last autumn, I also got many offers from large factories. Now I can also write articles to share some technologies with you in my spare time.

Now I would like to tell you about my undergraduate experience, but also hope to give friends in the same situation now a little help.

ambiguity

In September 2015, I took advantage of the large enrollment expansion of software engineering major in colleges and universities in our province, and was admitted to a moderately liberal arts double-non-non-college with a low score.

As a matter of fact, I had no interest in programming, and EVEN didn’t use the computer at home at that time. The reason why I chose software engineering as my major was that there were many students enrolled that year, so I had a low score.

When I came to school, my classmates didn’t like studying very much. They just played games in the dormitory all day. The teachers of the school also greatly expanded the enrollment of software engineering that year, and students could not control it, so that we were in a state of complete sheep. We all had a common feeling: “I don’t want to sit in class, but I don’t know what we should do.”

However, I still count progress, thinking every day in the dormitory to stay pretty boring, so I signed up for a lot of associations, student union, radio station, basketball team, track and field team and so on. The whole freshman year is very full, is the first semester of the freshman high math failed, C++ failed in the next semester (that year, we can basically fail half of the high math, not because of the difficult questions, it was too much for us at that time).

As a freshman, I got to know a lot of people by participating in activities, so I happened to know a senior of my direct line, who also led me into the door of programming. This senior is now in Byte, with an annual salary of 800,000 yuan.

It is also because we are a school with a strong atmosphere of liberal arts, and the leaders of the college are basically from the administrative background, so we rarely see technical activities in our school, but the leaders of the college are very interested in some football, basketball and cheerleading competitions.

Since I had never seen anyone programming software before, WHEN I first met Brother Byte, I was shocked to see his software. When he showed me his code, I turned into a programmer motivator and blew up his code. So byte eldest brother a bold clap thigh to take me for younger brother, want to take me to learn programming. However, in the following months, I did not contact Brother Byte because I was busy attending various cultural and sports activities.

Become interested in programming

The story starts from the second semester of my freshman year when I failed Java. Because I needed to take a make-up exam, I asked byte brother, who was not familiar at that time, how I should learn Java. I remember him touching his chin with a slightly pensive gesture and saying, I suggest you read Ideas for Java Programming.

Okay, I’m still holding a grudge. I bought this book on Taobao in a big way, and after just two pages, I didn’t want to learn programming. Fortunately, before make-up examination, take the textbook assault for a few days, and after looking for the teacher to draw the key, it is to make-up examination.

I didn’t learn anything about programming in the first semester of my sophomore year, so I didn’t contact byte brother much. However, I worked hard and passed cet-4 in the first semester of my sophomore year (I also passed CET-6 later, learning English is very helpful for the development of programmers).

In the winter vacation of my sophomore year, I rekindled my desire to learn programming, and I found Brother Byte again. Then he recommended to me the Java programming bible “Thinking in Java”, Guo Shen’s “The first Line of code”, “Crazy Android Handout”, “Android Programming authority Guide”, “Android source code design mode analysis and actual combat”, and embarked on a “road of no return”.

I know what I should learn, I also have my own way to learn programming, I do not learn such and such technology with a “XXX Bible” hard to chew. When LEARNING a technology, I always learn to get started first, and then supplement complicated theories, which enables me to learn technology quickly. Slowly, the freshman and sophomore did not learn Java, data structure, computer network, database and so on up.

Later,

I began to prepare for the postgraduate entrance examination in June, the second semester of my junior year. After a period of torture, I finally managed to squeeze into the second examination (the second examination was carried out by a margin, and my score in the first examination was in the margin). Thanks to my good programming foundation, I answered some basic programming questions perfectly during the interview, realizing the counterattack. After the interview, I heard one teacher and another teacher say that this student is not bad. I know. I’m on shore.

After graduate school, my story went smoothly, and I got to know more excellent people on a higher platform. There are also very good doctoral brothers with me to learn a lot of knowledge. Although there were some ups and downs, life as a graduate student was generally smooth. I also got a lot of good offers from Internet giants such as Tencent, Meituan and Jingdong.

Three months before the interview, I began to prepare for the interview, including brushing the real questions, reading advanced books, reading Android source code, reading official documents and trying to write relevant technical articles by myself, which requires a certain technical depth and self-reflection.

Share some tips

Finally, I will share some of my own methods and experiences, and try not to mention some common experiences, hoping to help you.

My study is based on videos and supplemented by books

  • Java related: B station
  • Android related: B site, official documentation
  • Algorithm: AcWing, LeetCode
  • Project: making

Beginners do not delve too deeply into a problem for too long, this knowledge point is not, you can temporarily put it aside, do not stagnate.

Don’t show your weakness on your resume. The interviewer will ask questions based on the content of the resume, so be sure to use words that tell the truth, don’t exaggerate or be modest. For example, I didn’t put operating system on my resume because I didn’t have a solid background and the interviewer didn’t ask me about operating system.

It’s very important to brush your face. One month before the interview, I used the crawler to crawl the Android interview questions on the Internet, and then went through the questions one by one, and made a note. Need friends can [click on me] get, free to share with you, is a Thanksgiving feedback bar.

Data structures and algorithms are particularly important. Personally, I think my algorithm can be brushed well. The number of LeetCode questions is 400+, and I can average A and 3 questions in weekly competitions. In the interview of Tencent, the interviewer directly wrote questions to Tencent document online, one side of the 4 questions 40 minutes I A 3, two face 5 questions 50 minutes I A 4, which gave me A great bonus in the interview, must pay attention to. Interview algorithmic questions are generally LeetCode type and pen questions are ACM type.

Solid foundation knowledge. This seems to be very vague and broad, what is the degree of familiarity, how well you learn is solid. I think, for our job seekers, can win the interviewer’s questions, then this knowledge point is familiar, in the face of the interviewer’s questioning can be well grounded to deal with, then this knowledge point to learn very solid. So when you brush your face, I hope you can ask yourself some questions. Don’t just stop at the face.

Friends in need can [Click here to get it】

advice

Here I would like to give some advice to friends who are new undergraduates and have similar experiences with me. Each person’s situation may be a little different, you choose the best.

“1. Surround yourself with up-and-coming people. Stay away from people who will mock you when they see you studying.”

In college life, the people around you can actually have a great influence on you. I am especially grateful that I have several thoughtful and ambitious people around me when I was in college. These people have a great influence on me and let me know what direction I should work towards. In addition, I will also benefit from participating in some competitions and cooperating with these motivated people.

“2. Allocate your study time.”

I feel that some students have misconceptions about the efforts of the university, and efforts are not to ignore things outside the window and read only sages. We should know how to give yourself a holiday, the movement to go to sports, the classmates to go out to play. In fact, playing is also for better learning, we need to concentrate on learning efficiently when learning. During the hardest time of postgraduate entrance examination, I kept the rhythm of studying for five days and playing for two days.

“3. It’s important to be confident in yourself.” You have to take steps to develop confidence in yourself. This kind of confidence is not that kind of confidence ~ but through some activities, some competitions to establish their own learning ability, to their own ability of confidence. Believe that no matter how difficult the problem is, you can take it apart step by step to complete. This is the most important for future study.