I have recently attend Hike Hiring Drive for iOS Developer in Delhi office. Candidates are 0-2, 2-4 and 4+ years of experience . I have got referral from recruiter on LinkedIn .
Round 1: Mobile App – (1:30 hour ) They have provided Flickr Api, task is build iOS App that fetch images using search bar input and display the images . Make sure UI should not blocked, mulitple request handling while user typing, code structure, pagination and readability and image caching is plus if you have implemented .
I have build the app in 50 minutes – Link to see https://github.com/Vasu05/Hike-Messenger-Hiring-iOS-Test
After the completion of app, My App is reveiwed by iOS manager .He was cool and friendly .He asked model structure I’ve followed, there is crash in my app, asked me debug and I did , told him the crash reason . He asked about GCD , asked for code optimization .He asked how to detect if user scrolled bottom of page . He inspect the app thoroughly, he was typing, cancelling, clearing data to see behaivour of app. He was impressed since I’ve build all the major features with code optimization . Then we have discussion on current projects I’m into, what I have built in past .This reveiw round was around for 1:20 hr . He asked me to have a lunch and wait for second round .
Round 2: DS Algo (30 min) –
- Find two elements with sum equal to value x in Array.I did it using hashmap .
- Is Tree is BST or Not.
- LRU Implementation
- Discussion on threads handling in iOS
Proper code was required, they have given enough time to think and asked for better approach . I code all three on board with explanation . Interviewer was impressed, asked me wait for another round .
Round 3: This round was supposed to taken by Vice President of company but he was busy with another candidates so another lead come and asked me for another round . He asked two questions
- Detect loop in linkedlist and remove the loop.
- get merging point of two linkedlist.
Meanwhile I was writing code for second questions on paper, he said he was done with interview and asked me to meet VP for further round .
Round 4 : This round taken by VP of company . He gaves introduction, what he did, what they are focusing on and talk about how they are different from another messaging apps in market . He asked me whether you prefer pen and paper or writing on screen, then he asked me come to board, it was samsung TV where i supposed to write code with pen . He asked –
- Infinite stream of words you have to tell k most occuring words . I told him approach with heap and trie, he asked me use another data structure for searching, i gave him ternary tree apporoach still he was expecting better and gave me hint to use map then gave solution using heap and hashmap . He asked me to code .
- check wether binary tree is min heap or not . He left the room and asked me think optimise solution . He comes after 30 minutes break in between i’ve written properties of binary tree and heap then write code for checking tree is min heap or not .He was satisfied .
- He gave me design question – he asked me build sticker search option while user is typing . I told him about memory caching he asked me what all typing of caching we can used . I told him there is App cache maintain by app, disk memory and network memory . I have made diagram how search query will work step by step . Then we have discussion on multiple characters handling when user typing, I said we can use timer to process new request . Then he asked me main thread should not be blocked while user interacting with screen . I told him to use GCD’s and we have long discussion on this . He was satisfied, it was long round, he was helping me when I’m stuck . Then we discussed about company culture, whether he still code, how he started with Hike messenger . He asked me to wait for another round .
- There are many another questions which I’m not remember .
This round goes for 1:40 hour .
After All this i was very exhaused since I have given all question correctly this continous evaluation was starts from 10:30 in morning .
It was around 5:30 when they scheduled another round of interview .
Round 5: Interviewer scanned my resume, aksed me for brief introduction.I explained him my current company projects and college projects. He was senior backened developer . He starts asking me Java questions . I told him I was not able in touch with since 1.5 years still he asked.
- write code for 1 writer and n reader problem . I told him we can use locks (mutes and semaphore) and gave him solution .
- He asked virtual pointers – I told him I don’t remember .
- Stack vs Heap Memory . I gave him explanation with example .
- Singleton class, why we are using this . He was not satisfied with explaination .
- He asked basic java questions like what public, private, why there is single main function in Java .
After all this recruiter asked me to leave and next day they said last round was not as per expectation . I’m not selected. Tips – prepare your interview like college placement, they can aks anything even if its not related to your hiring post .
- Hike Interview Experience | Set 6 (For SDE)
- Hike Interview Experience
- Hike Interview Experience | Set 5
- Hike Interview Experience | QA Profile
- Bharti SoftBank (Hike) Interview Experience | Set 1
- Bharti SoftBank (Hike) Interview Experience | Set 2
- Bharti SoftBank (Hike) Interview Experience | Set 7 (For SDE)
- Bharti SoftBank (Hike) Interview Experience | Set 3 (For SDE 1)
- Bharti SoftBank (Hike) Interview Experience | Set 6
- Bharti SoftBank (Hike) Interview Experience | Set 4 (Off-Campus for SDE1)
- Bharti SoftBank (Hike) Interview Experience | Set 5 (Off-Campus for Portal Team)
- Goldman Sachs Interview Experience | Set 23 (2+ years Experience for Java Developer Role)
- Microsoft Interview Experience (Full Time 2018 Washington DC - with 2.5 years of experience)
- Brocade Interview Experience | Set 2 (For Software Engineer 0-2.5 Years Experience)
- Arcesium Interview Experience | Set 5 (3+ years experience - Developer profile)
If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to email@example.com. See your article appearing on the GeeksforGeeks main page and help other Geeks.
Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.