Android development steps! The analysis of the interview questions has been organized into a document, and the real question of Dachang is attached.

Preface

Before, I always watched Java friends show off his core knowledge and some notes. Really, there is no turbulence in my heart, only a little bit of sourness.

In fact, Android development also has a lot of knowledge points. I have always wanted a note on Android core knowledge points to help me find out the missing points. Then I thought about it. In the past two years, everyone has been talking about the cold winter of the Internet, and there are always rumors about Android. The development is about to get cold, I don’t think I can wait for someone to send me the core notes. Will someone do it in this big environment...

I can't wait for someone to deliver the information

Since then, since the beginning of this year, I started to use the resources (friends) around me to invite an Ali P8 big cow to have a meal during off-hours (I won’t tell you how excited I was at that time). Months finally got this hard-won Android development core knowledge notes...

It took me 1 month to finish reading this information, and I have to sigh that a big cow is a big cow. The knowledge inside is very systematic and comprehensive. On the one hand, this information can help us consolidate our knowledge. On the other hand, it can also help us build and improve the knowledge system. At the same time, it can also be used to communicate and discuss with everyone. Finally, we hope to learn from each other. Make progress together!

1. Introduce yourself. Self-introduction is actually a more critical process, which basically determines what questions will be asked in the follow-up links and the initial rating and positioning for you (as an interviewer for countless candidates, this is subjectively personally considered). The main point of self-introduction is to focus on one or two recent projects that you have mainly participated in or been responsible for, and emphasize the roles you have undertaken and the specific things that the roles you are responsible for. The thinking must be clear.

2. After the interview is over, basically the interviewer will ask questions or communicate with each other about the unresolved or doubtful questions he is good at. Because the interview is an architect, so pure technical issues (such as aop, bean life cycle, basic jdk concurrency, common caching methods, etc.) have not been asked, and directly focus on the specific architecture and business issues in the project. discuss.

For example, the overall structure will ask why I use F5 and LVS instead of others. Asked about performance, how to troubleshoot, general answers (for example, I said to look at the foreground or the background first, the foreground findbugs, chrome f12, the background first to see which server load is high, top, vmstat, sar, etc., if oracle Look at awr, mysql, look at the performance schema. For application servers, look at jstack, jprofiler, etc.) After that, you will generally ask about specific indicators and so on. Basically, if the answer is clear enough, the interviewer will not ask further.

When discussing the rollback of distributed transactions, we communicated that the initiator is responsible for delivering and assigning the ID of the initiator to achieve, repeatable execution of the service and compensation. Another interviewer asked, he must make sure that the value fetched in the cache must be the latest, or can’t be fetched, I said that first delete the cache, then insert the library, and finally insert the cache, there will be no problem, or use Handersocket is implemented, so that there is no problem. Then we talked about the advantages and disadvantages of restful, nginx, rpc framework and architecture. When it comes to MQ, because MQ was studied very early, and later because the company developed a customized MQ, it basically didn’t understand the differences and implementation mechanisms of various MQs. It is enough to directly answer the question if it is not clear. This is actually The problem is not big, everyone will always have weaknesses.

Finally, generally speaking, it seems that the interviewer is a technical background, and he will usually ask whether he is concerned about new technologies outside of work. If the answer is yes, the interviewer usually asks further about which new technologies, which sections of the forum, and for specific details. If the interviewer has contact with the new technology, he will further ask about the characteristics of this technology and its advantages over the present.

Basically, technical interviews will ask about six or seven questions. Generally, they will start from the overview and proceed to the implementation level. This is actually related to the interviewer. Foreigners usually think that the architect must write code. Although his job is not necessarily to write code, he must know how to verify that the architecture he designed is reasonable, rather than just give it to the programmer to play freely.

When some companies or departments recruit architects or relatively advanced developers, usually the interviewer is of non-technical background or technology is not their strong point. At this time, the interview will not be discussed, and it may be asked around the 4+1 model to a large extent. . If the interviewer is good at DB, he may focus on database design.

3. The technical interview ended in about 2 hours. Then, according to the expressions of the two interviewers when they went out, it could be seen that the technical level was basically passed. Then I communicated with the supervisors of the two interviewers for more than half an hour, and finally talked to HR communicated for almost half an hour, and HR responded to the question that they would lower the level of internal communication, and then notified me. It can be considered that it is basically done.

4. The next night I received the notice of personnel receipt, because I was not satisfied with the salary offered, I directly refused, and gave the minimum requirements. The personnel said that they would communicate with the department again. After another two days, the personnel replied that the salary was adjusted according to my requirements. When I came back on May 11, the OFFER was sent.

5. Add one point. As part of the routine, the technical side, the second side, and the personnel side basically ask about our company or other aspects. Do you have anything you need to know or want to ask? Please feel free to answer this point. How do you feel about answering this? The problem is not big, mainly depends on your own understanding of the candidate company or subjective wishes.

At last

This is the end of writing. At the end of the article, I put a small benefit. The following is a learning idea and direction that I compiled during the learning process. When engaged in Internet development, the most important thing is to learn technology and learn. Technology is a slow, long and arduous road. It cannot be learned by a moment of passion or by staying up for a few days and nights. It is necessary to develop the habit of studying hard in ordinary times, and it is more necessary to accurately study the direction to achieve effective learning results.
Since there is more content, only a general outline is provided. If you need a more detailed learning mind map, click here>Android IOC architecture design to get it for free.
There are also free advanced UI, performance optimization, architect courses, NDK, hybrid development (ReactNative+Weex) WeChat applets, Flutter all aspects of Android advanced practical technical materials, and there are technical experts to discuss and exchange Solve the problem.

Android advanced practical technical materials, and there are technical experts to discuss, exchange and solve problems. **

image

Guess you like

Origin blog.csdn.net/m0_52308677/article/details/114194463