-1

I am curious from the perspective of the interviewee.

For example, in addition to iOS specific subject matters such as manipulating views, delegation/protocols, etc, should one be also expected to answer questions about general CS topics like heaps, hash tables, binary search, merge sort, Big O time/space and etc?

Thanks!

closed as too broad by Philip Kendall, keshlam, cdkMoose, gnat, Kilisi Jan 25 '17 at 7:07

Please edit the question to limit it to a specific problem with enough detail to identify an adequate answer. Avoid asking multiple distinct questions at once. See the How to Ask page for help clarifying this question. If this question can be reworded to fit the rules in the help center, please edit the question.

  • Voting to close as company-specific: there is no global "iOS developer interview". Some companies will want deep knowledge of algorithms, some will care a lot less. – Philip Kendall Jan 24 '17 at 22:39
  • And for most companies, it depends in part on precisely what they need this development position to work on. – keshlam Jan 24 '17 at 23:28
  • Voting to close, regardless of the technology, different companies have different questions they will ask during interviews. – cdkMoose Jan 24 '17 at 23:36
  • 4
    Just because they ask, does not mean they expect you to know it. For example, suppose they ask the time complexity of <insert algorithm here> which you don't know. They might be asking to see if you are the type that is going to admit 'I don't know' gracefully or not. – Brandin Jan 25 '17 at 0:18
  • Hey all - I appreciate the feedback. I should have restated my question as-such: I curious about the general landscape of what is asked in iOS developer interviews, including whether proficiency questions about general CS is covered. There definitely isn't any sort of global "developer interview" - all companies are different in their own regard. – daspianist Jan 25 '17 at 5:00
1

Nobody sane will ask you about hash tables or binary search - if they are technical, they will ask about GCD vs operation queues, about blocks or closures and how to handle async operations, about dictionaries, Swift and optionals, http vs. https, localisation. Less technical, if you can handle in-app purchases and subscriptions, whether you know Git, Jira, Pods, and so on. Computer science? No.

  • Thanks for the insight! This is very helpful in terms of understanding the general landscape of the topics covered in situations such as the interview. – daspianist Jan 25 '17 at 4:57
  • 1
    I've interviewed people for iOS roles and one of my questions has sometimes been along the lines of "Broadly speaking, how does a hashtable work?". – J Bramble Jan 25 '17 at 9:27
4

Some companies will put you in front of a whiteboard and ask detailed technical questions like the ones you listed. Sometimes this is to see if you know your stuff, and sometimes it's just to evaluate how you handle yourself in technical discussions under pressure.

Other companies will ask more general technical questions, like "how would you go about storing and displaying a list with over 1000 entries?" They aren't interested so much in implementations of sort algorithms, but rather in hearing how you think and solve problems.

In my experience the latter is much more common than the former. In my opinion, the latter is also much more valuable than the former.

It's not unreasonable to call/email your point of contact with the company and ask what to expect from the interview in terms of technical depth. In general, though, companies do not expect you to prove that you know very detailed information that most employees would not know off-hand.

  • 1
    I was once the interviewer where we had given the candidate a very similar problem to what you described. In his solution he decided to implement his own sorting algorithm, while noting that he wasn't sure how good it was. The only thing I could think was "Then why didn't you just use the 'sort' in the standard library and move on?" I don't need a developer that knows how to write 'sort', I need one that can think through new and interesting problems. I hope most employers work the same way. – Seth R Jan 26 '17 at 6:08
3

There's not a standard set of questions that the community has agreed to ask in a particular field such as iOS, Windows, Linux or Web development. A company will ask you whatever they feel is necessary to determine if your personality and skills are the correct fit for the position and company.

Perhaps they want to see if you have a good foundation in computer science because they value that in their culture or occasionally work on projects where high optimization is important. If everyone on the team has a degree and enjoys wine tasting for example, it might be beneficial to hire someone similar.

Not the answer you're looking for? Browse other questions tagged or ask your own question.