Android development: After 10,000 hours, I went from outsourcing to ByteDance.

1. 10,000 hours of review

Regarding the 10,000-hour law , you may have seen it in many chicken soups. The general meaning is that the genius in the eyes of people is a continuous effort. 10,000 hours of practice is a necessary condition for a person to become a master in the field from ordinary. . (I feel that the gangsters are already gearing up).

In my previous cognition, I have been in a half-believing attitude towards this sentence, until I felt the experience of having it, I realized that this is not empty talk. Although not all efforts will have results, but no effort will never result.

2. My experience

My first Android development job was found at the end of July 2016. At that time , apart from a little bit of data structure, algorithm, Java, C++, and programming ideas I learned in school, I didn't have any project experience.

At that time, I asked my classmates to help push the chrysanthemum factory, but I had no choice but to vote for 5 departments, 4 without a message and 1 declined, and then I didn't insist anymore. I still remember that it was the hottest summer of 2016. I held my resume against the big sun every day and went to various small companies for interviews. After about a week, I went to Xi’an after 3 rounds of interviews. An outsourcing company.

Until September 2020, I was fortunate to be an Android client development engineer for Bytedance. Counting it has been in the industry for 4 years and 3 months, if you calculate it as 6 working days per week, and the average working day is 8 hours, then this period of time is approximately (52 weeks *  4 years + 8 weeks) * 6 work Day/* 8 hours per week/day=10368 (hours), which means you have just survived 10,000 hours. As a wild Android coder who is nearly 30 years old, this result is not easy to come by. Everyone in the circle understands how difficult it is to enter a large factory from outsourcing, and they have their own down-to-earth efforts despite luck. This article was written a week after joining the company. I hope to keep up with the past, and then raise my head confidently. Inspire Creativity, Enrich Life in my new life!

 

3. I do the right thing

  • Work hard, learn technical replays at work

    In the workplace, this is always the first principle. In the past job, my average performance is at B+the level, at least I will not treat it hastily because the work content is boring. Resume in a timely manner and settle down experience and technology, but you must force yourself to reflect, whether it is learning any new technology, or observing the strategy you adopt when facing something, or your product and business ideas, etc., write Anything is fine, but it must be done.

    • Important point: Android basics

    I just started my career in 2016. The first thing I did was to supplement the Android foundation. It is no exaggeration to say that I got up at 5 o'clock in the morning almost every morning, then read a book, read blogs and take notes, csdn, Jianshu, Zhihu, blog garden, etc. I wait for the technical articles on the blog to read every day and learn the programming ideas of Daniel. In this way, the basic knowledge level has greatly improved in the past two months. Of course, you will eventually realize that the basics of Android are almost eternal, just like weight loss. topic.

    • Took some private work

    This is a slightly sensitive topic, but I haven't done it for a long time (because the time invested in other things may have greater long-term benefits, and one day you will come to this point). I think these experiences are still very meaningful to me . I actually recommend that students who have good skills and have the ability to do private work at least once, you can find it online or through acquaintances. You may also face bidding with other people, and you may end up in your pocket. The income is too high, and you may have to draw up an agreement yourself. In the process, in addition to getting your own development, you have to urge other collaborators, and even be dragged down by your teammates. Or you have to pretend to be grandchildren, give gifts, and invite dinner in order to reach the end of the payment. The programmer’s arrogance and face are blown away in the real world every minute. Only then did you understand that the adult world has no " Easy", there are not so many "shoulds" in the world. I have a principle of taking private jobs, only picking what I can't. If a private job doesn't have any exercise for me, I will recommend others. Signed the agreement, there is no escape route, you will find that in fact learn the new technology is not so difficult, I was in this way learned to use flutterkotlinjetpackRxjavaand so a lot of technology. They have also exercised their ability to lead teams in some larger projects, and these things are almost impossible in regular small companies and jobs.

    • Keep learning and write technical blogs

    Around May 2019, when I had about 3 years of work experience, I started to try to write a technical blog, because blogging can leave a very good impression on the interviewer during the interview. During the byte interview, the interviewer asked me. Do you usually write technical blogs? And the articles compiled in your blog bring your own programming thoughts, and when others bring up your mistakes, it is the biggest improvement for yourself. In the end, from the beginning to now, I have written more than 110 blogs without water. Some of them are study notes on the basic knowledge of Android, and some of them are technical problems encountered in project practice, which will be self-reviewed later. Analyze, friend's advice, finally understand and organize it into a blog for sharing! In fact, there was no purpose for writing a blog at the beginning. Writing is my own way of learning. It can help me test whether I really understand a certain point of knowledge, and the subsequent gains are unexpected.

    • Did an external technology sharing

    In fact, I have done a lot of public technical sharing in my work, and I have been invited to other groups to share. It does not mean that you must be very skilled to share. After all, sharing is not pretending to be B, what you have to do is to let others Knowing that you have thought about something seriously and are willing to share it is very important. Of course, this can also help you overcome inferiority complex to a certain extent. In November 2019, when I had about 3 and a half years of work experience, I was fortunate to share some knowledge about browsers at the annual meeting of the Google Xi’an Developer Community, and prepared a PPT very seriously (in fact, I like to do ppt ), also made many new friends. There are not many opportunities like this. If you encounter one, I hope you can seize it as much as possible. Otherwise, when you are still embarrassed to add psychic drama to yourself, the opportunity may be taken away by others and feel that you can do it or that you can’t. People are often right.

    • When opportunities are in front of you, step out of your comfort zone

    When you find yourself in a predicament, do you still have the courage to get out of your comfort zone? At the end of 2019, about 3 years in the industry, I interviewed a lot of big factories in Xi'an and Hangzhou. Although almost all of them went to the HR side, I only got 2 very general offers in the end , and there are two ways in front of me. , Accept a small salary increase and stay in Xi'an, or choose to go to Hangzhou with a big salary increase. If you are 30 years old at this time, have a car, a house and are single, can you accept going to another city? I can, compared to loneliness, mediocrity is more unbearable, but also because I know that if I stay, I might be eliminated in the workplace because of my vision and ability in 4 to 5 years.

    The job in Hangzhou is still an outsourcing of a large factory. Although it is boring, it is not particularly busy and the working atmosphere is also good. However, when I saw the tasks undertaken by regular employees and the resources that can be mobilized at work, I quickly realized Although everyone works together. But in fact, they are not on the same track. They are trained and grown much faster than outsourced employees. We only come to help others clean the battlefield after others have participated in a battle. When I want to take the initiative to learn more For a long time, the dazzling prompt "Outsourcing students do not have permission" usually pops up on the desktop . The most terrifying part of this environment is that the differentiated treatment everywhere makes people develop a "victim mentality", feel that everything they face is caused by the objective environment, and eventually forget that they have the right and ability to choose.

    The original plan was to wait until the spring of 2021 to challenge Dachang, Base Hangzhou, but time is waiting for no one. One of our colleagues got an offer from JD.com during the two months of Jinjiuyin 10. This inspired me to challenge Dachang. Once again, I was eager. After a short-term integration of the resume, I directed my resume to the big factory. Later on, I got the bytebeat offer during the 1-month interview journey. From the moment I got the offer, all the hard work was worthwhile, but the base was in Beijing and the salary increase did not meet my expectations. I have just gotten used to life in Hangzhou again. I am faced with the choice again, whether to step out of my comfort zone and seize the opportunity to enter a large factory (renting in Beijing is really expensive, and other consumption is not an exaggeration), or to follow my own plan and continue to challenge Hangzhou’s large After a short consultation and consideration, I chose Beijing. Think of the story of God saving believers. When the opportunity comes, it may not be what you expected.

    After ByteDance started working, I am very fortunate that I did not miss this opportunity. For a technology practitioner who has only worked in an outsourcing company, it really means another world.

Four, summary

Growth is the eternal subject.

I like a metaphor my friend said before: when you want to drive around the world, you don’t need to fill your car with enough fuel to run the whole world, you only need to fill up the first tank of fuel. There are so many gas stations on the road, you can refuel at any time, there are so many people on the road, you don’t have to rely on yourself for everything. There are people everywhere who want to run the whole world with a tank of gas, but they may I will never set off. Only those landscapes that I have actually experienced can make people truly enriched, even if you are in embarrassment when looking at the landscape.

In fact, just like work, the era when you can get a satisfactory salary by knowing the four major components of Android is gone. No capitalist is a fool. After waves of elimination and shuffling, what is left is now the gold of technology. As the big waves fade away, the swimmers will slowly come ashore.

Attached here is the advanced Android materials that I have collected, summarized and summarized over the past four years, including ( ①Android interview pdf+②Android technical knowledge summary pdf+③Android advanced notes ), I hope it can be a reference for everyone to improve themselves. Friends who need to get it can go to- [My Github] Free download and read.

 

 


Github address: https://github.com/733gh/xiongfan2.0/tree/main

 

I hope that those Android developers who really persist will achieve good results. After all, the Android market is so big, judging from the booming demand for high-level Android jobs, I firmly believe and hope that each of us Android developers will continue to hold on to our own dreams and not forget their original intentions.

Guess you like

Origin blog.csdn.net/qq_39477770/article/details/109296739