I aborted the attempt before I formed. 35 years old “old man”, really can not compare with you young!

certain

Do programmers last a lifetime? It’s an established fact that few programmers last a lifetime.

Not only programmers, there are many industries, do not work until retirement, programmer is just one of them. Soldiers can not be a lifetime when grass-roots soldiers to the old, the model can not be a lifetime walk T stage, nightclub young lady can not be “stem” a lifetime to receive visitors…… We all need to retire from the time, so, the state of mind to put good, can not change the objective things to accept, and then think about the solution.

Programmers are ultimately just instruments of capital. Helping the boss develop needs is a problem solving industry, we are taking people’s money, eliminating disasters for people. Since it is a problem solving industry, if we want to keep doing it, we have to keep our problem solving ability.

Continuous programming is just one of them. You can also move into a management role and lead people to solve problems. You can also become a product manager, project manager, and solve problems from other perspectives. Maintaining their competitiveness is the premise of continuing to work.

Another prerequisite is whether the company can continue to hire us. If you’ve ever dealt with headhunters, you’ve probably heard that some companies have stopped hiring people older than 35 for basic development positions. Note the wording here, ** is a basic development position over 35 years old. ** What about other positions? Like specialist, architect, management? These positions are age-neutral.

You can’t tell if you’re 70 or 80 after 30 anyway

Save for a rainy day

But in reality, where there are so many expert posts and management posts for us, there will still be most of our friends can’t get in. It doesn’t matter if you can’t get in. You can get into a small business. But small companies also have another problem, is unstable, it is easy to stay up late at night to work overtime, the next day the company is gone.

And with the increase of age, our own needs are gradually increasing, the expenditure of money, energy consumption are increasing, at this time we need more stable work, high income to support our life.

So, some people say that programmer is a very interesting industry. When we were young, we were given a high income to eat, drink and play with when we didn’t need so much money. When we get older and really need the money, the industry is not so friendly to us.

But I think programmer is a good job. It allows us to accumulate wealth quickly, and as programmers, we have the possibility to implement our ideas. Programmers have the largest number of people earning millions a year and being financially free of any profession I’ve ever worked with. Even if you really want to change careers, as long as you know the way, you can still get out of the programmer industry in advance. What you need to do here is to improve your awareness.

Life is not just about overtime and bugs

Adjust state of mind

If you’re going to be a programmer for the rest of your life, you need to get your mindset right and stay competitive. Can advance into a big company to do management, do experts is of course a good thing. Even if not, there is a foreknowledge, know in the old age, be picky is common, can bear grievance, may also be able to safely to 40 or 50 years old.

The status quo is the status quo, there is no way to change the occupation, can only think of ways to change their own. Examine yourself, keep learning, plan, and build on your 10 – to 20-year career to plan for a rainy day. Don’t wait until you’re 40 to send out resumes and interviews, waiting for the pot to drop at home.

However, people always want to look at the problem with the vision of development, the society is developing, the era is progressing, maybe after 20 years, programmers are not youth rice. Here is a passage from Wang Xiaobo for my friends:

I was twenty-one that day, in the prime of my life. I have so many hopes. I want to love, eat, but also in a moment into the sky of the half-dark clouds. Later I learned that life is a slow process of being hammered. As one gets older, one’s hopes fade away and one becomes like a battered cow. But I didn’t foresee that on my 21st birthday. I felt that I could go on forever, that nothing could hit me.

Contribute to the

I am already 32 years old. My 33rd birthday will come in March next year, and in two years, I will reach the legendary “deadline” of turning 35. I have been working in the programmer industry for nearly 10 years, 3 years in Java and 7 years in Android. The position of bytedance architect should enable me to survive until I am 40 years old. But he has also started some side businesses to give himself a “back hand”. At this point, as an Android developer, next I want to share these years, I for the technology of some summary and summary, and their own as an Android senior developer need to master those skills to share notes, I hope to help to the heart of the road to the black friends!

  • Essential skills for architects to build foundations

At present, the mainstream Android APP development language is Java language, the biggest feature of Java language is to improve the possibility of software interaction, it can be said that almost all applications of Android phones are written using Java language.

Key points of knowledge: 1. In-depth understanding of Java generics 2. Simple annotations 3. Concurrent programming 4. Data transfer and serialization 5

Essential skills for architects to build foundations

  • Design ideas read open source frameworks

With the continuous development of Internet enterprises, there are more and more modules in product projects, and the user experience requirements are getting higher and higher. It is more and more difficult to achieve the purpose of small steps and rapid iteration, so plug-in technology is born. Without plug-in technology, meituan and Taobao, which integrate a large number of “apps”, would be several gigabytes in size.

As a result, Android mobile development today is not hotfix, plug-in, componentized, and 80% of interviews fail.

Key points of knowledge: 1, hot repair design 2, plug-in framework design 3, component framework design 4, picture loading framework 5, network access framework design 6, RXJava responsive programming framework design

Design ideas read open source frameworks

  • 360° all-round performance tuning

In the hands of development engineers at different levels, due to the uneven technical level, even though many mobile phones have very high performance of scoring software, there is still a lag phenomenon when opening applications.

In addition, as product content iterates and features become more complex, the UI pages become richer, which can become a barrier to smooth operation. To sum up, APP performance optimization has become a comprehensive quality that developers should have, and it is also a guarantee that developers can complete high-quality application works.

1. Design ideas and code quality optimization

2. Program performance optimization

  • Optimization of startup speed and execution efficiency
  • Layout detection and optimization
  • Memory optimization
  • Optimize the power consumption
  • Network transmission and data storage optimization
  • APK size optimization

3. Optimization of development efficiency

  • Git, a distributed version control system
  • Automated build system Gradle

4. Actual project combat

  • startup
  • fluency
  • The practice of Douyin in APK packet size resource optimization
  • Youku responsive layout technology full analysis
  • Network optimization
  • Mobile Taobao Double 11 performance optimization project revealed
  • Autonavi APP full link source code dependency analysis
  • Complete the OOM experience sharing
  • Wechat Android terminal memory optimization practice

360° all-round performance tuning

  • Android framework architecture

Android FrameWork architecture (advanced UI+FrameWork source code) this piece of knowledge is the most users today, we call Android2013~2016 technology.

Android developers also tend to be familiar with the “used” code because they are used to online Copy code. The familiar is that they work with it almost every day and Copy it every day. What is strange is that although I deal with these codes every day, I have not studied the principle of these codes and the connotation of the code.

This knowledge points: 1, advanced UI promotion 2, Android kernel components 3, large project essential IPC 4, data persistence and serialization 5, Framework kernel parsing

Android framework architecture

  • NDK Module Development (Audio and Video series)

NDK (Native Development Kit) A software Development Kit based on a Native programming interface that allows you to leverage C and C++ code in Android applications. Programs developed with this tool run directly locally, rather than on a virtual machine.

In Android, the NDK is a collection of tools that extend the Android SDK. The NDK provides a set of tools to help developers quickly develop dynamic libraries in C or C++, and automatically package so and Java applications together as APK.

This article knowledge key points: 1, NDK development of C/C++ introduction 2, JNI module development 3, Linux programming 4, bottom picture processing 5, audio and video development 6, machine learning

NDK module development

  • Flutter learning is advanced

2019 is undoubtedly the year that Flutter technology is in full swing.

Every mobile developer has been fascinated by the features and ideas that Flutter brings with it: “rapid development, expressive and flexible UI, native performance”, from superapps to standalone apps, from pure Flutter to hybrid stacks, Developers have been exploring and applying Flutter technology in a variety of scenarios and are facing a variety of challenges.

Build your first Flutter APP. 4. Get started with the Flutter Dart language system……

Flutter learning

  • Wechat small program development

Wechat small program as one of the more popular programming development application scenarios, favored by the market, which makes many developers greedy. But for beginners, it is completely confused, do not know the micro channel small program development and production need to learn those knowledge, friends in need can refer to this article.

This knowledge key points: 1, small program overview and introduction 2, small program UI development 3, API operation 4, shopping mall project combat

Wechat small program development

  • Android related source code interpretation as long as programmers, whether Java or Android, if not to read the source code, only look at THE API document, it is just stay in the fur, which is unfavorable to the establishment of our knowledge system and complete and the promotion of actual combat technology.

Android related source code interpretation

Android related source code interpretation part of the content

At the end of the article

Welcome to pay attention to my nuggets, share Android dry goods, exchange Android technology. If you have any opinions or technical questions about this article, please leave a comment in the comments section and I will answer them for you. Finally, if you want to know more Android knowledge or need other information I here are free to share, just private letter 666 find me to get, you can also like and comment support oh!