Filter interviews by
I applied via Company Website and was interviewed in Jun 2020. There was 1 interview round.
An interface is a contract that specifies the methods that a class must implement.
Interfaces define a set of methods that a class must implement.
Interfaces are used to achieve abstraction and loose coupling.
Interfaces are commonly used in Java to implement multiple inheritance.
In my project, I used interfaces to define a common set of methods that multiple classes needed to implement.
Skip, SkipWhile, and SkipLast are LINQ methods used to skip elements in a sequence.
Skip(n) skips the first n elements in a sequence.
SkipWhile(predicate) skips elements in a sequence while the predicate is true.
SkipLast(n) skips the last n elements in a sequence.
LINQ is a language integrated query that allows querying data from different data sources.
SQL is a database management system that uses Structured Query Languag...
Abstract class is a class that cannot be instantiated, while interface is a contract that a class must implement.
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
A class can implement multiple interfaces, but can only inherit from one abstract class.
Abstract class can have constructors, while interface cannot.
Abstract class can have instance variables, while...
Runtime polymorphism is achieved through method overriding while compile-time polymorphism is achieved through method overloading.
Runtime polymorphism is also known as dynamic polymorphism.
It is achieved through inheritance and method overriding.
The decision of which method to call is made at runtime based on the object being referred to.
Compile-time polymorphism is also known as static polymorphism.
It is achieved thro...
IEnumerable and IQueryable are interfaces for querying data, while ArrayList and List are collections for storing data.
IEnumerable is used for querying data from in-memory collections, while IQueryable is used for querying data from external data sources like databases.
ArrayList is a non-generic collection that can store any type of object, while List is a generic collection that can store a specific type of object.
Lis...
The controller that renders the view depends on the framework being used.
In ASP.NET MVC, the controller renders the view
In AngularJS, the view is rendered by the browser
In React, the view is rendered by the component
The controller can pass data to the view for rendering
The controller that consumes the API depends on the architecture of the application.
In a traditional MVC architecture, the controller would consume the API.
In a client-server architecture, the client-side controller would consume the API.
In a microservices architecture, each microservice would have its own controller to consume the API.
The choice of controller also depends on the programming language and framework used
There are three types of controllers in MVC: 1. View Controller 2. Action Controller 3. Partial View Controller
View Controller handles user interface and displays data
Action Controller handles user input and performs actions
Partial View Controller handles reusable UI components
Examples: HomeController, AccountController, ProductController
Use efficient data structures and algorithms to handle large data sets.
Use indexing and partitioning to break down data into manageable chunks.
Implement caching and lazy loading to reduce memory usage.
Use parallel processing and distributed computing to improve performance.
Optimize database queries and use NoSQL databases for scalability.
Consider using data compression and encryption for security and storage efficiency
SQL Injection is a type of cyber attack where malicious SQL statements are inserted into an entry field to manipulate the database.
Use parameterized queries or prepared statements
Sanitize user input
Limit database user privileges
Use a web application firewall
Regularly update and patch software
Abstract classes are used when we want to provide a default implementation and interfaces are used when we want to enforce a contract.
Abstract classes can have both abstract and non-abstract methods while interfaces can only have abstract methods.
A class can implement multiple interfaces but can only inherit from one abstract class.
Abstract classes can have constructors while interfaces cannot.
Interfaces are used for a...
Constants are values that cannot be changed during program execution, whereas variables can be changed.
Constants are declared using the 'const' keyword.
Variables are declared using the 'var' or 'let' keyword.
Constants must be initialized at the time of declaration.
Variables can be initialized later in the program.
Constants are used to declare values that should not be changed, such as mathematical constants.
Variables a...
String is immutable while StringBuilder is mutable.
String is a sequence of characters that cannot be modified once created.
StringBuilder is a dynamic object that can be modified and manipulated.
String concatenation creates a new string object while StringBuilder modifies the existing object.
String is thread-safe while StringBuilder is not.
Use String for small strings and StringBuilder for large strings or frequent mani
Both array list and list use the type of the elements they contain.
Array list and list can contain elements of any type, including custom classes.
The type of the elements is specified when creating the array list or list.
For example, ArrayList
An object is an instance of a class. A class is a blueprint for creating objects.
A class is a template or blueprint for creating objects
An object is an instance of a class
Classes define the properties and methods of objects
Objects have state and behavior
Classes can inherit properties and methods from other classes
SP stands for Stored Procedure which is a pre-compiled SQL code while Query is a statement used to retrieve data from a database.
SP is faster than Query as it is pre-compiled
SP can be used to execute complex logic and calculations
Query is used to retrieve data from a database
SP can be used to improve database security by granting access to only specific procedures
Query can be used to filter, sort and group data
Top trending discussions
I applied via Walk-in and was interviewed in Aug 2024. There were 3 interview rounds.
I am a Senior Software Developer with 8 years of experience in full-stack development, specializing in Java and Angular.
8 years of experience in full-stack development
Specialize in Java and Angular
Strong problem-solving skills
Experience with Agile methodologies
Excellent communication and teamwork abilities
The yield() method in threading is used to give up the CPU and allow other threads to run.
Allows other threads to run by giving up the CPU temporarily
Useful for preventing one thread from dominating the CPU
Can be used to implement cooperative multitasking
Hash collision occurs when two different inputs produce the same hash value. It can be handled by using techniques like chaining or open addressing.
Hash collision is a common issue in hash tables where different keys produce the same hash value.
One way to handle hash collisions is by using chaining, where each bucket in the hash table stores a linked list of key-value pairs with the same hash value.
Another way to handl...
Method references provide a more concise way to refer to methods by name instead of using lambda expressions.
Method references can make code more readable and maintainable by reducing boilerplate code.
They can be used to refer to static methods, instance methods, and constructors.
Example: list.forEach(System.out::println) is equivalent to list.forEach(item -> System.out.println(item)).
Vertical scaling increases the capacity of a single server, while horizontal scaling adds more servers to distribute the load.
Vertical scaling involves increasing the resources of a single server, such as CPU, RAM, or storage.
Horizontal scaling involves adding more servers to distribute the load, often done through containerization or virtualization.
Vertical scaling is limited by the capacity of a single server, while ...
Java program to capitalize first letter of each word in a given string
Split the input string by space to get individual words
Iterate through each word and capitalize the first letter
Join the words back together to form the final capitalized string
Escalation matrix defines the process for escalating production defects based on severity and impact.
Escalation matrix typically includes levels of escalation, responsible parties at each level, and criteria for escalating defects.
For example, a Level 1 escalation may involve the development team, while a Level 2 escalation may involve senior management.
Criteria for escalation may include severity of the defect, impact...
Implemented a real-time data synchronization feature between multiple servers.
Designed a custom protocol for efficient data transfer
Implemented server-side logic to handle data conflicts
Utilized websockets for real-time communication
Yes, I have the ability to handle tasks individually.
I have a proven track record of successfully completing projects on my own.
I am self-motivated and can prioritize tasks effectively.
I have strong problem-solving skills which allow me to tackle challenges independently.
Yes, it is okay to give deliverables under pressure as long as quality is not compromised.
Meeting deadlines is important in software development.
Pressure can sometimes lead to increased focus and productivity.
Communication with stakeholders about realistic timelines is key.
Prioritizing tasks and managing time effectively can help in delivering under pressure.
I am a Senior Software Developer with 8 years of experience in developing web applications using various technologies.
Experienced in full stack development
Proficient in languages like Java, JavaScript, and Python
Skilled in using frameworks like Spring, React, and Django
Strong understanding of database management systems
Familiar with Agile development methodologies
Seeking new challenges and growth opportunities.
Desire for career advancement
Looking for new challenges
Seeking better work-life balance
Company restructuring or changes in management
My current CTC is $100,000 and my expected CTC is $120,000.
Current CTC: $100,000
Expected CTC: $120,000
Yes, I have all relevant documents from previous companies.
I have copies of offer letters, employment contracts, and performance reviews.
I also have any relevant certifications or training records.
I can provide references from previous employers if needed.
I applied via Company Website and was interviewed in Nov 2024. There was 1 interview round.
Java 8 introduced Streams API for processing collections of data in a functional style.
Streams provide a way to work with sequences of elements in a declarative manner.
Features include map, filter, reduce, and collect operations.
Streams can be parallelized to improve performance.
Example: List<String> names = Arrays.asList("Alice", "Bob", "Charlie"); Stream<String> stream = names.stream();
Example: int sum = ...
Full stack developer
SQL performance optimization involves indexing, query optimization, and database design improvements.
Use indexes on frequently queried columns to speed up search operations.
Optimize queries by avoiding unnecessary joins, using appropriate data types, and limiting the number of rows returned.
Consider denormalizing the database schema for better performance in read-heavy applications.
Regularly monitor and analyze query p...
Various tools like Visual Studio, ReSharper, Git, and Jira can be used in .NET development.
Visual Studio is a popular IDE for .NET development
ReSharper is a code analysis tool that can be used with Visual Studio
Git is a version control system commonly used in .NET projects
Jira is a project management tool that can be integrated with .NET development workflows
I applied via Naukri.com and was interviewed in Sep 2024. There was 1 interview round.
I applied via Naukri.com and was interviewed in Aug 2024. There were 2 interview rounds.
Communication between microservices is typically done through APIs, message queues, or event-driven architecture.
Use RESTful APIs for synchronous communication between microservices
Implement message queues like RabbitMQ or Kafka for asynchronous communication
Utilize event-driven architecture with tools like Apache Kafka or AWS SNS/SQS
Consider gRPC for high-performance communication between microservices
I will tackle escalations by first understanding the issue, prioritizing tasks, communicating effectively, and seeking help from senior team members if needed.
Understand the root cause of the escalation
Prioritize tasks based on urgency and impact
Communicate effectively with stakeholders
Seek help from senior team members if needed
posted on 8 Aug 2024
Microfrontend is a software architectural style where a frontend application is decomposed into smaller, more manageable pieces.
Microfrontend allows teams to work on different parts of the frontend independently.
Each microfrontend can be developed, tested, and deployed separately.
Microfrontend architecture helps in scaling large frontend applications.
Examples of microfrontend frameworks include single-spa, Webpack Modu
Setting up environment in Angular app, understanding pipes, async, pure/impure, Subject and BehaviorSubject in theory
Setting up environment in Angular app involves configuring environment files for different environments like development, production, etc.
Pipes in Angular are used for transforming data in templates. Async pipes are used for handling asynchronous data streams.
Pure pipes are stateless and only recompute w...
I applied via Walk-in and was interviewed in Apr 2024. There were 2 interview rounds.
MVC stands for Model-View-Controller, a software design pattern that separates the application into three main components.
Model: Represents the data and business logic of the application.
View: Represents the UI components of the application.
Controller: Acts as an intermediary between Model and View, handling user input and updating the Model accordingly.
MVC helps in organizing code, improving maintainability, and promo...
Index fragmentation in SQL occurs when the logical order of pages in an index does not match the physical order in the data file.
Index fragmentation can lead to decreased query performance as the database engine has to scan more pages to retrieve data.
Fragmentation can be caused by frequent insertions, deletions, or updates on the indexed columns.
Rebuilding or reorganizing indexes can help reduce fragmentation and impr...
based on 1 review
Rating in categories
Software Engineer
28
salaries
| ₹3 L/yr - ₹6 L/yr |
Senior Software Engineer
18
salaries
| ₹3.8 L/yr - ₹13 L/yr |
Technical Lead
17
salaries
| ₹6 L/yr - ₹16.7 L/yr |
Business Analyst
13
salaries
| ₹3.5 L/yr - ₹12 L/yr |
Test Engineer
10
salaries
| ₹2.8 L/yr - ₹7.5 L/yr |
TCS
Infosys
Wipro
HCLTech