Deloitte
40+ Ephicacy Lifescience Analytics Interview Questions and Answers
You have been given an Encrypted String where repetitions of substrings are represented as substring followed by the count of substrings.
Example: String "aabbbcdcdcd" wil...read more
You are given an array/list ‘ARR’ consisting of ‘N’ distinct integers arranged in ascending order. You are also given an integer ‘TARGET’. Your task is to count all the distinct pairs in ‘ARR’ such that...read more
You have been given an integer array/list(ARR) of size 'N'. It only contains 0s, 1s and 2s. Write a solution to sort this array/list.
Note :
Try to solve the problem in 'Single Scan'. ' Single Scan' r...read more
You have been given an undirected graph with 'N' vertices and 'M' edges. The vertices are labelled from 1 to 'N'.
Your task is to find if the graph contains a cycle or not.
A ...read more
You have been given two Strings “STR1” and “STR2” of characters. Your task is to find the length of the longest common subsequence.
A String ‘a’ is a subsequence of a String ‘b’ if ‘a’...read more
You are given a number 'N' in the form of a string 'S', which is a palindrome. You need to find the greatest number strictly less than 'N' which is also a palindrome.
Note:
1. A palindrom...read more
You have given a sorted array 'A' of 'N' integers.
Now, you are given 'Q' queries, and each query consists of a single integer 'X'. Your task is to check whether 'X' is present in a...read more
You have been given a binary tree of integers. Your task is to print the boundary nodes of this binary tree in an Anti-Clockwise direction starting from the root node.
NOTE: The boundary nodes...read more
Q9. What synchronous and asynchronous means??
Synchronous means happening at the same time, while asynchronous means not happening at the same time.
Synchronous operations occur in real-time, while asynchronous operations can be delayed or queued.
Synchronous operations block the program until they are completed, while asynchronous operations allow the program to continue running.
Examples of synchronous operations include function calls and loops, while examples of asynchronous operations include callbacks and promises.
Q10. What is diff between action controller and api action controller
Action controller is for web applications, API action controller is for APIs
Action controller is used for handling web requests in a traditional web application
API action controller is used for handling API requests in a RESTful API
API action controller typically returns JSON responses, while action controller may return HTML responses
API action controller often has different authentication and authorization mechanisms compared to action controller
Q11. What is Lambada function, does lambda suitable for long run
Lambda function is an anonymous function in programming that can be used for short, simple tasks.
Lambda functions are commonly used in functional programming languages like Python.
They are often used for tasks that require a quick, one-time function without the need to define a separate function.
Lambda functions can be used as arguments for higher-order functions like map, filter, and reduce.
They are not suitable for long, complex tasks as they can make the code harder to rea...read more
Q12. What is the use of bean factory
Bean factory is used for creating and managing instances of beans in Spring framework.
Bean factory is responsible for creating and managing instances of beans defined in the Spring configuration file.
It provides a way to decouple the configuration and specification of dependencies from the actual application code.
Bean factory supports different scopes of beans such as singleton, prototype, request, session, etc.
It also supports dependency injection and inversion of control.
Ex...read more
Q13. what is interface,abstraction,polymorphism?
Interface, abstraction, and polymorphism are key concepts in object-oriented programming.
Interface: A contract that defines a set of methods that a class must implement.
Abstraction: The process of hiding the implementation details and exposing only the essential features of an object.
Polymorphism: The ability of an object to take on many forms, allowing objects of different classes to be treated as objects of a common superclass.
Q14. tell me difference between treemap and hashmap
HashMap is an unordered collection while TreeMap is a sorted collection based on keys.
HashMap uses hashing to store key-value pairs, while TreeMap uses a red-black tree for sorting keys.
HashMap allows one null key and multiple null values, while TreeMap does not allow null keys but allows null values.
HashMap is generally faster for lookups and insertions, while TreeMap is useful when you need to iterate over keys in sorted order.
Q15. what is mvc lify cyle with example?
MVC lifecycle is the sequence of events that occur during the execution of a Model-View-Controller application.
1. User interacts with the View triggering a request
2. Controller receives the request and processes it
3. Controller updates the Model with new data
4. Model notifies the View about the changes
5. View retrieves the updated data from the Model
6. View renders the updated data for the user
Q16. what is virtual and override keyword?
The virtual keyword is used to allow a method to be overridden in a derived class. The override keyword is used to indicate that a method is intended to override a base class method.
The virtual keyword is used in the base class to define a method that can be overridden in a derived class.
The override keyword is used in the derived class to indicate that a method is intended to override a base class method.
The virtual keyword is used to provide a default implementation of a me...read more
Q17. When to use CTE and temp table.
CTE and temp table usage in SQL
Use CTE for recursive queries and complex subqueries
Use temp tables for large data sets and complex queries
CTE is more efficient for small data sets
Temp tables can be indexed for faster performance
Consider the scope and lifespan of the data when choosing between CTE and temp table
Q18. What is managed code and unmanaged code
Managed code is code that is executed by the Common Language Runtime (CLR) while unmanaged code is code that is executed directly by the operating system.
Managed code is written in high-level languages like C#, VB.NET, and is compiled to Intermediate Language (IL) which is executed by the CLR.
Unmanaged code is written in languages like C, C++, and is compiled directly to machine code which is executed by the operating system.
Managed code provides automatic memory management, ...read more
Q19. What are diff design patterns in sql
Design patterns in SQL are reusable solutions to common problems encountered in database design and development.
Singleton Pattern: Ensures a class has only one instance and provides a global point of access to it.
Factory Pattern: Creates objects without specifying the exact class of object that will be created.
Repository Pattern: Separates the logic that retrieves data from a data source from the business logic that acts on the data.
Decorator Pattern: Allows behavior to be ad...read more
Q20. Tell about aws s3, uses, how to copy s3
AWS S3 is a cloud storage service provided by Amazon Web Services for storing and retrieving data.
AWS S3 is used for storing and retrieving any amount of data at any time.
It is commonly used for backup and recovery, archiving, data lakes, and big data analytics.
To copy data in S3, you can use the AWS Management Console, AWS CLI, or AWS SDKs.
For example, you can use the 'aws s3 cp' command in the AWS CLI to copy files between S3 buckets or from local storage to S3.
Q21. What is MVC and explain its pattern
MVC is a software design pattern that separates an application into three main components: Model, View, and Controller.
Model represents the data and business logic of the application
View is responsible for displaying the data to the user
Controller acts as an intermediary between Model and View, handling user input and updating the Model accordingly
MVC helps in achieving separation of concerns, making the code more organized and easier to maintain
Q22. What is routing in MVC and Angular
Routing in MVC and Angular is the mechanism of mapping URLs to controller actions or components.
In MVC, routing is used to define the URL patterns and map them to specific controller actions.
In Angular, routing is used to navigate between different components based on the URL.
Routing in MVC is typically configured in the RouteConfig class, while in Angular it is configured in the RouterModule.
Example in MVC: routes.MapRoute('Default', '{controller}/{action}/{id}', new { contr...read more
Q23. What is dependency injection
Dependency injection is a design pattern that allows objects to receive dependencies rather than creating them.
It helps to decouple the code and makes it more testable and maintainable.
It allows for easier swapping of dependencies without changing the code.
There are three types of dependency injection: constructor injection, setter injection, and interface injection.
Example: Instead of creating a database connection object inside a class, we can inject it as a dependency from...read more
Q24. what is const and readonly ?
const and readonly are keywords used in programming to define variables that cannot be modified.
const is used to declare a constant variable that cannot be changed after initialization
readonly is used to declare a variable that can only be assigned a value at the time of declaration or in the constructor
const variables are implicitly static and must be initialized with a constant value
readonly variables can have different values in different instances of a class
Q25. What are different access modifiers
Access modifiers in programming define the scope of a class, method, or variable.
Public - accessible from any other class
Private - accessible only within the same class
Protected - accessible within the same package and subclasses
Default (no modifier) - accessible only within the same package
Q26. Why string is unmutable
Strings are immutable in order to ensure data integrity and security.
Immutable strings prevent accidental changes to data
Enhances security by preventing data tampering
Allows for efficient memory management
Q27. What is connection pooling
Connection pooling is a technique used to manage a pool of database connections to improve performance and efficiency.
Connection pooling helps reduce the overhead of opening and closing database connections for each request
It allows multiple clients to reuse a pre-created set of connections to the database
Connection pooling can help improve the scalability and performance of applications that require frequent database access
Q28. sort array without using sorting logic
Use custom logic to rearrange array elements without traditional sorting algorithms
Create a custom logic to rearrange the array elements based on specific criteria
Use loops and conditional statements to compare and swap elements
Consider using techniques like bubble sort or insertion sort without directly implementing them
Q29. Sql Queries with 2nd greatest emp salary
Use SQL query to find the employee with the second highest salary.
Use the ORDER BY clause to sort the salaries in descending order.
Use the LIMIT clause to retrieve the second row after skipping the first row.
Q30. Diff between array and arraylist
Array is a fixed-size data structure while ArrayList is a dynamic-size data structure in Java.
Array is a fixed-size collection of elements of the same data type.
ArrayList is a resizable collection that can grow or shrink in size dynamically.
Arrays can store primitive data types and objects, while ArrayList can only store objects.
Arrays use square brackets [] for declaration, while ArrayList is a class in Java's collection framework.
Example: String[] names = new String[5]; Arr...read more
Q31. Diff between string and stringbuilder
String is immutable, while StringBuilder is mutable and more efficient for concatenating strings.
String is immutable, meaning once created, it cannot be changed. StringBuilder is mutable and allows for modifications.
String concatenation in a loop using String can be inefficient due to creating new objects each time. StringBuilder is more efficient for this purpose.
String has a fixed length, while StringBuilder can dynamically adjust its length as needed.
Example: String str = ...read more
Q32. Tell about inheritance
Inheritance is a concept in object-oriented programming where a class inherits properties and behaviors from another class.
Allows for code reusability by creating a new class based on an existing class
Derived class (subclass) inherits attributes and methods from a base class (superclass)
Supports the 'is-a' relationship, where a subclass is a specialized version of a superclass
Can have multiple levels of inheritance, creating a hierarchy of classes
Q33. Dependency injection in .net core
Dependency injection in .NET Core allows for loosely coupled components and easier testing.
In .NET Core, dependency injection is built-in and can be configured in the ConfigureServices method of the Startup class.
Services are registered in the ConfigureServices method using the IServiceCollection interface.
Dependencies are injected into classes using constructor injection or property injection.
Example: services.AddScoped
(); Example: public class MyClass { private readonly IMyS...read more
Q34. What is polymorphism
Polymorphism is the ability of a function or method to behave differently based on the object it is acting upon.
Polymorphism allows objects of different classes to be treated as objects of a common superclass.
There are two types of polymorphism: compile-time (method overloading) and runtime (method overriding).
Example: Inheritance in object-oriented programming languages like Java allows for polymorphism.
Q35. What is abstraction
Abstraction is the concept of hiding complex details and showing only the essential features of an object or system.
Abstraction allows developers to focus on what an object does rather than how it does it
It helps in reducing complexity and improving efficiency in software development
For example, in object-oriented programming, abstract classes and interfaces are used to define common behaviors without specifying implementation details
Q36. Commandbuilder vs command
CommandBuilder is a class used to dynamically create SQL commands, while Command is a pre-defined SQL command.
CommandBuilder is used to construct SQL commands at runtime based on user input or conditions.
Command is a pre-defined SQL command that is executed as is.
CommandBuilder is more flexible and allows for dynamic SQL generation.
Command is static and does not change during runtime.
Example: CommandBuilder can be used to construct a SELECT query with different WHERE clauses ...read more
Q37. Tell us one weakness
One weakness is that I tend to get too focused on details, sometimes losing sight of the bigger picture.
I tend to spend too much time on perfecting small details
I sometimes struggle with prioritizing tasks and can get overwhelmed by the amount of work
I am working on improving my time management skills to avoid getting too caught up in minor details
Q38. Whats is middleware
Middleware is software that acts as a bridge between different applications or components, allowing them to communicate and work together.
Middleware facilitates communication between different software components
It can handle tasks such as data transformation, security, and routing
Examples include message brokers like RabbitMQ, API gateways like Kong, and web servers like Nginx
Q39. What is Linked List
A linked list is a linear data structure where elements are stored in nodes that have a reference to the next node in the sequence.
Consists of nodes linked together by pointers or references
Can be singly linked (each node points to the next) or doubly linked (each node points to the next and previous)
Allows for dynamic size and efficient insertion/deletion operations
Example: Singly linked list: 1 -> 2 -> 3 -> 4 -> null
Q40. What is Heap in DS
Heap is a specialized tree-based data structure where the root node is either the maximum or minimum value in the tree.
Heap is used to implement priority queues.
There are two types of heaps: max heap (root node is the maximum value) and min heap (root node is the minimum value).
Insertion and deletion operations in a heap have time complexity of O(log n).
Q41. Lwc lifecycle explanation
LWC lifecycle explanation
LWC lifecycle consists of creation, rendering, updating, and destruction phases
Creation phase includes constructor, connectedCallback, and renderedCallback
Rendering phase involves updating the DOM based on data changes
Updating phase includes setter methods and rerendering components
Destruction phase involves disconnectedCallback and removing the component from the DOM
Q42. MiddleWare in ASP.NET core
MiddleWare in ASP.NET Core is a software component that handles HTTP requests and responses.
Middleware is a pipeline of components that process HTTP requests and responses in ASP.NET Core.
Middleware can be used for logging, authentication, authorization, error handling, etc.
Middleware is added to the application pipeline using the 'UseMiddleware' method in the 'Configure' method of Startup class.
Q43. Existing project
The existing project is a web application for managing inventory and sales.
The project uses React for the front-end and Node.js for the back-end.
It integrates with a MySQL database to store product information and sales data.
The application includes features such as user authentication, product search, and sales reporting.
More about working at Deloitte
Top HR Questions asked in Ephicacy Lifescience Analytics
Interview Process at Ephicacy Lifescience Analytics
Top Software Developer Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month