Hacker News new | ask | show | jobs
Ask HN: Good iOS Interview Questions
9 points by mitchf 4797 days ago
I need some help crafting some better iOS interview questions.

These are the questions I've been asking, but I feel they are too beginner/intermediate. Need some more advanced questions to find the top talent.

* Explain what ARC is and how it works? * Why does your app crash when the device is low on memory? * What is a retain-cycle and how do you find and fix them? * What is fast enumeration? * How many bytes can we send to apple push notification server? * Describe the flow of push notifications? * What is the difference between retain & assign? * Explain the difference between a category and a protocol? * What is Delegation in iOS? * Assume that your app is running in the foreground but is currently not receiving events. In which state it would be in? * What are some distribution options for iOS apps? * What's the process for publishing to the App Store? * What does it mean to call objective-c a messaging language?

I appreciate your feedback!

4 comments

What are four uses of categories and what other construct can you replace each of them with (bonus: when should you replace them with those constructs)?

Explain the interior pointer problem, when it applies, and what you can do about it.

Describe what happens in objc_msgSend, and give two reasons why it's implemented in assembly rather than C.

How would you implement NSMutableSet?

Explain the proper uses of (__bridge), (__bridge_retained) and (__bridge_transfer) casts.

Explain all the important differences between direct ivar access and access through a property, under MRC and under ARC.

When should you use +/-conformsToProtocol: instead of +/-respondsToSelector:?

How would you implement toll-free bridging?

Just a few off the top of my head, hope this helps:

- Explain the relationship between a UIView and a CALayer

- When it comes to animation, what are the differences between animatable properties on a UIView and a CALayer.

- How would you go about creating an UIImage and using Core Graphics primitives outside of a drawRect method.

- When initializing ivars in a UIViewController being used in a XIB or Storyboard, which method would you want to override?

- Walk through the flow of a UIVIewController. What methods get called and in which order?

- How would you check to see if an object implements a protocol?

- What is KVO? Give an example of how to use it.

Write a doubly linked list in C#. (I shit you not, I had a large consultancy interview me for an IOS position and this was the one interview question that they asked).
Maybe they had Xamarin in mind when they asked you that: http://xamarin.com/monotouch
Strange, did you ask their reasoning by chance?
If the interviewee has an app in the App Store, a good option might be to let them tell you about the technical details. Go over their code and ask them to explain everything. In the right situation, this may be a good section to add on to the questions you already have.