Ellie Mae
Sri Sri Tattva Interview Questions and Answers
Q1. Given a sorted array, find a given element in shortest possible time
Use binary search algorithm to find the given element in a sorted array.
Start with the middle element of the array.
If the middle element is equal to the given element, return its index.
If the middle element is greater than the given element, search in the left half of the array.
If the middle element is smaller than the given element, search in the right half of the array.
Repeat the process until the element is found or the search range becomes empty.
Q2. Explain memory management in dotnet
Memory management in .NET involves automatic garbage collection and allocation of memory for objects.
Garbage collector automatically frees memory for objects that are no longer in use
Memory allocation is done by the Common Language Runtime (CLR)
CLR uses a heap to allocate memory for objects
Memory leaks can occur if objects are not properly disposed of
Managed code is protected from buffer overflows and other memory-related errors
Q3. Explain parallel programming in csharp
Parallel programming in C# allows multiple tasks to be executed simultaneously for improved performance.
Parallel programming can be achieved using the Task Parallel Library (TPL) in C#.
TPL provides constructs like Parallel.For and Parallel.ForEach to execute loops in parallel.
Parallel.Invoke can be used to execute multiple methods in parallel.
Data parallelism can be achieved using PLINQ (Parallel LINQ) to execute LINQ queries in parallel.
Parallel programming can improve perfo...read more
Q4. Specificity in CSS, pseudo selectors
Specificity in CSS refers to the priority given to different CSS rules when multiple rules apply to the same element.
Specificity is determined by the number of ID, class, and element selectors in a rule
Pseudo selectors like :hover and :active can also affect specificity
Using !important can override specificity, but should be used sparingly
Understanding specificity is important for avoiding unexpected styling conflicts
Q5. explain put vs patch
Put and Patch are HTTP methods used to update resources. Put replaces the entire resource while Patch updates only the specified fields.
Put is used to completely replace an existing resource with a new one
Patch is used to update only the specified fields of an existing resource
Put requires the entire resource to be sent in the request body
Patch requires only the fields to be updated to be sent in the request body
Q6. Explain webAPI
WebAPI is a set of protocols and tools for building web applications and services.
WebAPI allows communication between different software systems over the internet.
It uses HTTP requests and responses to exchange data.
WebAPIs can be used to retrieve data, update data, or perform other operations.
Examples of WebAPIs include the Twitter API, the Google Maps API, and the Facebook Graph API.
Q7. Hoisting in JavaScript
Hoisting is a JavaScript mechanism where variables and function declarations are moved to the top of their scope.
Hoisting applies to variable and function declarations, but not to variable assignments
Function declarations are hoisted before variable declarations
Hoisting can lead to unexpected behavior and should be avoided
Q8. Explain L in SOLID
L stands for Liskov Substitution Principle in SOLID
Liskov Substitution Principle states that objects of a superclass should be able to be replaced with objects of its subclass without affecting the correctness of the program
This principle ensures that the behavior of the program remains consistent when new classes are added
Violating this principle can lead to unexpected behavior and bugs in the program
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month