God-level Android Daniel should have 27 categories of technical knowledge and the corresponding salary range

Android developers should learn what technology can become a big cow? Android developers should do the students know, Android covers too much knowledge and too complex, so that people learn Android development a little less than two monks touch feeling of the mind, learning for a long time is not clear from their level in the end Daniel also far worse.

If you find the article useful please help point a praise or attention, encouragement for me, insisted on writing!

Recently retired and sit all right to think carefully about finishing a big cow Android in the end what technology should be. Let you pay correspond to the social value of their current technical capabilities have a clear reference . But also on the development of Android macro tidy categories of knowledge, some students learn a little Western East that knowledge can not develop into a system. After reading this article you will clearly know any technical knowledge to develop Android later learn is what makes up part of your technology gaps.

God-level Android developer Daniel should have 27 categories of technical content, all can grasp rampant the world.

Android developers need to know the primary technologies:

The primary definition of R & D engineers is to master the basic knowledge of Android, to complete a separate function, work experience probably 1--2 years, the level of most people by looking at books and then after some of the information project practice soon be reached. This level often need to have some of the following skills:

  • Android to master the four components of knowledge, in-depth understanding of the relevant life cycle, for the common development of knowledge Application, Fragment, Intent must be mastered.
  • Android to master the basic layout and controls properties and use common layout has LinearLayout, RelativeLayout, ConstraintLayout and other controls have TextView, ImageView, RecyclerView, ScrollView and so on.
  • Resource access to Android using basic understanding about Android in different countries, languages, the screen adaptation principles for API.
  • Master system services and the use of tools like android, a basic knowledge of the access network and database operations.
  • Familiar development tools, such as IDE, simulator, network agents and logs.

The main technical content above the hold of all, can be said to be basically a "old bird" Android engineer the primary level. 7K monthly salary tier cities is not a problem, can be higher (depending on the technical mastery requires self-+ luck + + + courage industry environment). But our goal is to architect / development experts, in order to continue to improve, you also need to master the technical content below.

Intermediate Android developers need to master the technology:

My definition of mid-level engineers are able to skillfully complete function outside the R & D, but also need to have some common principles of open source libraries, and modeled on the open source library to create the wheel practice. Most of the people working at this stage 3--5 years, business development capability skilled, encounter any problems can be resolved at this level often require the following skills:

  • SOLID familiar with the basic design principles to master the 23 design patterns.
  • For R & D language features java / kotlin-depth understanding, such as reflections, dynamic proxy, apt and so on.
  • Android has a basic understanding of the architecture, with extensive knowledge of the structure and packaging apk principle.
  • For each version of Android has a basic understanding of the characteristics, such as the MD design, rights management, doze mode.
  • Proficiency in a variety of research and development debugging tools such as git, gradle, mat, layout inspector and so on.
  • Master Handler, AsyncTask principle, familiar with multi-threaded development.
  • Preliminary understanding of the drawing page system principle, be able to implement a complex custom control.
  • Can master the use of open source library, such as gallery (Glide, Fresco), network library (Volley, okhttp, Retrofit), tools (Dagger, RxJava, EventBus) and the like, can be encapsulated into the common library.
  • Familiar with the application of common optimization method, a memory leak to avoid writing code.

Armed with the above techniques, can tier cities monthly salary of 15K or more (depending on the technical mastery requires self-+ luck + + + courage industry environment). But want to become a big cow, that's not enough! Yes, you heard wrong, but also learn so much is not enough! ! !

Android developers need to master advanced technology:

For advanced, it is not limited to the functionality and business development, also requires in-depth understanding of the operating principle of the Android system, to achieve mastery, as part of Android could be enough to end the architect. Most of the people working at this stage 5--8 years, with the open source library design capabilities, while operating principles for the Android system is also more understanding.

  • Master java advanced features, such as JUC, thread pools, NIOBIO etc; jvm virtual machine to master knowledge, such as memory model, GC principles, class loading mechanism, threading model.
  • Android-depth understanding of the operating environment, understand the Android sandbox mechanism, grasp AIDL Binder principle and the principle of communication, understanding and app activity starting principle.
  • Hot Fix grasp the principles, advantages and disadvantages of the major manufacturers program.
  • For Android-depth understanding of the event distribution, master key touch event mechanism.
  • Android draw depth understanding of the principles, mechanisms and understanding VSYNC and surface window principle.
  • Android-depth understanding of animation principles, including tween and property animation.
  • Android security mechanism for basic knowledge, comprehension Android security principles.
  • End-depth understanding of the design paradigms of thought, such as mvc, mvp, mvvm, clean-arch and so on.
  • Understanding the evolution of architecture, a good split and layering ideas, master modular, plug-ins, dynamic deployment.
  • Sensitive to new technology, understand and grasp the dynamic feature such as next-generation architecture.

If you reach this level, congratulations, you have more than about 70% of the people, won the 30k salary, let alone completely , but again if further, such as architect / development experts, so in addition to some of the core principles of understanding of Android, architecture design also need to have ability to see things from a higher level, to understand the design of the entire system.

Android development experts need to master the technology:

As development experts, so in addition to some of the core principles of understanding of Android, also we need to have architecture design capability to look at the problem from a higher level, to understand the design of the entire system.

  • Understanding of micro-services, SOA thought, back-end development for certain covered.
  • Understanding of front-end development tools and ideas, we know vue react other R & D framework.
  • Depth understanding of cross-end technologies, such as phonegap, weex / RN flutter, applets fast applications.

To meet the requirements of this stage, the architect / development specialists did not have to run, there is a monthly salary starting salary of 40k, while you are answering in the technology group, Chit, other people a big cow, on the one hand others for their technology a recognition, on the other hand, it sounds really had enough of the addiction ~ (I did anyway, this is indeed a true portrayal of the heart, manual funny look)

In addition to the technical content of the above-mentioned, on this basis, there is a more important, is a wealth of experience in the development, business cases, manufacturers experience, team experience, management experience.

Here I will list on the technical level, talk about how to achieve efficient advanced.

How highly efficient advanced technology?

I particularly admired a easiest way, of course, is indeed the most efficient: mind maps + data + video

Benchmarking Ali P7, Tencent T3, the annual salary of 40W + senior enterprise architect skill growth path

This is a " benchmarking Ali P7, Tencent T3, the annual salary of 40W + senior enterprise architect skill growth path ", with it you can do it efficiently, you reach 40W pointing system of annual salary, of course, you can also according to the above knowledge conduct leak filled, to improve their competitiveness.

In order to correspond to the outline of this technology, I've come to find a few of my architect friend and I spent a full three months to put together a collection Android studying architecture PDF + Video + Interview + document source notes , as well as Android developers interview thematic information, senior advanced schema information , mainly for senior architects need to learn to raise the level of the students, free to share here, I hope to help you break through the bottleneck, promotion and pay rise, manufacturers switched into

If you have a need, you can point like + comment , concern me , click here or add Vx: 15388039515 (Note CSDN, need information)

Published 200 original articles · won praise 83 · views 70000 +

Guess you like

Origin blog.csdn.net/weixin_45258969/article/details/104535898