How did I capture this chance to intern? I must admit that I had a gamble on this matter. I wasn’t able to work out algorithm problems masterly cause I was poorly trained for the game. About two weeks were spent to immerse me in practicing algorithm tests but that wasn’t enough. Turned out the code was not completed. Thankfully at the interview, the given problems are at a below-median level to which I can outline my thoughts. However, I surmise that I got the internship because of something else. Such as my project experience, capabilities to learn and handle the work, and most of all, my passion for technology.

How do I find life in Microsoft? I’ve never worked full-time at any other company, so for what it’s worth, I’m glad to find all my colleagues full of energy. Likewise, my leaders are very approachable as well as my mentor. Working hours are relatively free, and we have weekends which is for me to summarize, think deeply and plan. Furthermore, I’m acutely aware of the importance of using everyday English, that is to say, I shouldn’t have focused only on English for academics and engineering. Besides, listening and speaking matter.

In our team, we have a morning meeting every day, mainly including two parts. One for business review, another for personal progress reporting. (This is part of the scrum framework, which is nicely used to help us work together.) Each teammate is highly motivated, and his/her opinion will be respected. This is a good guarantee of productivity.

What have I gotten in the last few days? All sorts of these things push me to think about the balance of the advances between technology and social skills. I’m aggressive in learning technology, but not proactive on social occasions. To be frank I’m introverted. I enjoy absorbing myself in doing only one thing until it’s done and I don’t care about social activities. It’s very hard for me to be socially active, especially to start a chat. My brain is blank and has no idea about what to say. This is why I have an inkling feeling that it can be terrible for my career progress. These days I even feel that being single-minded about coding can be harmful. In the future, no matter what work I take part in, the ability to communicate with people actively, even to lead and organize group work, is momentous.

Also, I’m discovering our team is paying close attention to business. But as for technical aspects, the underlying principles are seldom concerned about. Most people are only interacting with ready-made, established frameworks and tools every day. That should be a warning sign. I mean to say, if a smart graduate can get proficient in those frameworks in several years, and you neither care about deeper technology nor leadership, what will happen to you when you age? A second thought incurs profound fear.

So in a programmer’s career in China, you must either be promoted to be a leader, or you keep digging in low-level technology, which is not inconsistent (but not profitable), as a researcher. If you always merely use frameworks, you will be optimized, cause newcomers will learn it soon and do it better than you.

As for me, despite changing myself can be painful, improvement of communication and management skills should be proposed on the agenda.