reflection
Last night, I went to Beijing Dawanglu Ali for an interview. I felt badly frustrated and ashamed.
Compared to the students who have goals and ideals since college, they have been studying technology for the goal. The only thing they can do in college is to participate in the electronic design competition and learn some embedded knowledge.
After graduation, I started working on Android, which might be called a project, but it was actually moving code. How much of it really stuck in my mind? From Baidu Google moved to their own code, the same problem to encounter several times to remember, many problems moved do not know why to do so. What’s the point of ReactNative working on a project whose life cycle can’t be clearly defined?
My progress was too slow. I learned Android by myself in the first two years after graduation, but now I think I am just crawling. After two years, I think I am very good and can do all kinds of business. “Writing Java and XML in Eclipse…” How ridiculous! As in yesterday’s answer to the question “How does an intent break the size limit of the intent? “:” It’s not clear that it can break the…” I can excuse myself by saying that I don’t need an intent because I’m working on a small project. In the past five years, I think my theoretical knowledge is not as good as that of the fresh graduates recruited by BAT. Maybe the new students who have worked in BAT for one year have a solid grasp of basic knowledge than me, right?
In early 2018, I started to get a little bit more excited about API calls, started to learn things that I didn’t need in my current small projects, like JMM/ deeper multithreading/various data structures, and started writing some blogs and feeling good about it. You do not even know that thread.join () has an overloaded method with a timeout parameter. What does it mean to master the synchronous optimization for biased and lightweight locking? Not to mention the actual project has no effect, even just for the interview can not ask that step, just ask the basic application is inadequate and full of loopholes, the foundation is not solid who is interested in in-depth ask.
Compared with previous years DaiSha, these two years and too impetuous, self-knowledge owe too much technical debt, start grasping, blindly to the interview to learn some interview questions of stars, or accept the technology groups/site/blog/information about technology frenzy about life, they have not accumulated a solid in-depth technical knowledge or experience, This will only lead to more anxiety and no real technical improvement.
Another point is that the psychological quality is not up to standard, many years of work experience in small companies, state-owned enterprises, in the face of the Internet enterprise leader unconsciously feel inferior a lot, in fact, there are a lot of problems also know, but because of the expression of the problem caused by the answer. For example, if you ask about the JVM lifecycle, you will assume that it is a life-cycle callback similar to an Activity. Speaking of here, in fact, or their own interview too little, starting point is too low and the pursuit of too high, magnified their psychological quality defects.
plan
People as a mirror can be bright gains and losses, to see their own shortcomings to do some targeted changes.
The following changes of thinking to remember:
- Core idea, starting from the project, lay a solid foundation, step by step, business see where, the source code will follow where, do not drag, do not owe;
- During work, I will no longer think about other knowledge learning, and concentrate on the knowledge needed in the project/problems encountered, otherwise I will only be half-hearted, the technical points of the project are not in-depth, and other knowledge points are not practical.
- After work, in addition to spending time with family and friends/doing housework, you should spare more than half of your personal time to study. For example, if you have nothing else to do, you can play games or go shopping for food. This is relatively general and there is no specific measurement standard, so you should always remind yourself.
- Don’t be too eager to learn, with in-depth learning/learning application as the goal, blog is to summarize the record, rather than for flashy flaunts what. For example, write an algorithm, try to contact the application scenario; Look at a piece of source code, think about the application layer call what impact, so that you can apply what you learn.
Specific learning objectives
- From Monday to Friday night, there is only a small period of one and a half hours to learn the algorithm knowledge of small nodes. On weekends, a large period of time is used to study the source code or JVM and other in-depth knowledge. Saturday and Sunday should be at least 6 hours, and the rest of the time is decided by discussing with my daughter-in-law.
- Algorithm knowledge: read < offer> first, then brush LeetCode; Source code and JVM first look at the “Android source code design pattern analysis and actual combat”, and then systematically look at the “deep understanding of Java virtual machine”, the previous knowledge of combing, these three books is the goal of this year.
foresight
People have different goals, sometimes envy can be a down-to-earth happy retirement people, but more often still want to go further. Now I’m 27 years old, I’ve been working for five years, and I’m still a salt fish who can only pass the resume screening. I need to work harder in the future.