2017 has been a busy year for me. I have been preparing for the spring recruitment for internship since the beginning of the year, and I have been busy with JDK source code in the 30th of the year. In March, I went through five interviews with Ali and successfully received the internship offer in April. Then In May, I began my internship in Ant Financial with anxiety. In August, after two rounds of interviews, I finally got the offer of full-time employment. At this point, I can finally enjoy my last time on campus. I hope my experiences and insights can help you.

My graduate school experience

Ali is an important goal of my postgraduate study. When I entered the first year of postgraduate study, I set up a Flag and planned what I would do and learn in the third year of postgraduate study. If YOU look through my blog, I can still find my master’s plan written at that time (how time flies!). Ali in my mind has always been a pilgrimage site for technologists, gathering a group of technology fanatics, in order to improve a little bit of performance can sleep and sleep. After setting this flag, I told everyone around me that I wanted to go to Ali. I don’t want to leave my options open, so if I’m out of the loop, I need to follow through.

My plan at that time was to study hard and devote myself to the project. After all, writing code is a technology that makes perfect, and writing more code will naturally deepen my understanding of the technology. And so it proved. That summer vacation of my senior year graduation, first contact “deep understanding JVM virtual machine”, after reading at that time is a face meng force, all Chinese characters all know, but connect into a sentence zha don’t understand? Then with such a face of meng forced state, forced to read the book, but because of the understanding is not deep enough, soon forgotten. And then after a year of crazy projects, when I pick up the book again, my feelings about the book have changed 180 degrees, and it’s easy to understand. I wonder why I was such a fool. In this year, I have done four projects altogether. So writing code can subtly improve your understanding of technology.

I remember that it was at the end of March when the result of our school’s postgraduate entrance examination was announced. I was temporarily happy when I learned that I was admitted. The next day, I went to my tutor’s lab to participate in the project. Because I knew in my mind that ALI was my target. When I first went to the lab, I felt completely helpless. I couldn’t understand a single word of what my brothers discussed at the meeting, and it was difficult for me to finish the work assigned at the beginning. But I am a naturally disobedient person, the more I do not understand, the more I want to conquer. (PS: Chasing girls is the same, at that time saw a tall cold goddess. The colder it gets, the more I have to take… Ten thousand words… It worked). I gradually catch up with the pace of my brothers, and I have been in charge of the project since the second project. I set myself the direction of Java, and the lab projects are varied, Qt, C++, graphics… But I know that these projects can broaden my horizon and exercise my learning ability and way of thinking, but the technology I need to deeply understand is Java. So I took advantage of the lull in the project to read a lot of Books on Java, and AT the end of this article I put together a list for you to consider.

After one year of working on the project, I feel that my ability to solve problems and quickly learn new technologies has been improved. However, my understanding of many technologies is only superficial because I always strive for speed and rush time. So most of the time I felt like I was moving bricks and it was hard to write high-quality code. At that time, I decided that in the first semester of my second year of postgraduate study, I would consolidate the foundation, deeply understand the principle behind the technology, and slow down the pace of my projects instead of blindly pursuing fast.

However, due to various reasons, I went to a start-up company for internship. Since I don’t have a choice, I embrace change. Take things as they come, and I hope my time has paid off. So I threw myself into my work. The company assigned me to do the front end, although this is not what I want to do, but at the moment there is no choice, if we do that we have to do well. I spent a month brushing the front end knowledge, learning Angular and React, understanding their design ideas, learning the principle behind JS, and seeing the current development of the front end. The technology on the front end iterates quickly, but the principles behind the technology are similar, so it’s important to get to the essence behind the technology. This internship lasted until January this year. I knew that ali’s internship recruitment would start at the end of February and early March, so I squeezed out rest time at noon, time after work in the evening and time on weekends to review what I had accumulated before.

March 3rd, the first interview of my life, when I saw hangzhou’s phone, I felt both nervous and excited at that moment. Before this, I do not know their level in all the fresh graduates in a what level, before the phone call I have made full psychological preparation, imagine all kinds of interview by the hanging screen. The first interview lasted 54 minutes, and the interviewer seemed to have a lot of patience. That interview gave me great confidence, because I knew that I was one step closer to my goal. In the following month, I received five interview phone calls one after another. Every interview was a learning opportunity to discover my shortcomings and learn the latest technology and the best implementation method in the process of communicating with the interviewer.

On April 14th, I remember that I received the offer from Ali after dinner after I had just finished the algorithm class for undergraduates on behalf of my tutor. The joy was palpable, and the effort had paid off. But I also know that Ali’s internship conversion rate is always low, and it is not easy to stay through the internship. Therefore, the night after I received the offer from Ali, I re-planned the following study plan and updated my short-term goal to win the offer of Ali to become a regular employee.

On May 20, a beautiful day, I entered the Alipay building with longing, apprehension and excitement, and began my three-month internship. I have learned a lot from the three-month internship. I have seen my progress every day and my shortcomings. I have experienced so many things in the past 100 days, and I have learned so much. I will write a separate article about my feelings during the internship to share with you.

At 11 PM on September 1, my status changed from “in the interview” to “offer to follow up”. I smiled and realized the goal of the first stage of my life. I was not too excited at that moment. After eight months of continuous struggle in 2017, this offer had been expected for a long time.

The next day was Saturday, and I gave myself two days off this weekend. Although I have stayed in Hangzhou for 102 days and the Alipay building is near the West Lake, I have never been to the West Lake since I work at 2 o ‘clock every day. That night, my gay friend (handsome Brother Tian, with a marriage proposal at the end of the article) learned that I had received the offer and immediately bought a ticket and took an overnight train to Hangzhou to celebrate me. Thanks to him, I visited this beautiful city for the first time this weekend.

At the end of my school days, I set a new goal for myself. This goal may be full of challenges, hardships and difficulties, but I think if I can achieve it, my life will be greatly changed. I’m still fighting my way through life. I hope to work with you.


Tip: Make blogging a habit

The blog helped me a lot in interviewing Ali. It’s not that having a blog is a plus in an interview, but the process of blogging deepens your understanding of knowledge and is especially productive in retrospect (it was your own writing, after all).

I have formed the habit of blogging since the beginning of my graduate school. Now, back to the past two years, I have written a total of 185 articles and received 22W page views. I am also honored to be called an expert blogger. My blog has now become one of my most precious wealth, recording the entire architecture of my technology, as well as the mental process of learning technology.

Maybe many students have the experience of writing blogs, but few of them can stick to it for a long time. I want to tell you that everything is important in perseverance. It only takes 21 days to get into the habit. Sometimes it’s hard to keep going when you lose interest, but think about your goal, grit your teeth and stick to it. Make a habit and you win.

My blog is usually a summary after reading a book. I will write down the most important things in a book as I understand them. I read each book three times, the first time is to quickly scan, to understand the architecture of the whole book, the author’s writing ideas, to know the important and unimportant content of the book, that is, to establish the overall picture. For the second time, I will read intensively, picking out what I think is important and re-reading, re-understanding and thoroughly understanding. The third time I read a book, I always have a new understanding. I often feel that “after reading a book a hundred times, the meaning of the book can be seen by itself”. After reading it three times, I wrote a blog about the core content as I understood it. As a result of their own writing, so in the review of the time to spend as long as three or five minutes to read over, all knowledge points and wake up.


Java architecture cleanup

  • Java related

    • Java Collections Framework

    • The Art of Java Concurrent Programming the Art of Java Concurrent Programming The Art of Java Concurrent Programming The Art of Reordering Java Concurrent Programming the Art of Volatile Java Concurrent Programming the Art of Volatile Java Concurrent Programming Java Concurrent programming * * — Clog, Synchronization barrier, Semaphors * * The art of Java Concurrent Programming (10) — The Art of Java Concurrent programming (11) — the Art of Java Concurrent programming (2) — the Art of Java Concurrent programming (12) — The art of Java concurrent programming (13) — Lock optimization

    • Java Concurrent Container A large collection of Java concurrent containers
    • JVM(3) – Garbage collection strategy (4) – Object memory allocation strategy In depth understand THE JVM(6) – JVM performance tuning in depth Understand the JVM(7) – Class file structure In depth Understand the JVM(8) – Class loading timing In depth understand the JVM(9) – Class loading process
    • Design Patterns 23 design patterns – the blog of chai Maomao
    • An in-depth analysis of Spring(I) — the basic concept of IoC (from the object-oriented perspective) an in-depth analysis of Spring(II) — the implementation of the IoC container In-depth analysis of Spring(III) — the life cycle of beans in-depth analysis of Spring(iv) — AOP

    • Object-oriented thinking

    • New Java8 features – Lambda expressions (1) New Java8 features – StreamAPI(2)
  • Computer Fundamentals

    • Algorithmic data structures and algorithms – big idle chai Maomao’s blog
    • Data structures to thoroughly understand red black trees
    • The operating system
    • Computer network Computer network transport layer knowledge coverage
    • Database Database index comprehensive analysis of database transactions details three database paradigms
  • Linux Linux common instructions – big idle person firewood hair hair blog

  • Architecture High Performance Web Site Architecture High Performance Web Site Secrets (1) – Understand the metrics that measure Web performance. Architecture High Performance Web site Secrets (2) – Dynamic content Caching Architecture High Performance Web site Secrets (3) – Browser caching Architecture High performance Web site Secrets (4) – Reverse proxy caching Architecture High performance Web site Secrets (5) – Separation of Web components Architecture High Performance Website secrets (6) – Building data buffer architecture High performance website secrets (7) – load balancing

Come on, fellow students, wish the autumn recruitment a success!

Juejin. Cn/post / 684490…