To prepare

In fact, I have been preparing for it for a long time. It is not exactly preparation, but I have been summarizing the knowledge of iOS, but THERE is still plenty of time to learn some interesting directions on my own. Coming back from the end of the year, I planned to review and summarize some knowledge.

Read the books, here is not a general read, but a detailed understanding of most of the content, popular point is to use their own words to interpret the corresponding knowledge. “Android development exploration of art” (the book is really good, I repeatedly read the 4, 5 times), the iOS wing “(close to the development use, because had some application development, or simpler to read, read for 2 times), the sword refers to offer (touch feeling an interview algorithm, 70% can be found in the corresponding subject, Just make sure all the questions are handwritten). 4 months intensive reading above books, and other are simple understanding, here will not list, after reading these books, should be able to let you on a level (mom no longer need to worry about my interview…) .

Brush questions, mainly LeetCode (about 300 questions, 3-6 questions every day, stick to it, need more review, because many questions will forget after a period of time), and read some of the website.

Look at other people’s interview experience, mainly on the Internet, here I list two better.

  • 1, iOS customer end test highlights
  • 2, iOS Ali interview questions collection

The CV

A good resume is very necessary, need to highlight your focus and flash point, specific how to write a resume can refer to

IOS interview salary, advanced will you these? (Updated)

CodeKK said resume

Have a good resume, then there’s the CV, is commonly: retractor + BOSS hired + push straight, from the point of me this interview opportunity, three proportion is 2:2:1, if be brushed away also don’t lose heart, big companies now basically each department has its own hr, can deliver more on head and BOSS, one thousand other departments take a fancy to you?

After the interview

Here I only record some questions I have asked (remember), I will not write down the answers, basically can find the corresponding answers on the Internet.

One side

1. Some optimization schemes for iOS

2. What are the most common version control tools

3. Common UNIX commands

4. The importance of C in iOS development

5. The role of source code management tools

Second interview

The second interview is with Eva? Anyway, it should not do iOS, iOS related knowledge is not much, mostly things on the project.

Atomic multithreaded security

Talking about projects, what they did.

Nonatomic is managing its own memory environment

On three sides

I think it should be Eva. I mainly knew about some personal information and some projects. Finally, I asked for the expected salary and gave the offer on the spot.

Well quickly

One side

I asked some questions about database and related operation of SQLite, but I couldn’t help it. I was the only project related to iOS in Huawei, but I was not good at database.

Network related questions, the five layer model of the network, also asked about TCP and TIP, and iOS related long connections, here is a deeper question.

Start iOS related knowledge, visual controller life cycle (view life cycle) memory emergency handling (manually free the memory and member variables of invisible views)

The first one is a pass. Wait for the second one.

Second interview

I asked questions related to the project, which are based on my own project experience. Since everyone’s experience is different, I will not elaborate here.

Set up a scene and how to realize the corresponding functions. Because the department of Kuaishou wants to make social contact, I am asked how to realize the contact page of wechat (including the interaction with the server).

And finally, it’s an algorithm that writes out all the subsequences of arrays

The interviewer in the second interview was Eva of this group, who told me about the current development of this group and the current situation of Kuaishou. As Kuaishou is growing rapidly, it can not only rely on one APP, but also need to make some attempts in other aspects. The task of this group is to make some attempts in some aspects, which is roughly like this.

On three sides

The HR was very kind and asked me about the interview, whether it was difficult or not, and then they talked about my university and postgraduate experience. I just wanted to say that I was “too simple, too naive”. After getting to know me, they only talked about my shortcomings to lower my expected salary. He told me about my salary expectation, added wechat, and asked me to go back and wait. He told me that it would take about 2 weeks to send the offer, because I need to go through various approval procedures, and asked me not to worry.

Kuaishou is a very young company, and its technology still needs to be accumulated. I hope it will not be a flash in the pan like Xiaoka Xiu.

Meituan take-away

One side

1. Ask about the items on your resume and then start asking about the knowledge.

2, Volley source code, in the image caching section has been discussed for a long time, HTTP caching mechanism,

3. The life cycle of the visual controller

4. Database

5, multithreading (NSTread, NSOPeration, GCDA+block)

6. The difference between HTTP protocol GET and POST

7, mobile phone adaptation of some schemes

8. Matters needing attention in real machine debugging and project on-line

Whether static methods can be overridden

The conversation lasted about one and a half hours. At the beginning, I was still a little nervous, but when the conversation began, I was much better. The interviewer spoke a little fast and always needed to be repeated by the interviewer.

Second interview

Reasons for 2 handshakes and 3 waves and why they are needed.

1. What does id and nILL stand for?

2. What happens when you send a message to an NILL object?

3. Differences between processes and threads

Write an implementation of the NSString class

Synchronization and asynchrony in HTTP

We talked about what we did on the project and asked about career plans

As the interviewer in the second interview was not working on iOS, the person who was supposed to interview me had a temporary meeting, so I didn’t ask much about iOS knowledge in this round of interview. However, the interviewer in the second interview kept smiling, so this round was very relaxed and more like discussing questions together.

Finish the interview is already at 4:30 in the afternoon, because on the day of the interview is on Friday, but Friday Meituan meeting is more, so waiting for, 2 face the interviewer about face the interviewer in the meeting, the interview some other time, I still say an interview after this time, just waiting for two and a half hour, during the hr is Daniel told me three face the interviewer.

On three sides

I think iOS does a few good places, and then asked more in-depth questions according to what I said.

1. How does iOS manage resources?

Some of the more important features of Python

3, the network structure of five layers, each layer protocol, because MY network is not very good, also asked some other questions (such as the difference between MAC address and IP address, etc.).

Why did YOU leave the original company and career planning? Because the interview was about 8 PM, you asked me to go back and ask HR to contact me next week. I think I should have passed the interview.

Meituan’s technology is very good, which can be seen from the level of the interviewers, especially in the core takeout department. The office environment is good, but it feels a bit chaotic. I don’t know whether it is because there are so many people in the interview today.

Ali.

Finally find my dreamed of ali for his interview, who can’t let ma father too hard, I delivery is hangzhou Tmall, do virtual reality group (just heard this name feeling and is not consistent with yourself), this is I to after the interview, just know, the interviewer also told me that the demand on the iOS may not many, more is the application of AR technology in iOS, Including OpenGL and other technologies.

One side

Asked me to write some things on the blog, from the idea of the project, to design, and then to the detailed technical implementation, it can be said that everything is covered, because I write the blog or more familiar with, the answer is good.

1. Knowledge of GLSurfaceView, OpenGL, Shader and drawing process.

2. Ask about current projects and specific implementations and optimizations.

3, multi-process communication, Binder mechanism.

EventBus Volley, EventBus, Volley, EventBus

Probably talked for an hour or so, chat can also, basically all answer, middle gave me a lot of advice, don’t understand of place, will also be careful with my explanation, half of the time is actually chat with my products, why this product is good, and what can be done to cater to the market, and how to design the entire product, etc., feel now level with me is not a level, and sure enough, The next day he sent me an email saying THAT I was not suitable for delivery at the moment.

The interview results

In addition to Ali Taobao, other companies have basically got offers.

The final summary

I have some small views on the Internet: with the cooling of capital, the whole Internet market is gradually calm down. IOS app development from the beginning can say a few four components of the noun, can casually write a monitoring event, can get up to ten thousand monthly salary era.

It’s not that jobs are hard to find, it’s that iOS app developer jobs have become more normal, and are no longer the sort of job that requires a lot of skill and a lot of money. Of course, this is not absolute, for senior developers, the market is still relatively short, especially for well-known enterprises to recruit staff, not only requires excellent technology, but also requires high-quality, good education background and so on.

Generally speaking, a high salary can be offered to you, but only if you are good enough, or make the interviewer think you are good enough.

The written test

For students recruited by social media, written exams are not required, but some companies do, such as Toutiao and netease. The written tests are for basic knowledge, such as Python and iOS. There will be no written tests on network and computer. Generally, everyone can answer them.

One, two

In the recent interview experience, there is no big difference between the first and second questions (the company basically has 3 technical aspects, but there are exceptions, my meituan is 2 technical aspects). , basically front-line developers. The main test is whether you have a solid foundation of knowledge and can use it proficiently in normal development.

Can you explain the projects you work on and the knowledge you use?

1. IOS basics

2. Basic knowledge of Python, probably multithreading, thread safety, collection classes, JVM, class related knowledge, etc.

3, iOS some source code reading

4. Excellent third-party framework source code reading

Three, all around

Most companies have three rounds of technology, but there are four rounds of technology, but not many. Many companies record the questions that interviewers ask in almost every round so that they can refer to the next round and avoid asking the same questions more than once. Therefore, in this round of interview, basic knowledge will not be asked.

I’m going to look at it in two ways,

  • 1. Breadth: relatively new technologies (multi-threading, plug-in, etc.), HTTP protocol, database, iOS (generally not asking questions that interviewers have asked before).
  • 2. Depth: It is generally examined by 1 or 2 questions, such as: contribution to the project, optimization done. Design skills, basically not much, depending on the position I’m interviewing for, because I’m interviewing for advanced development, not architecture.

Work highlights and highlights.

HR side

Basically, at this point, you pass the interview. The hr will ask you a few questions about your experience, but the most important thing is to negotiate your salary. In this round, you should have a general idea of your salary, which is usually 20% to 30% higher than your previous salary. However, if you perform well in the interview process, you are not subject to this restriction. Of course, if the company sincerely wants you, even if the salary you want is too high, HR will tell you politely, and will not directly pass you.

As a developer, it is particularly important to have a learning atmosphere and a communication circle. This is my iOS communication group: 642363427, no matter you are small white or big bull, welcome to enter, share BAT, Ali interview questions, interview experience, discuss technology, we exchange learning and growth together!

Article from the network, if there is infringement, please contact xiaobian to delete.