Filter interviews by
I applied via LinkedIn and was interviewed in Nov 2024. There was 1 interview round.
SOLID principles are a set of five design principles in object-oriented programming to make software more maintainable, flexible, and scalable.
Single Responsibility Principle (SRP) - A class should have only one reason to change.
Open/Closed Principle (OCP) - Software entities should be open for extension but closed for modification.
Liskov Substitution Principle (LSP) - Objects of a superclass should be replaceable with...
Liskov Substitution Principle focuses on inheritance while Interface Segregation Principle focuses on interfaces.
Liskov Substitution Principle states that objects of a superclass should be replaceable with objects of its subclasses without affecting the program's correctness.
Interface Segregation Principle states that a client should not be forced to implement interfaces they do not use.
Liskov Substitution Principle is...
Computed properties are properties in Swift that do not store a value directly, but instead provide a getter and an optional setter to retrieve and set their value.
Computed properties do not have a backing store like stored properties.
They are used to calculate a value on-the-fly based on other properties or data.
Example: calculating the area of a square based on its side length.
A retain cycle in programming occurs when two objects hold a strong reference to each other, preventing them from being deallocated.
Retain cycles can lead to memory leaks in iOS development.
To break a retain cycle, one of the objects involved needs to have a weak reference to the other.
An example of a retain cycle is when a parent object holds a strong reference to a child object, and the child object holds a strong re
Automatic Reference Counting (ARC) is a memory management feature in iOS development that automatically manages memory by keeping track of references to objects.
ARC automatically adds and removes retain/release calls to manage memory for objects.
It helps prevent memory leaks by deallocating objects when they are no longer needed.
ARC is the default memory management model in Swift and Objective-C.
Example: var myObject =...
Structs are value types, leading to better performance and memory management in SwiftUI.
Structs are value types, meaning they are copied when passed around, leading to better performance compared to reference types like classes.
Structs are immutable by default, making it easier to reason about the state of your app and preventing unexpected changes.
Structs are more lightweight than classes, which can lead to better mem...
The mutating keyword is used in Swift to indicate that a method is allowed to modify the properties of a value type.
Used in Swift with value types like structs and enums to allow methods to modify their properties
Prevents compilation error when attempting to modify properties of a value type within a method
Example: mutating func updateValue(newValue: Int) { self.value = newValue }
I am a passionate IOS Developer with 5 years of experience in developing mobile applications.
5 years of experience in IOS development
Proficient in Swift and Objective-C programming languages
Strong knowledge of iOS SDK and Xcode IDE
Experience in integrating third-party libraries and APIs
Designed and developed user-friendly interfaces for various apps
The time complexity for finding the longest common prefix in an array of strings is O(n*m), where n is the number of strings and m is the length of the longest string.
Iterate through the characters of the first string and compare them with the corresponding characters of the other strings.
The worst-case scenario is when all strings have the same prefix, resulting in O(n*m) time complexity.
Example: For strings ['apple',...
The output will be 'bye'.
The code defines a struct 's1Struct' with a property 'abc' initialized to 'Hello'.
It also has a method 'change()' that changes the value of 'abc' to 'bye'.
An instance 'a' of 's1Struct' is created and its 'change()' method is called.
Finally, the value of 'abc' in the instance 'a' is printed, which will be 'bye'.
I applied via Approached by Company and was interviewed in Nov 2024. There was 1 interview round.
Handle reference cycles by using weak or unowned references to break the strong reference cycle.
Use weak or unowned references to break strong reference cycles
Weak references do not keep a strong hold on the instance they refer to
Unowned references assume that the instance they refer to will never be nil
I used Combine to handle asynchronous events and data streams in my iOS app development.
Used Combine to manage network requests and responses
Implemented Combine to handle user input and UI updates
Utilized Combine to combine multiple data streams and perform operations on them
Swift ui api parsing
Top trending discussions
I applied via Approached by Company and was interviewed in Jun 2024. There were 2 interview rounds.
I am an experienced IOS Developer with a passion for creating innovative and user-friendly mobile applications.
Over 5 years of experience in IOS app development
Proficient in Swift and Objective-C programming languages
Strong understanding of mobile UI/UX design principles
Familiar with RESTful APIs and third-party libraries
Developed and launched multiple successful IOS apps, such as XYZ and ABC
let is used for constants that do not change, var is used for variables that can change
let is used for constants that do not change
var is used for variables that can change
let variables cannot be reassigned once they are set
var variables can be reassigned multiple times
I applied via LinkedIn and was interviewed in Mar 2024. There was 1 interview round.
Weak & Unowned references are used in ARC to prevent retain cycles in Swift programming.
Weak references do not increase the retain count of an object, and automatically become nil when the object is deallocated.
Unowned references do not keep a strong reference to the object, and can become a dangling pointer if the object is deallocated.
ARC (Automatic Reference Counting) is a memory management system used in Swift to a
Autoclosure is a feature in Swift that automatically wraps an expression in a closure.
Autoclosure is used to delay evaluation of an expression until it is actually needed.
It is commonly used with functions that take closures as arguments, allowing the caller to pass in a regular value instead of a closure.
Autoclosures are created by adding @autoclosure attribute before the closure's parameter type.
Optional binding in Swift helps to safely unwrap optionals and check for nil values.
Use if let or guard let to safely unwrap optionals and bind the value to a new constant or variable.
Check for nil values before using the unwrapped value to avoid runtime errors.
Example: if let name = optionalName { print(name) }
Example: guard let age = optionalAge else { return }
Access controls/modifiers determine the visibility and accessibility of classes, methods, and properties in object-oriented programming.
public access control allows a class, method, or property to be accessed from anywhere in the code
open access control allows a class to be subclassed outside of the module where it is defined
public is commonly used in Swift for most cases, while open is used when you want to allow subc
Protocols define a blueprint of methods, properties, and other requirements that a class or struct must adopt. Closures are self-contained blocks of functionality that can be passed around and used in your code.
Protocols define a set of methods, properties, and other requirements that a class or struct must implement.
Closures are self-contained blocks of functionality that can capture and store references to any consta...
I use GIT for version control and manage conflicts by resolving them through communication and collaboration.
Regularly commit changes to keep track of progress
Pull latest changes before making any updates to avoid conflicts
Communicate with team members to resolve conflicts efficiently
Use tools like Git merge or Git rebase to resolve conflicts
Document resolution process for future reference
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
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.
Easy aptitude english and logical reasoning.
Swift is a powerful and modern programming language for iOS development, but it has its own set of advantages and disadvantages.
Advantages: faster performance, safer code with optionals, easier to read and write code, interoperability with Objective-C
Disadvantages: steep learning curve for beginners, limited community support compared to other languages like Java or Python
Some of the top questions asked at the Movius Corp IOS Developer interview -
based on 3 interviews
Interview experience
Technical Support Engineer
11
salaries
| ₹5.4 L/yr - ₹6 L/yr |
Senior Test Engineer
9
salaries
| ₹8 L/yr - ₹12 L/yr |
Technical Lead
7
salaries
| ₹12 L/yr - ₹15 L/yr |
Senior Software Engineer
7
salaries
| ₹7 L/yr - ₹9 L/yr |
Software Engineer
6
salaries
| ₹3.5 L/yr - ₹9.1 L/yr |
TCS
Wipro
Infosys
HCLTech