Lenskart iOS Interview Experience (2023)
Hey all, here’s my interview experience for Lenksart. So there are usually 3 technical rounds, the first being a screening round.
I applied through LinkedIn and received a mail with the required details from HR, after which I received a call from HR to schedule the first round.
Round 1: Screening round
This was a telephonic round, all of which were theoretical questions on the basics of iOS. Since it was a screening round, a theoretical explanation was expected for each question. Here’s a list of all the questions asked:
- Struct v/s class with examples
- Enums , Case iterative
- Generics, protocols and extensions
- Singleton pattern
- ARC, GCD and Queues
- Higher order functions with few examples which you need to mention which function you would be using
- Git squash, rebase, amend, merge
- Unit testing, explain setUp() and tearDown()
- Push notifications and Rich push notifications
- Extensions in Swift and examples
Round 2: Technical round
This round had majorly iOS-related technical questions with a few Data structure questions.
- Higher order functions — An output would be given and you need to mention the higher order function you would be using. Example: get the sum of elements in this array [-1, -4, -2] to get -7, you would be using the reduce function.
- Memory management for struct and class
- Dispatch queue and dispatch group
- Defer keyword, with output and you need to mention which order would each defer execute in. Refer —
- https://medium.com/p/5af2ca26a013
- https://www.advancedswift.com/when-to-use-defer-in-swift/ - Enum cases and examples
- The lazy var
- Final keyword
- Singleton pattern
- In Data Structures — Find pairs of numbers in an array whose sum is equal to k. Refer: https://www.geeksforgeeks.org/count-pairs-with-given-sum/
Round 3: The final technical round
This is the final technical round post which there would be an HR/Managerial round. This round contains coding and making a small app on the go. This round also had a few basics in Swift.
- The first few questions were basics in Swift — Struct v/s class, static v/s dynamic dispatch, Concurrency in Swift, queues v/s threads, runtime v/s compile time
- How will you print hdfc|icici|sbi using higher order functions, also create a struct:
- Write a custom filter function to filter values in an array
- Git squash v/s rebase
- How do you test private functions in Swift
- Make an app with a label, which generates a random string of 2 words, with the 1st word consisting of 4 letters (as in “good”) and 2nd word of 7 letters (as in “morning”), for every 2 seconds and on the 10th-second display “Good morning”.
That’s all!😊 Drop your questions and suggestions in the comment section.