Filter interviews by
Top trending discussions
ARC (Automatic Reference Counting) in Swift is a memory management system used to automatically manage memory allocation and deallocation.
ARC keeps track of how many references there are to an object and automatically deallocates it when there are no more references.
Use strong reference cycles can lead to memory leaks, so use weak or unowned references to break the cycle.
ARC is the default memory management system in S...
MVVM (Model-View-ViewModel) is an architectural design pattern commonly used in iOS development to separate concerns and improve code maintainability.
MVVM separates the user interface (View) from the business logic (ViewModel) and data (Model).
ViewModel acts as an intermediary between the View and the Model, handling user interactions and updating the data.
Swift provides tools like Combine framework for reactive progra...
I applied via LinkedIn and was interviewed before Aug 2023. There were 2 interview rounds.
I applied via Naukri.com and was interviewed before Oct 2023. There was 1 interview round.
Local data is managed using Core Data framework in iOS development.
Use Core Data framework to create, read, update, and delete local data.
Utilize entities, attributes, and relationships to model the data.
Implement fetch requests to retrieve data based on specific criteria.
Use NSManagedObject subclasses to represent data objects.
Utilize NSPersistentContainer to manage the Core Data stack.
Dynamic UI like Amazon can be created using a combination of responsive design, data-driven content, and user personalization.
Utilize responsive design principles to ensure the UI adapts to different screen sizes and devices.
Implement data-driven content to display relevant information based on user preferences and behavior.
Use user personalization techniques such as recommendations, personalized product suggestions, a...
Encryption and decryption in Swift involves using cryptographic algorithms to encode and decode data securely.
Use common encryption algorithms like AES or RSA for encryption.
Implement encryption using libraries like CommonCrypto or CryptoSwift.
Store encryption keys securely and use secure protocols for data transmission.
Example: Encrypting a string using AES encryption in Swift.
Keychain access in Swift allows secure storage of sensitive information like passwords, tokens, etc.
Use Keychain Services API to securely store and retrieve sensitive data.
Keychain items are stored securely in the device's keychain and are encrypted.
Access keychain items using unique identifiers called keys.
Use Keychain Swift library for easier implementation.
Classes are reference types, while structs are value types in Swift.
Classes are reference types, meaning they point to the same instance in memory when assigned to a new variable.
Structs are value types, meaning they create a new copy when assigned to a new variable.
Use classes for complex data structures or when you need inheritance, use structs for simple data types or when you want value semantics.
Example: class Per...
Grand Central Dispatch (GCD) is a technology in Swift for managing concurrent operations.
GCD allows developers to perform tasks concurrently without having to manage threads manually.
It provides a high-level API for managing tasks and executing them on different queues.
Developers can use GCD to perform tasks in the background, update the UI on the main thread, and more.
I applied via Naukri.com and was interviewed in Apr 2024. There were 3 interview rounds.
Machine test with collection view and api using url session
Objective-C is the older language used for iOS development, while Swift is the newer, more modern language.
Objective-C is a superset of C with Smalltalk-style messaging syntax.
Swift is more concise and easier to read than Objective-C.
Swift is safer due to its optionals and type interference features.
Objective-C has been around longer and has a larger codebase, but Swift is becoming more popular.
Many developers prefer S...
Struct is value type while Class is reference type in Swift. Structs are passed by value while Classes are passed by reference.
Structs are ideal for small data types like coordinates, colors, etc.
Classes are ideal for larger data types like view controllers, network managers, etc.
Structs are immutable by default while Classes are mutable.
Structs cannot inherit from other types while Classes can.
Structs are stack alloca
I applied via Walk-in and was interviewed before Sep 2023. There were 2 interview rounds.
Serialisation in API is the process of converting data into a format that can be easily transmitted over a network.
Serialisation is used to convert complex data structures into a format that can be easily transmitted over a network.
It involves converting objects or data structures into a stream of bytes that can be sent over a network.
JSON and XML are commonly used formats for serialising data in APIs.
Serialisation is ...
Codable is a protocol in Swift that allows for easy encoding and decoding of data types to and from external representations.
Codable protocol is used to convert custom data types to and from external representations such as JSON, plist, etc.
It requires the types to conform to Encodable and Decodable protocols.
Codable protocol provides default implementations for encoding and decoding.
Example: struct Person: Codable { v...
MVVM is an architectural design pattern that separates the user interface code from the business logic and data model.
MVVM stands for Model-View-ViewModel
Model represents the data and business logic
View displays the UI elements and interacts with the user
ViewModel acts as a mediator between the Model and View, handling user inputs and updating the Model
MVVM helps in achieving separation of concerns and making the code
Classes are reference types, while structs are value types in Swift.
Classes are reference types, meaning they point to the same instance in memory when assigned to a new variable.
Structs are value types, meaning they create a new copy when assigned to a new variable.
Classes support inheritance, while structs do not.
Classes can have deinitializers, while structs cannot.
Example: class Person { var name: String } vs struc
I can join within 2 weeks of receiving an offer.
I can start within 2 weeks of receiving an offer
I need to give notice at my current job before starting
I have some personal commitments that I need to wrap up before joining
based on 1 interview
Interview experience
based on 3 reviews
Rating in categories
Software Engineer
124
salaries
| ₹0 L/yr - ₹0 L/yr |
Software Developer
43
salaries
| ₹0 L/yr - ₹0 L/yr |
Senior Software Engineer
37
salaries
| ₹0 L/yr - ₹0 L/yr |
Business Analyst
36
salaries
| ₹0 L/yr - ₹0 L/yr |
Team Lead
22
salaries
| ₹0 L/yr - ₹0 L/yr |
TCS
Infosys
Wipro
HCLTech