First of all, I’m a vegetable chicken with a low salary.
When I just graduated, I worked in a state-owned enterprise to do app development. After nearly two years of work, I changed jobs to a fake factory to do safety. Put in a lot of resumes, no reply, only this add fake factory want me to come. At that time, they said that they would contact some bottom-level things. However, they usually wrote Python scripts. In reverse, they wrote some risk control things on Android. I felt that they were a little low and the salary was not high. At the beginning, I didn’t dare to ask for more. HR gave me more than I wanted. Just now the leader talked about the plan for next year, and now he wants to change jobs.
Now it’s also very embarrassing. I have forgotten a lot about app development. In fact, I want to do framework development. I’m quite familiar with AMS and PMS. I usually have a little original solutions based on them. Recently, I started to fork out an AOSP, buy a pixel and change the brush to practice.
After all, the ideal is ideal. Android is not easy to mix at the low end. It’s hard to jump to the framework without much experience. It’s not willing to jump back to app development. It seems that I’ve been working for nearly three years and I haven’t mastered anything. Our company is also one of the recent layoffs. I’m afraid it’s no use getting a raise. However, life has to go on and job hopping is unavoidable.
Current situation analysis
Mobile development is in the saturated stage, and Android development is not as prosperous as it was a few years ago. Just like a programming language, if it has experienced a boom, there must be such a curve, like the sine curve we learned first rises rapidly, then reaches the peak, then drops again, and finally approaches a stable value.
At present, the market has been oversupply of junior and intermediate level developers, but there is still a shortage of technical talents above the advanced level, especially for Android developers in specific segments. Many companies will give priority to a specific requirement, such as the popular kotlin, hybrid development, cross platform development, NDK, advanced image processing, etc. the demand for advanced talents in the subdivision field of live broadcast and small video to audio and video, which is very popular in the market, is also relatively large, so AI, AR, VR and other technologies also need to be displayed to users through the terminal, so mobile terminal is open The future will still make a difference.
As the development of Android tends to be stable, some people feel at a loss about the future of Android. As early as 2010, there were a large number of Android recruitment in the market, and those who basically knew Java foundation could start Android. At that time, it was the peak of mobile Internet entrepreneurship. It was said that as long as you make an app, you can start a business. “When the wind comes, pigs can find jobs. When the wind stops, pigs are the first to fall to death.” if you find it difficult to find a job, it must be that you are muddling along. Android’s medium and advanced talents have always been very scarce.
As long as you dig deep in a certain field of Android, do your best to become an expert in this direction, and have the energy to further improve the engineering architecture thinking, the software engineering ideas are interlinked, and the realm will be improved, even if you learn new things very quickly.
As long as a field to do the best, even if the field is eliminated one day, the new field interviewer will still believe that you can do the best. Don’t mix 10 years’ work experience with one year’s working ability, otherwise your market price is not even as good as one year’s work experience, and you will become a difficult worker.
As for the development direction of Android, here I classify the following categories：
1、Application layer development, not limited to various products, mainly Android native development, mainly various performance optimization.
2、Embedded development, not limited to various development boards, Internet of things, smart home, Internet of vehicles / vehicle
3、Security development, not limited to all kinds of anti reverse, disassembly, looking for security vulnerabilities
4、Audio and video development, not limited to live broadcast, on demand, audio and video call, audio and video conference, short video, etc
5. Plug in, component-based and hot repair development is not limited to self-development and integrated development using open-source framework
6、System development (Android), not limited to the requirements of ROM maintenance and framework layer customization
7、Graphic image development, not limited to OpenGL es, EGL, glsurfaceview, filter, beauty
8、Applets / fast apps
AppletsIt is a product derived from wechat, which is a 100 million level traffic portal. Fast application and fast application are new application ecology jointly launched by nine mobile phone manufacturers based on hardware platform. Users don’t need to download and install, click to use, and enjoy the performance experience of native applications. However, I think it’s cool, but small programs are very promising. It’s hard for you to cool down in Tencent mountain and wechat Pavilion, but it depends on whether you just need it. For example, if your company has a demand, you can learn.
New technologies for recommended learning, flutter and kotlin, are both recommended by Google.
Flutter is a new mobile UI framework released by Google at Mobile World Congress 2018 on February 27, 2018 to help developers develop high-quality native applications on IOS and Android platforms
Since it was released by Google, it is still worth affirming in terms of the future.
Kotlin is the official development language recommended by Google. It is interoperable with Java, convertible, concise and safe. It is a static type programming language running on Java virtual machine. It is called swift of Android world. It is designed and developed by JetBrains and open source,
How to choose
So to sum up, really don’t worry too much. It’s more important to learn the foundation and improve skills than anything else. If you can’t find a job, you can only say that your study is not good enough, or your ability is not up to standard. It does not mean that there is no recruitment for this position. It is the behavior of the weak to deny the demand of the whole market by the failure of personal ability!
As for the choice of direction for many people, I can give you the advice is to see your interest, don’t tangle too much, you can find a good job if you learn any one well. First of all, follow your inner feelings to learn and master a subject, and the programming language is interlinked. Later, you will have the opportunity to contact other fields. At present, the most important thing is to devote yourself to you Now want to engage in the occupation, eat a full meal is more important than anything!
The above are the suggestions I can give, not necessarily right, but from my own point of view, they are all very pertinent suggestions. As for how to go and how to choose, it’s up to me!