i
Birlasoft
Filter interviews by
Dispatchgroup
Delegate
Protocol
Dispatch Group is a mechanism in iOS for managing multiple tasks and synchronizing their completion.
Dispatch Group allows you to monitor a group of tasks and be notified when they are all completed.
You can use Dispatch Group to wait for multiple asynchronous tasks to finish before proceeding.
Dispatch Group can be used to manage concurrent tasks and avoid race conditions.
Example: Using Dispatch Group to download multipl...
Delegates are used in iOS development to allow one object to communicate with another object.
Delegates are used to establish communication between objects in iOS development.
Delegates are defined using protocols in Swift or Objective-C.
An example of using delegates is implementing the UITableViewDelegate protocol to handle table view events.
Top trending discussions
I applied via Company Website and was interviewed in Aug 2024. There was 1 interview round.
MVVM is a design pattern that separates the UI, business logic, and data layers in an iOS application.
Model: Represents the data and business logic of the application.
View: Represents the UI components of the application.
ViewModel: Acts as a mediator between the Model and View, handling the presentation logic and data binding.
Pros: Separation of concerns, easier to maintain and test, promotes reusability.
Cons: Increase...
Multithreading in Swift allows for concurrent execution of tasks to improve performance and responsiveness.
Use Grand Central Dispatch (GCD) for managing concurrent tasks
Avoid blocking the main thread to prevent UI freezes
Consider using Operation and OperationQueue for more complex task management
I applied via Naukri.com and was interviewed in May 2022. There were 5 interview rounds.
Basic aptitude questions with no negative marking. 20 minutes 30 questions
2 String manipulation questions
I applied via LinkedIn and was interviewed in Mar 2024. There were 2 interview rounds.
Complex Question are there like images patter and we have to predict next image
There are two task for coding. both are easy.
I applied via Referral and was interviewed in Jun 2024. There were 3 interview rounds.
My expected salary range is $100,000 - $120,000 per year based on my experience and skills.
Based on my 5+ years of experience in IOS development, I am looking for a competitive salary in the range of $100,000 - $120,000 per year.
I have a strong track record of delivering high-quality IOS applications and believe my skills warrant a salary in this range.
I am open to negotiation based on the overall compensation package
I applied via Referral and was interviewed in Jun 2024. There was 1 interview round.
Replace a string in an array at a given index
Create an array of strings
Use the index provided to replace the string at that index
Ensure the index is within the bounds of the array
I applied via Naukri.com and was interviewed before Jul 2018. There were 2 interview rounds.
I applied via Walk-in and was interviewed before Dec 2020. There were 3 interview rounds.
C++ is an extension of C with object-oriented programming features.
C++ supports classes and objects while C does not.
C++ has better support for polymorphism and inheritance.
C++ has a standard template library (STL) which C does not have.
C++ allows function overloading while C does not.
C++ has exception handling while C does not.
For loop is used for iterating over a sequence while while loop is used for iterating until a condition is met.
For loop is used when the number of iterations is known beforehand
While loop is used when the number of iterations is not known beforehand
For loop is faster than while loop for iterating over a sequence
While loop is useful for iterating until a specific condition is met
For loop can be used with range() functio...
To reverse a string without using any looping and inbuilt functions, we can use recursion.
Create a function that takes a string as input.
If the length of the string is 0 or 1, return the string.
Otherwise, call the function recursively with the substring starting from the second character and concatenate the first character at the end.
Return the reversed string.
Example: reverseString('hello') returns 'olleh'.
A priority queue can be implemented using a single queue or multiple queues.
One approach is to use a single queue and assign priorities to elements using a separate data structure.
Another approach is to use multiple queues, each representing a different priority level.
For example, if there are three priority levels, three queues can be used to implement the priority queue.
An array of objects can be used to implement a heterogeneous array.
Each element in the array can be an object that represents a different data type.
The objects can have different properties and methods based on their respective data types.
For example, an element can be an object representing a string with a 'value' property and a 'length' method.
Developed a web-based inventory management system for a retail company.
Used HTML, CSS, and JavaScript for the front-end development.
Implemented a RESTful API using Node.js and Express for the back-end.
Utilized a MySQL database to store and manage inventory data.
Implemented features like product search, order management, and reporting.
Ensured data security and user authentication using encryption and JWT.
Collaborated wi...
The missing rupee is not actually missing. The calculation is misleading and does not account for the total amount paid.
The initial amount paid by each person was Rs.10, totaling Rs.30.
The owner gave them a discount of Rs.5, so they paid Rs.25 in total.
The broker took Rs.2, leaving them with Rs.23.
When the broker returned Rs.1 to each person, they each received Rs.1 back, totaling Rs.3.
So, the total amount paid by the ...
Inheritance in Java allows a class to inherit properties and methods from another class.
Inheritance is achieved using the 'extends' keyword.
The class that is being inherited from is called the superclass or parent class.
The class that inherits from the superclass is called the subclass or child class.
Subclasses can access the public and protected members of the superclass.
Inheritance promotes code reusability and allow...
A program to check if a given number is a palindrome or not.
Convert the number to a string.
Reverse the string and compare it with the original string.
If they are equal, the number is a palindrome.
If not, the number is not a palindrome.
Normalisation is the process of organizing data in a database to reduce redundancy and improve data integrity.
It involves breaking down a table into smaller tables and defining relationships between them.
Normalization helps to eliminate data inconsistencies and anomalies.
There are different levels of normalization, with each level having specific rules to follow.
For example, first normal form (1NF) requires that each t...
Yes, I am ready to relocate anywhere in India or outside upon company needs.
I am open to exploring new locations and cultures.
I understand that relocation may be necessary for career growth and opportunities.
I am adaptable and willing to adjust to new environments.
I have experience working in diverse teams and can easily integrate into new settings.
I would be ready to accept a project in Java even if I was trained in DotNet earlier.
I have a strong foundation in programming principles and concepts, which can be applied to any language.
I am confident in my ability to quickly learn and adapt to new technologies.
I have experience working with multiple programming languages and frameworks.
I can leverage my knowledge of DotNet to understand similar concepts in Java.
I a...
I want to join Sapient because of its reputation for innovative projects and collaborative work environment.
Sapient is known for working on cutting-edge projects that push the boundaries of technology
I value the collaborative work environment at Sapient, where team members support each other to achieve success
I am impressed by Sapient's commitment to professional development and growth opportunities for employees
My expectations from Sapient
I expect Sapient to provide a challenging and innovative work environment
I expect Sapient to offer opportunities for professional growth and learning
I expect Sapient to have a collaborative and supportive team culture
I expect Sapient to provide competitive compensation and benefits
I expect Sapient to have a strong focus on quality and delivering excellent software solutions
based on 1 interview
Interview experience
Software Developer
1.5k
salaries
| ₹2.5 L/yr - ₹11.2 L/yr |
Senior Software Engineer
1.2k
salaries
| ₹5.9 L/yr - ₹24 L/yr |
Technical Specialist
1.2k
salaries
| ₹8 L/yr - ₹30 L/yr |
Technical Lead
1.1k
salaries
| ₹10.1 L/yr - ₹36 L/yr |
Software Engineer
1.1k
salaries
| ₹3.2 L/yr - ₹11.1 L/yr |
Accenture
Cognizant
Capgemini
Wipro