Written to fresh graduates: Is client development really going to be discouraged?

Recently I looked at Maimai again, and there were a lot of voices urging clients to quit. for example

Insert image description here
Once something rhymes, it seems to make sense.

After searching out of curiosity, something is indeed wrong:

Insert image description here
Insert image description here
After reading a few posts, I summarized the reasons for quitting as follows:

  • Client development is in decline and the job market is shrinking
  • The front end takes away a lot of work from the client
  • (For client + front end) The ceiling is low and it is difficult to achieve high level
  • Nowadays, the client interview questions are very difficult and very difficult.

It is a fact that client demand is shrinking.

The boom in mobile Internet entrepreneurship has long passed. On the one hand, there are not so many new startups emerging. On the other hand, the Internet is also showing signs of winner-take-all. Big companies are getting bigger, and the living space of small companies is getting narrower. The good thing about knowing what weak is and being able to write a TableView and getting an iOS development offer of 15k is gone.

However, whether a market is a buyer's market or a seller's market is always determined by both demand and supply. The supply of technical talents lags behind the demand. From the time when demand in a field is booming to when a large number of newcomers learn to enter this field, there will be a time lag of several months to several years. Maybe demand is changing faster at this time, the hot market has passed, and new entrants will face difficulties. For example, in 2015, when the mobile Internet was the hottest, many people went to learn iOS development. Then the 2015 stock market crash occurred. Landlords had no surplus food, and start-up companies went bankrupt without investors. After the new year, these newcomers to iOS discovered:

Insert image description here

But thinking about it conversely, the field of client development has experienced such a round of highs and lows, and no one is willing to learn it now. However, the demand in the market has not disappeared, and many major manufacturers still need clients. As a result, a reversal in the market situation ushered in. Many large companies had to try their best to recruit fresh graduates to work as clients. The supply exceeded the demand, so they had to relax a little when recruiting, and the requirements were lower than in previous years. Isn't this an opportunity?

Some people worry that even if they get on the bus now, the road to the client field will become narrower and narrower in the future. As mentioned in point 2, the front end takes away a lot of work from the client. Developing native clients requires developing an App for iOS and Android, which is indeed more expensive. The business of many companies can be fully carried out with small programs.

In fact, there is a very interesting phenomenon in the mobile phone platform. Unlike the desktop platform, most applications have shifted from the client to the Web. Nowadays, everyone uses computers. In addition to professional software such as Office three-piece suite and Adobe Family Bucket, they also spend most of their time using browsers. But mobile phones are different. Everyone uses apps every day, and mobile browsers are not used much.

Personally, I feel that this difference is mainly due to the difference in human-computer interaction between mobile phones and computers.

Information input on the computer mainly relies on the keyboard and mouse. Mobile phones are much richer, with touch screens, cameras, microphones, and abundant sensors such as GPS, barometer, and gyroscope. To make good use of the information provided by these hardware, it is necessary to access various APIs provided by the mobile operating system. In this scenario, the Web is far inferior to native. For example, if you want to make an application that needs to process audio and video input, you can only use native.

On the other hand, users mainly rely on touch screen operations on mobile terminals, and the experience of gesture operations on web pages is not as good as native ones. In addition, the entrance to the Web is the URL. Using the soft keyboard to enter the URL on the mobile terminal is far less convenient than the PC keyboard.

Therefore, the Web on the mobile side is more suitable for applications that emphasize display and light interaction, such as e-commerce and takeout. However, applications that emphasize interaction and need to process multimedia information will choose native applications, such as short videos.

In addition, there is always a certain gap between the interactive experience of the Web and the native one, so major manufacturers that value experience and are not sensitive to costs will not give up native development. Facebook once tried to implement a pure Web App, and later returned to native development. On the contrary, large manufacturers will invest a lot of manpower to optimize the experience. In addition to demand development, they will devote manpower specifically to performance optimization, stability, architecture, security, infrastructure, etc. There is considerable technical depth in each direction for you to explore.

Therefore, for fresh graduates, if they aim at a first-tier manufacturer, the scale of client demand is not a problem.

Let’s talk about the ceiling issue. It is said that in Alibaba, P8 and above backends account for the majority, which indeed gives people a feeling of low client ceiling.

But Alibaba’s situation has its own business characteristics. Alibaba is engaged in e-commerce. The complexity of the e-commerce system lies in the processing of complex business logic such as orders, inventory, and payment, and the challenges of high concurrency. These parts are processed by the backend. The frontend/client is just the entrance for user operations. It is reasonable for big guys to use more backends.

But for some business types, such as short video apps, a large part of the complexity lies in the user's creation and viewing experience (and of course the back-end video services, concurrency support and recommendation algorithms). This part is supported by the client, especially It is video shooting and editing, which is quite complex. Therefore, in the short video team, the importance of the client is much more important than that of the e-commerce team. This kind of team client development will have more opportunities to move to a higher position.

To be honest, there are only a few people above P8, and most people don’t need to think so far.

Speaking of the last question, how difficult is the client’s social recruitment interview?

  • It may be a cognitive bias. Isn't it difficult to interview front-end and back-end in big companies?
  • As mentioned above, the demand for clients from second- and third-tier companies has indeed decreased, so large companies are mainly recruiting in the market. So in a statistical sense, the overall difficulty has indeed increased, but the difficulty of interviews with companies at the same level is not necessarily the same.
  • It is indeed more difficult than in 2015, but the situation in 2015 is not the norm.

Having said all this, I personally feel that the client is definitely not as big a pit as those who want to quit are saying. On the contrary, it is a good opportunity for current graduates to enter a big factory. Many major factory recruitments do not require any client development experience, as long as you have solid basic knowledge and passing coding skills.

Finally, I would like to share the answers to the collection of mid-to-high-level Android interview questions compiled by Byte Boss. You can get them directly at the end of the article.

Chapter 1 Java

  • Section 1 Java Basics
  • Section 2 Java Collections
  • Section 3 Java Multithreading
  • Section 4 Java Virtual Machine

Insert image description here

Chapter 2 Android

  • Section 1 Related to the four major components of Android
  • Section 2 Android asynchronous tasks and message mechanism
  • Section 3 Android UI drawing related
  • Section 4 Android performance tuning related
  • Section 5 IPC in Android
  • Section 6 Android system SDK related
  • Section 7 Third-party Framework Analysis
  • Section 8 Comprehensive Technology
  • Section 9 Data Structure
  • Section 10 Design Patterns
  • Section 11 Computer Network Aspects
  • Section 12 Kotlin aspects

Insert image description here

Chapter 3 Audio and video development high-frequency interview questions

  • Why can a huge original video be encoded into a very small video? What is the technology involved?
  • How to optimize the instant start of live broadcast?
  • What is the most important role of histogram in image processing?
  • What are the methods of digital image filtering?
  • What features can be extracted from images?

Insert image description here

Chapter 4 Flutter high-frequency interview questions

  • Section 1 Dart part

    • Features of Dart language?
    • Some important concepts of Dart?
    • Is dart pass by value or pass by reference?
    • How does Dart multitask in parallel?
    • Tell me about the mixin?
  • Section 2 Flutter part

    • What are the features of Flutter?
    • Life cycle in Flutter
    • What is the relationship between Widget, element and RenderObject?
    • What is the relationship between mixin extends implement?
    • What is the relationship between Flutter and Dart?

Insert image description here

Chapter 5 Algorithm High Frequency Interview Questions

  • How to find prime numbers efficiently
  • How to use the binary search algorithm
  • How to efficiently solve water connection problems
  • How to remove duplicate elements from sorted array
  • How to perform modular exponentiation efficiently

Insert image description here

Chapter 6 Android Framework

  • Section 1 System Startup Process Interview Questions Analysis
  • Section 2 Binder interview question analysis
  • Section 3 Handler Interview Questions Analysis
  • Section 4 Analysis of AMS Interview Questions

Insert image description here

Chapter 7 174 common interview questions in companies

  • 1.SD card
  • 2.Android data storage method
  • 3.BroadcastReceiver
  • 4.What are the consequences of frequent sp operations? How much data can sp store?
  • 5.The difference between dvm and jvm
  • 6.ART
  • 7.Activity life cycle
  • 8.Can Application start Activity?
  • 9.What are the statuses of Activity?
  • 10. Activity life cycle when switching between horizontal and vertical screens

Insert image description here

If you need it, you can scan the QR code to get it for free.

Guess you like

Origin blog.csdn.net/Eqiqi/article/details/132855104