kotlin pronunciation! Learn about Flutter in 360°, smart people have already collected it!

1. Mastery of Hongmeng's core content

Take a look at how much you have mastered the following Hongmeng knowledge points:

  • Basic environment and development tools

  • Development tool installation

  • Run the development tool to complete the basic configuration DevEco Studio

  • Run the first hello world

  • Run the first page

  • Create page Feature Ability through code

  • Programmatically realize page jump

Most Hong Meng tutorial on the market is limited to the theoretical knowledge to explain, there are few concrete implementation case. Here small for everyone to share a "most comprehensive and most complete system of Hong Meng study notes," notes take you two weeks to thoroughly understand the obscurity technology For the core principle problems and solutions in the development, friends who need this Hongmeng study notes can get a free way at the end of the article!

Technical expert VS management, which way is more suitable for you?

After working for 3-5 years, they have advanced to senior programmers. Many people are beginning to face a question: whether the future development direction is a technical expert or a technical management, which career development path is more suitable for them?

Which route to choose, you must first define what you want. Whether you want to do technology or management is related to goals and career planning. Everyone's actual situation is different, and goals are different. It is recommended to make choices that match your own personality as much as possible and stick to it. Even if the effect is not visible for a while, the effect will always be visible in the long run.

1. What kind of programmer is suitable to be a technical expert?

* The core of technical experts is in-depth and proficient. Familiar with a certain technical field, keep enthusiasm for coding, continue to learn new technologies, and be able to calm down and work on technology instead of eager for quick success. The personality is relatively introverted, not good at communication and coordination, do not want to spend a lot of time leading the team, mainly responsible for the key technology to achieve professionalism , such people are more suitable for the development of the technical route, such as technical experts, architects.

2. What kind of programmer is suitable for transformational technology management?

First of all, we must clarify, what is usually said that technical managers need to do?

  • Team building: staff motivation, team culture, echelon building.
  • Task management: task division, task collaboration.
  • Management planning: research on new technologies, support the reconstruction of new businesses, etc.

Correspondingly, the required capabilities include: reporting upwards and downwards communication capabilities, team management capabilities, personnel training capabilities, upstream and downstream department cooperation and control capabilities, business requirements communication capabilities, decision-making capabilities for major issues, long-term goal planning capabilities, execution capabilities, etc. Wait.

Taken together, the requirements for management capabilities and technical capabilities are quite different. As a technical manager, you should first have a change in role perception. You can't look at the problem from the perspective of a programmer. You need to think about the problem from a higher perspective. It is recommended that mobile programmers who are interested in taking the management route refer to this book: "Becoming a Technology" .

3. The similarities and differences between the two development paths

**(1) Differences: **Technical experts rely more on personal technical capabilities and need to do technical planning, framework design, performance optimization and technological innovation in combination with business; technical managers assist the team in making products together, responsible for both internal and external teams Organizational communication and mutual coordination.

** (2) The same point: ** After all, we need to face management, but the management work is more and less. Even if you are an architect, you need to lead a technical team.

Therefore, regardless of whether you will follow a purely technical route or a non-technical route in the future, you need to increase your management skills, because it is always necessary to manage communication until the end of the day. When you are at a very high level, but you still don't deal with anyone, it is rare that you rely solely on your personal ability to contribute.

4. If the choice is wrong, is there a second choice?

I think we need to think about career goals and career plans first, as frequent changes have a greater impact on careers.

**(1) Technology transfer to management: ** It is necessary to master relevant management knowledge in advance and make changes in role recognition, think about problems with the team as the starting point, learn more about the business, increase the influence of the department, and be appropriate The promotion opportunities can be transformed.

**(2) Switching management back to technology: ** If you are faced with many inter-departmental communications and feel inappropriate in terms of personality and other factors, you need to make a decision as soon as possible and switch back to technology development.

Under the trend of big front-end, how can mobile programmers stay competitive?

I extracted the job description requirements of some first-line companies from the recruitment website:

More than 3 years of work experience, in-depth understanding of the underlying and principles of the mobile terminal, independent leadership or development of more than one product core project, rich project experience or management capabilities, practical experience in React Native or Weex, and master some front-end development technologies, HTML / JavaScript / CSS etc. Front-end and back-end development experience is a plus.

It can be seen that the market has higher and higher requirements for Android programmers. In addition to a thorough understanding of the underlying principles of Android, there are also requirements for technologies such as front-end JS.

Today we have entered the era of terminal fragmentation. In the 12 years since the iPhone was released in 2007, smart phones have shown no signs of being replaced. However, innovation continues, such as smart watches, TVs, glasses, VR headsets, etc. It is conceivable that such devices will continue to increase.

These new devices are also new platforms, similar to smart phones, third-party applications can be installed, and these platforms basically support browsers or embedded browser engines. Early Hybrid and later React Native and other explorations, in the development of display terminal applications, front-end development has become a necessary technology.

** Therefore, the big front-end trend for mobile programmers ** impact is the new mobile development technology stack.

As mobile devices are mainstream terminals, their application development technology should also be the most concerned technology of the big front end. In the past, the mobile development technology stack was dominated by native development, but the current trend is that cross-platform technology is becoming more and more intense.

So, in today's fast-changing environment, how can mobile programmers stay competitive?

First, strengthen the in-depth reserves of Android / iOS technology, deeply understand the underlying principles of the system, and continue to invest in new technologies.

Secondly, gradually improve the front-end technology stack, expand its breadth, and be familiar with front-end JS, as well as cross-platform frameworks such as RN and flutter.

Choose Android subdivision areas and improve, such as application development, reverse security, audio and video, Internet of Vehicles, Internet of Things, mobile phone development, SDK development and smart TV box development, etc., choose one of them and continue to deepen.

Learn to share

In the current era of information sharing, many resources can be found on the Internet, depending on whether you are willing to find or find the right method.

Many friends are not without information, most of them have dozens or hundreds of Gs, but they are messy and they don’t know how to look from where to look, or even forget after they look.

If you feel that the information you find on the Internet is very messy and out of structure, I will share a set of it with you. It is more systematic, and I usually study it myself.

2021 The latest tens of thousands of pages of real interview questions

Seven module learning materials: such as NDK module development, Android framework architecture...

Only systematic and directional learning can quickly improve their skills within a period of time.

This system study notes is suitable for the crowd:
**First, **The learning knowledge is relatively fragmented, and there is no reasonable learning route and advanced direction.
**Second, **Development for several years, I don't know how to go further and I am confused.
Third , at the right age, I don’t know how to develop, transform management, or strengthen technical research. If you need it, I happen to have why, don’t come to receive it! Maybe it can change your current state!
Due to the large content of the article, the length of the article is not allowed, and part of the unshown content is displayed in the form of screenshots. If you need to get complete documentation, please click on my GitHub to get it for free.

%BF%99%E4%BA%9B%EF%BC%9F%E5%A6%82%E4%BD%95%E9%9D%A2%E8%AF%95%E6%8B%BF%E9%AB %98%E8%96%AA%EF%BC%81.md) Get it for free. **

Guess you like

Origin blog.csdn.net/CHAMPION8888/article/details/112902098