Preface:

Recently, there have been a lot of questions on Zhihu about the future of Android, whether it is going to cool down, and whether you should consider changing your career. When a series of problems have mushroomed, is Android really on the decline? Some bloggers even went so far as to say that they want to move from Android development to the back end:

Thinking that there are probably a lot of people who have such concerns, I decided to write a quick article to talk to you about the future of Android development.

Let’s start with the market demand:

This must be a problem that many people are concerned about. They say that the Android development market is saturated and it is difficult to find a job, so I am struggling with whether I should study and whether I should consider changing my career.

I have to say, mobile development has been hot in the last few years. Why? Because an industry just rise, the development of smart phones fast shocking, plus 4 g era, the rise of a short video for example trill, quickly, volcano and so on, plus more and more entrepreneurs, entrepreneurship are basically needs to be done to a company’s own App, more integrated down a variety of reasons result in a shortage of special mobile development talents, combined with the advent of the era of 5 g, The mobile market is still in great demand, so it’s easy to find a job if you can do anything.

And now obviously cool down, the requirements for talent are more and more demanding, now make a public number can start a business financing, App is no longer just needed, so the previous few years than the demand is really much less.

But the fact that mobile development is still in high demand compared to other programming industries in the same category only shows that what was “crazy” before is now “normal”, so I don’t agree with those who say Android development is saturated. Because I see the number of Android and iOS job openings on major job boards at the same time as the number of other job openings, “saturation” is just an illusion from “crazy” to “normal.”

At present, the demand tends to balance, and the demand for the beginner and intermediate level developers is less, but the demand for the market above the senior level is still very poor, especially for the specific segmentation of the Android developers are also very poor, and the comprehensive ability of Android development, especially the basic principle of the requirements are becoming higher and higher. For example, many companies will give priority to certain requirements, such as the popular Kotlin, mixed development, cross-platform development, NDK, advanced image processing, etc. Live broadcast and small video, which are very popular in the market, also have a large demand for senior talents in the audio and video segment. As a result, AI, AR, VR and other technologies also need to be displayed to users through terminals. Therefore, mobile terminal development will still make progress in the future.

Let’s take a look at the most important salary

When it comes to development prospects, salaries have to be talked about, which is also a topic of concern for many people. Today I took a look at the prices offered by some recruitment websites for various programming positions, based on 1-3 years of work experience in first-tier cities:

  • Android & iOS developers can expect a monthly salary of 10-20K
  • Java, Php,.net etc. The monthly salary range is about 8-15K
  • Some niche languages such as Ruby and Python are in the range of 10-20K a month

Above are preliminary based on personal ability will be a difference, and the different companies might also have a gap, so the above data is not accurate, just my rough idea of a watch, so don’t tangle data level, but I don’t feel this range the difference is too big, so the conclusion is about mobile development is still the current industry of relatively high salary.

Why do you feel bad about finding a job

This is also the question of many people. They say that they have sent out many resumes but received no response. They always feel that it is particularly difficult to find a job this year. Here’s why:

**1.** doesn’t know that my readers are interested in the economy. No, my boss is an investor, so I learned a lot from him. Since the second half of 2015, China’s economy has been in a very bad situation, with serious losses of enterprises and sharp drops in stock prices. Investors have little cash on hand. Therefore, in the second half of 2016, many companies went bankrupt and their bosses left. If you take a closer look, you will find that the economy of small cities is worse. I have experienced this myself. When I came back home in 2016, many coal mines in my family closed down, the real estate market was uneconomic, the steel factory suffered serious losses, and many people in the village did not have jobs.

** Due to the popularity of mobile development in the past few years, many new training institutions have recruited mobile developers in large numbers. Therefore, in recent years, you will find that there are a lot of people training iOS and Android developers. I can feel it myself, and some of the resumes received are more than before. And relatively speaking, there are more people training iOS, I am also trained, I do not look down on training. Is more and more people, the quality is worse and worse, and now many are falsified resume to job training, so you will find that the fresh graduates without work experience, some people looking for a job is more difficult, because no work experience of primary too much, and now enterprises are also with experience preferred, now no longer like recruit less than people need to develop a few years ago, now optional people a lot, Why should I recruit you before I train you?

However, for some interns and beginners are not without demand, most enterprises still want to recruit some students with solid foundation, strong learning ability, and even some work experience, which may be the lack of many trained people, as for how to obtain work experience without a job?

How to choose

So in conclusion, really don’t alarmist, sink down and learn basic, enhance skills is more important than anything, if you can’t find a job, can only say that you learn is not good enough, or ability is not up to standard, doesn’t mean don’t have the job recruitment, with individual ability not to deny the whole market demand is the behavior of the weak!

A lot of people are torn between Android, iOS, web front end or back end. Although I’m in Android development, I must objectively speaking, there is no difference between, who also don’t know to whom later Android, iOS, who defeated, who also don’t know the web front end or back end after more popular, I can give to your advice is interested in you, don’t struggle too much, well which one can find a good job, First follow your heart to learn, learn a language, and programming language is interlinked, you will have the opportunity to contact other fields, the first important thing is to devote yourself to the career you want to pursue now, eat food is more important than anything else!

Therefore, at present, we should choose our own subdivision field for in-depth research, in-depth understanding of the basic rational content, as soon as possible to the advanced level close to and achieve. , of course, to understand new technology, have an open mind to learn some new technology, don’t start out a new technology is to learn, it will lead to what will be a little what all can’t, of course there is a new technology development process, not immediately popular and a large number of applications it mature a little, so that you will be less on many pit, also do not reject it, Completely ignored and understanding and learning the right way is simple to understand what technology is to solve this problem, what are the advantages and disadvantages are the current development and application of maturity, we still want more captured the essence of technology and the foundation, so the new technology will be easy, of course opportunities suitable to learn it again.

So, find their own positioning and subdivision.

Here I categorize the following:

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 a variety of reverse, disassembly, looking for security loopholes

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, componentized, hot repair development, not limited to self-development and integration development using open source framework

6. System development (Android), not limited to Rom maintenance and FrameWork layer customization requirements

7, graphics and image development, not limited to OpenGL ES, EGL, GLSurfaceView, filter, beauty

8. Small programs/quick applications

Small program is based on wechat, which is a hundred million level of traffic entry products derived, and fast application, fast application is nine mobile phone manufacturers based on the hardware platform jointly launched a new application ecology. Users do not need to download the installation, that is, use the point, enjoy the performance experience of native applications, but personally feel that he has been cool, small program is quite optimistic, Tencent this mountain, wechat this pavilion, you do not want to cool are difficult, but see whether you just need, such as your company has demand, that you can go to study.

There are also new technologies to learn, Flutter and Kotlin, both of which are recommended by Google.

Flutter

Flutter is a new mobile UI framework that Google unveiled at Mobile World Congress 2018 on 27 February 2018 to help developers develop high quality native apps on both ios and Android platforms

As it is released by Google, the outlook is positive.

Kotlin

Kotlin is an official development language recommended by Google. It is interchangeable with Java, simple and safe, etc. It is a static type programming language running on Java VIRTUAL machine, known as the Swift of the Android world. It is designed and developed by JetBrains and open source.

Kotlin can be compiled to Java bytecode or JavaScript, making it easy to run on devices without a JVM.

Conclusion:

The above is the advice I can give you, not necessarily right, but from my own point of view is very pertinent advice, I can help you also with my experience and insights, to help you point out the direction, as to how to go, how to choose, all by yourself!

If you are close to an advanced level and are confident of getting there quickly, work your way up to that level by matching your advanced level skill points with the advanced requirements of the job market. If your level is still entry-level level, or interest is not very high, want to switch early, you can quickly change, because it is too important to work hard in the right direction, here is also recommended not to span too much, here I recommend to big front pier or product direction change, of course, the premise is that you have this interest.

The last

The following is a small series of their own included some Android advanced information, includingAndroid architecture video +BATJ interview topics PDF+ study notes, etcDue to the limited space, here in the form of pictures to show you some. If you need anything, you can use myDownload it for free on GitHubI hope I can help you.

Your support, my motivation; I wish you a bright future and continuous offer!!

Quick Access: Download it here! Sincerity full!!