Filter interviews by
Use XOR operation to swap two variables without a third one
Use XOR operation to swap two variables without a third one
Example: a = 5, b = 10. a = a XOR b, b = a XOR b, a = a XOR b. Now a = 10, b = 5
Classes are reference types, while structs are value types in Swift.
Classes are reference types, stored in heap memory.
Structs are value types, stored in stack memory.
Classes support inheritance, while structs do not.
Use classes for complex data structures, and structs for simple data types.
posted on 21 Nov 2023
My capabilities align with the current project requirements, including expertise in Swift, Objective-C, and experience with integrating third-party libraries.
Proficient in Swift and Objective-C programming languages
Experience with integrating third-party libraries and APIs
Strong understanding of iOS design patterns and best practices
I applied via Approached by Company and was interviewed in Aug 2023. There were 2 interview rounds.
Atomic means thread-safe access, non-atomic is not thread-safe
Atomic ensures that a property is always fully set or retrieved, while non-atomic does not guarantee this
Atomic properties are slower due to the overhead of ensuring thread safety
Non-atomic properties are faster but can lead to data corruption in a multi-threaded environment
SSL pinning is a security measure to prevent man-in-the-middle attacks by associating a specific SSL certificate with a particular app.
Implementing SSL pinning using public key
Implementing SSL pinning using certificate
Implementing SSL pinning using hash of certificate
I applied via Naukri.com and was interviewed in Nov 2024. There was 1 interview round.
Types of jobs in Kotlin coroutine include launch, async, withContext, and runBlocking.
launch: starts a new coroutine without blocking the current thread
async: starts a new coroutine and returns a Deferred object with a result
withContext: switches the coroutine context within a coroutine
runBlocking: blocks the current thread until the coroutine inside it is completed
Flow is a cold asynchronous data stream, Channel is a hot asynchronous data stream. StateFlow is a hot asynchronous data stream with a state, SharedFlow is a hot asynchronous data stream without a state.
Flow is a cold asynchronous data stream that emits values one by one.
Channel is a hot asynchronous data stream that can have multiple subscribers.
StateFlow is a hot asynchronous data stream that retains the most recent ...
Flow lifecycle aware means using Kotlin Flow with lifecycle awareness in Android development.
Flow lifecycle aware helps manage data streams in Android apps
It ensures that data emissions are only observed when the lifecycle is in the appropriate state
Example: Using Flow with LiveData to update UI components based on lifecycle events
Inline functions are functions that are expanded in place at the call site, while high-order functions are functions that can take other functions as parameters or return them.
Inline functions are expanded in place at the call site to improve performance.
High-order functions can take other functions as parameters or return them.
Example of high-order function: map() function in Kotlin.
posted on 14 Apr 2024
I applied via Naukri.com and was interviewed in Mar 2024. There was 1 interview round.
MVVM is an architectural pattern used in software development, particularly in Android apps, to separate the user interface from the business logic.
MVVM stands for Model-View-ViewModel
Model represents the data and business logic
View is the UI component that displays the data and interacts with the user
ViewModel acts as a mediator between the Model and View, handling user interactions and updating the Model
MVVM helps in...
Sealed classes in Kotlin are used to represent restricted class hierarchies.
Sealed classes can have a limited set of subclasses defined within the same file.
They are useful for representing a fixed set of types in a hierarchy.
Sealed classes are often used in when expressions for exhaustive checks.
Extension functions in Kotlin allow you to add new functions to existing classes without modifying their source code.
Extension functions are defined outside of the class they extend.
They can be called on instances of the class as if they were regular methods.
They can access the properties and methods of the class they extend.
Example: fun String.isEmailValid(): Boolean { ... }
Example: fun Int.isEven(): Boolean { ... }
Null safety in Kotlin ensures that variables cannot hold null values unless explicitly specified.
Kotlin uses nullable and non-nullable types to enforce null safety.
The '?' operator is used to declare a variable as nullable.
Safe call operator '?.' is used to safely access properties or methods of nullable objects.
The '!!' operator is used for force unwrapping nullable types, but can lead to NullPointerExceptions.
Room database is a persistence library that provides an abstraction layer over SQLite to allow for more robust database access while harnessing the full power of SQLite.
Room database simplifies database interactions by providing compile-time verification of SQL queries.
It consists of three main components: Entity, DAO (Data Access Object), and Database.
Entities represent tables in the database, DAOs define methods to i...
Convert vowels in a string to uppercase
Iterate through each character in the string
Check if the character is a vowel (a, e, i, o, u)
If it is a vowel, convert it to uppercase
Jet Compose is a modern UI toolkit for building native Android apps using a declarative approach.
Jet Compose is a declarative UI framework for building Android apps.
It allows developers to create UI components using Kotlin code.
Jet Compose simplifies UI development by eliminating the need for XML layouts.
It provides a more flexible and efficient way to create dynamic UIs.
Jet Compose is part of the Jetpack libraries pro
I applied via LinkedIn and was interviewed in Feb 2024. There were 3 interview rounds.
Car propertymanager is a component in AOSP that manages properties related to car-specific features.
Car propertymanager is used to handle properties like car make, model, year, etc.
It is mostly used in Android Automotive OS for managing car-specific settings and configurations.
Developers can use car propertymanager to access and modify car-related properties in their apps.
Solid principles are a set of five design principles for writing maintainable and scalable code.
Single Responsibility Principle: A class should have only one reason to change.
Open/Closed Principle: Classes should be open for extension but closed for modification.
Liskov Substitution Principle: Objects of a superclass should be replaceable with objects of its subclasses without affecting the program's correctness.
Interfa...
Tata using network layer
I applied via Approached by Company and was interviewed in Jan 2023. There were 4 interview rounds.
I am choosing this company because of its strong reputation, innovative projects, and great work culture.
Strong reputation: The company has a proven track record of success and is highly regarded in the industry.
Innovative projects: The company is known for its cutting-edge technology and exciting projects, which will provide me with opportunities to learn and grow.
Great work culture: The company values its employees a...
I applied via Newspaper Ad
I applied via Walk-in and was interviewed in Feb 2024. There were 2 interview rounds.
Interview experience
Engineer
231
salaries
| ₹3 L/yr - ₹12.3 L/yr |
Senior Engineer
204
salaries
| ₹6.3 L/yr - ₹24 L/yr |
Senior Software Engineer
194
salaries
| ₹6.4 L/yr - ₹22 L/yr |
Technical Lead
156
salaries
| ₹10 L/yr - ₹31 L/yr |
Software Engineer
138
salaries
| ₹2.8 L/yr - ₹11.5 L/yr |
TCS
Wipro
HCLTech
Tech Mahindra