Persistent Systems
100+ Interview Questions and Answers
Q1. Find 2nd largest element in an array where elements can be repeated. In O(n) complexity
Find 2nd largest element in an array with repeated elements in O(n) complexity.
Traverse the array once and keep track of the largest and second largest elements.
If the current element is greater than the largest element, update both largest and second largest elements.
If the current element is between the largest and second largest elements, update only the second largest element.
Q2. 2 programming code on any language of your choice
Two programming code examples in any language
Example 1: Python - print('Hello, World!')
Example 2: Java - System.out.println('Hello, World!')
Q3. What is nodejs and difference between nodejs and javascript
Node.js is a server-side JavaScript runtime environment.
Node.js is built on top of the V8 JavaScript engine from Google Chrome.
It allows developers to write server-side code in JavaScript.
Node.js has a non-blocking I/O model, making it efficient for handling large amounts of data.
Node.js has a vast library of modules available through npm (Node Package Manager).
Q4. Internal Working of HashMap
HashMap is a data structure that stores key-value pairs and uses hashing to quickly retrieve values based on keys.
HashMap internally uses an array of linked lists to store key-value pairs.
When a key-value pair is added, the key is hashed to determine the index in the array where it will be stored.
If multiple keys hash to the same index, a linked list is used to handle collisions.
To retrieve a value, the key is hashed again to find the corresponding index and then the linked l...read more
Q5. What is Difference between let var const,
let, var, and const are all used to declare variables in JavaScript, but they have different scoping rules and behaviors.
let and const were introduced in ES6, while var has been around since the beginning of JavaScript.
let and const are block-scoped, while var is function-scoped.
Variables declared with const cannot be reassigned, while let and var can be.
const variables must be initialized when they are declared, while let and var can be declared without initialization.
Exampl...read more
Q6. Joins in SQL ?
Joins in SQL are used to combine rows from two or more tables based on a related column between them.
Joins are used to retrieve data from multiple tables based on a related column
Common types of joins include INNER JOIN, LEFT JOIN, RIGHT JOIN, and FULL JOIN
INNER JOIN returns rows when there is at least one match in both tables
LEFT JOIN returns all rows from the left table and the matched rows from the right table
RIGHT JOIN returns all rows from the right table and the matched...read more
Q7. Pillars of OOP ?
Pillars of OOP are Inheritance, Encapsulation, Abstraction, and Polymorphism.
Inheritance allows a class to inherit properties and behavior from another class.
Encapsulation restricts access to certain components of an object, protecting its integrity.
Abstraction hides complex implementation details and only shows the necessary features.
Polymorphism allows objects to be treated as instances of their parent class or their own class.
Q8. what is express js and why it is used in web apps and what is body parser
Express.js is a popular Node.js web framework used for building web applications. Body-parser is a middleware used to parse incoming request bodies.
Express.js is a minimal and flexible Node.js web application framework that provides a robust set of features for web and mobile applications.
It provides a way to handle HTTP requests and responses, routing, middleware, and more.
Body-parser is a middleware used to parse incoming request bodies in a middleware before your handlers,...read more
Q9. what are the scope in javascript, describe each one.
Scopes in JavaScript determine the accessibility of variables and functions.
Global scope: variables and functions declared outside any function are accessible globally
Local scope: variables and functions declared inside a function are only accessible within that function
Block scope: variables declared with let and const are only accessible within the block they are declared in
Function scope: variables declared with var are accessible within the function they are declared in
Q10. what is callback hell, what is Promises?
Callback hell is a situation where nested callbacks make code unreadable. Promises are a solution to this problem.
Callback hell occurs when there are too many nested callbacks in asynchronous code
It makes the code difficult to read and maintain
Promises are a way to handle asynchronous operations without nested callbacks
Promises can be used to chain multiple asynchronous operations together
Promises have a resolve and reject function to handle success and failure respectively
Q11. what is passport.js why it is used
Passport.js is an authentication middleware for Node.js.
Passport.js provides a simple way to authenticate users with various authentication strategies such as local, OAuth, OpenID, etc.
It is highly customizable and can be integrated with any Node.js web application framework.
Passport.js maintains user sessions and provides a consistent API for authentication across different strategies.
Example: Using Passport.js with Express.js to authenticate users with Google OAuth2.
Example...read more
Q12. 1. What is API Testing 2. HTTP error codes 3. How to test API 4. Types of API 5. Questions on JAVA, oops concept 6. Sudo code for prime number 7. Questions on Performance Testing 8. How you are doing performanc...
read moreInterview questions for Project Lead position covering API testing, HTTP error codes, performance testing, Java, authentication, Swagger, AWS, and project-related questions.
API testing involves testing the functionality, reliability, performance, and security of APIs.
HTTP error codes are status codes returned by a server to indicate the status of a request.
APIs can be tested using tools like Postman, SoapUI, and JMeter.
Types of APIs include REST, SOAP, and GraphQL.
Java and OO...read more
Q13. what is event loops and phases
Event loop is a mechanism that allows JavaScript to perform non-blocking I/O operations.
Event loop is a loop that constantly checks the message queue and executes the next message if there is any.
Phases are the different stages of the event loop, such as timers, I/O callbacks, idle, and poll.
Event loop is crucial for Node.js to handle multiple requests simultaneously without blocking the main thread.
Example: setTimeout() function is added to the timer phase and executed after...read more
Q14. Python is interpreted then why .pyc files are there?
Python compiles source code to bytecode for faster execution, stored in .pyc files.
Python interpreter compiles source code to bytecode before execution
Bytecode is platform-independent and faster to execute than source code
Compiled bytecode is stored in .pyc files for future use and faster startup time
If source code is modified, .pyc files are automatically recompiled
Q15. Write media query for showing 3 divs in a row for desktop view and in column for mobile view
Media query for 3 divs in row for desktop and column for mobile view
Use min-width and max-width to target desktop and mobile views respectively
Set display property to flex and flex-wrap to wrap for desktop view
Set display property to block for mobile view
Q16. what is Function hoisting
Function hoisting is a JavaScript behavior where function declarations are moved to the top of their scope.
Function declarations are moved to the top of their scope during the compilation phase.
Function expressions are not hoisted.
Hoisting can lead to unexpected behavior and bugs if not understood properly.
Q17. How do you define 'many-to-many' relationship in Hibernate when there are no common columns between two tables?
Many-to-many relationship in Hibernate without common columns
Create a third table with foreign keys to both tables
Use @ManyToMany annotation in both entity classes
Specify the join table name and column names in @JoinTable annotation
Q18. what are arrow functions
Arrow functions are a concise way to write functions in JavaScript.
They have a shorter syntax than traditional function expressions.
They do not have their own 'this' keyword.
They are not suitable for methods, constructors, or prototype methods.
Example: const add = (a, b) => a + b;
Example: const square = x => x * x;
Q19. why nodejs is single Threaded
Node.js is single-threaded to optimize performance and simplify programming.
Node.js uses an event-driven, non-blocking I/O model.
This allows for efficient handling of multiple requests without creating new threads.
Node.js also uses a single event loop to manage all I/O operations.
This simplifies programming by eliminating the need for complex thread synchronization.
However, Node.js can still take advantage of multi-core systems by creating child processes.
Q20. List manipulation using list comprehension and lambda function for prime number
Using list comprehension and lambda function to manipulate a list of prime numbers
Use list comprehension to generate a list of numbers
Use a lambda function to check if a number is prime
Filter the list of numbers using the lambda function to get prime numbers
Q21. difference between node and expressjs
Node is a runtime environment for executing JavaScript code, while Express is a web application framework built on top of Node.
Node provides the platform for running JavaScript code outside of a web browser
Express is a lightweight framework that simplifies building web applications on top of Node
Express provides features like routing, middleware, and templating that make it easier to build web applications
Node and Express are often used together to build scalable and efficien...read more
Q22. How do you find the second largest integer in an array without using collections or without sorting the array?
Find second largest integer in an array without sorting or using collections.
Iterate through array and keep track of largest and second largest integers.
Compare each element with current largest and second largest integers.
Return second largest integer.
Q23. Working concepts of loops , map , list problem statment.
Loops, map, and list are fundamental concepts in programming.
Loops are used to repeat a block of code until a certain condition is met.
Map is a higher-order function that applies a given function to each element of a list and returns a new list.
List is a collection of elements that can be accessed by their index.
Example: for loop, map function, list comprehension.
Q24. Validation on how much exposure to the product
Exposure to the product can be validated through hands-on experience, user feedback, market research, and data analysis.
Hands-on experience with the product through development and testing
User feedback from customers or internal stakeholders
Market research to understand the competitive landscape and user preferences
Data analysis of usage metrics, customer behavior, and product performance
Examples: Conducting user interviews, A/B testing features, analyzing sales data
Q25. From a js nested object, print only values not keys.
Print only values from a nested JS object
Use Object.values() to get an array of values
Recursively iterate through nested objects
Filter out non-object values before iterating
Q26. Upon receiving client requirement to create APIs, what are the intial steps you will take?
The initial steps involve understanding the client requirements, analyzing the scope of work, and creating a plan for API development.
Meet with the client to discuss their requirements and goals for the APIs
Gather detailed information about the data and functionality that the APIs need to provide
Analyze the scope of work and determine the resources and timeline needed for development
Create a plan outlining the steps involved in API development, including design, implementatio...read more
Q27. How does PUT method behave when there is no data to update?
PUT method updates data if available, else returns success with no changes.
PUT method updates the resource if it exists, else creates a new resource
If no data is provided, the server returns a success response with no changes made
Example: PUT /users/1 with empty body will return success with no changes if user with id 1 exists
Q28. Difference between sort and sorted, dump vs dumps, load vs loads etc.
Difference between sort and sorted, dump vs dumps, load vs loads etc.
sort() is a method of list object while sorted() is a built-in function
dump() serializes an object to a file while dumps() serializes to a string
load() deserializes an object from a file while loads() deserializes from a string
Q29. How do you make sure some default code executes when the Spring boot applications starts up?
Use @PostConstruct annotation or implement CommandLineRunner interface
Use @PostConstruct annotation on a method that needs to be executed on startup
Implement CommandLineRunner interface and override run() method
Add the code that needs to be executed on startup in the method annotated with @PostConstruct or in the run() method
Example: @PostConstruct public void init() { //code to be executed on startup }
Example: public class MyApp implements CommandLineRunner { public void run...read more
Q30. How would you convince the client if is not agreeing with your design?
I would present the client with a detailed explanation of the design, highlighting its benefits and addressing any concerns they may have.
Listen to the client's concerns and understand their perspective
Explain the design concept clearly and address how it meets the client's needs
Provide visual aids such as sketches or 3D models to help the client visualize the design
Offer alternative solutions or compromises that may address the client's concerns while still maintaining the i...read more
Q31. How Agile process works
Agile process involves iterative development, collaboration, and flexibility in responding to change.
Agile process breaks down projects into smaller, manageable tasks called sprints.
Teams work in short iterations, typically 2-4 weeks, to deliver working software.
Regular meetings like daily stand-ups, sprint planning, and retrospectives help keep the team on track.
Customer feedback is incorporated throughout the development process to ensure the final product meets their needs...read more
Q32. 1) How to communicate between two micro services?
Microservices can communicate through synchronous or asynchronous protocols like REST, gRPC, or message brokers.
Use RESTful APIs for synchronous communication
Use message brokers like Kafka or RabbitMQ for asynchronous communication
gRPC can be used for high-performance synchronous communication
API Gateway can be used to manage communication between microservices
Consider using service mesh like Istio or Linkerd for more advanced communication needs
Q33. What is multi threading and difference between threads and processes
Multithreading is the concurrent execution of multiple threads to achieve parallelism and improve performance.
Multithreading allows multiple threads to run concurrently within a single process.
Threads share the same memory space and resources of the process they belong to.
Processes are independent instances of a program, each with its own memory space and resources.
Processes do not share memory directly and communicate through inter-process communication (IPC).
Threads are lig...read more
Q34. Explain layers of OSI model. Which one would you use OSI or TCP/UDP and why? Explain with example.
The OSI model has 7 layers. OSI or TCP/UDP depends on the application. OSI is used for theoretical understanding while TCP/UDP is used for practical implementation.
The 7 layers of OSI model are Physical, Data Link, Network, Transport, Session, Presentation, and Application.
OSI model is used for theoretical understanding of networking concepts.
TCP/UDP are used for practical implementation of networking protocols.
TCP is used for reliable data transfer while UDP is used for fast...read more
Q35. Whats the difference between @Service and @Component annotations?
The @Service annotation is a specialization of the @Component annotation and is used to indicate that a class is a service.
Both @Service and @Component annotations are used to indicate that a class is a Spring-managed component.
@Service is a specialization of @Component and is used to indicate that a class is a service layer component.
The @Service annotation is used to add a layer of abstraction between the controller and the DAO layer.
The @Service annotation is used to provi...read more
Q36. Customization tools and details
Customization tools and details are essential for tailoring engineering solutions to specific needs.
Customization tools allow for adjusting parameters to meet unique requirements
Details provide a deeper understanding of the system being engineered
Examples include CAD software for designing custom parts and simulation tools for optimizing performance
Q37. .Net Core middleware, when we required custom middleware?
Custom middleware in .Net Core is required when we need to add additional processing logic to the request pipeline.
Custom authentication
Request logging
Error handling
Response compression
Q38. How many python modules you have used?
I have used multiple python modules for various purposes.
I have used NumPy for numerical computations.
I have used Pandas for data analysis and manipulation.
I have used Matplotlib for data visualization.
I have used Flask for web development.
I have used Requests for making HTTP requests.
I have used BeautifulSoup for web scraping.
I have used Scikit-learn for machine learning tasks.
I have used TensorFlow for deep learning tasks.
Q39. 2. Tell me in detail how you implement the extent report
Extent report can be implemented by adding the extent report dependency, creating an instance of ExtentReports class, and using ExtentTest class to create test logs.
Add the extent report dependency in the project's pom.xml file
Create an instance of ExtentReports class in the @BeforeSuite method
Create an instance of ExtentTest class in the @BeforeMethod method
Use ExtentTest class to log test steps and results
Generate the report using the flush() method in the @AfterSuite metho...read more
Q40. create sql queries for different scenarios
Creating SQL queries for different scenarios
Use SELECT statement to retrieve data from a table
Use WHERE clause to filter data based on specific conditions
Use JOIN clause to combine data from multiple tables
Q41. What does the HTTP error codes 400, 500 represent?
HTTP error codes 400 and 500 represent client and server errors respectively.
HTTP error code 400 indicates a client-side error, such as a bad request or invalid input.
HTTP error code 500 indicates a server-side error, such as an internal server error or database connection issue.
Other common client-side errors include 401 (unauthorized), 403 (forbidden), and 404 (not found).
Other common server-side errors include 503 (service unavailable) and 504 (gateway timeout).
Q42. What is TSQL and optimization techniques
TSQL is a Microsoft proprietary extension of SQL used for querying and managing relational databases.
TSQL stands for Transact-SQL and is used in Microsoft SQL Server.
Optimization techniques in TSQL include indexing, query tuning, and avoiding unnecessary joins.
Examples of optimization techniques in TSQL include using appropriate indexes on frequently queried columns and avoiding using functions in WHERE clauses.
Q43. SQL query for 2nd highest salary
SQL query to find the 2nd highest salary in a table
Use the ORDER BY clause to sort the salaries in descending order
Use the LIMIT clause to limit the result to the second row
Consider handling cases where there might be ties for the highest salary
Q44. SQL query to find 2nd highest salary.
SQL query to find 2nd highest salary.
Use ORDER BY to sort the salaries in descending order
Use LIMIT to get the second highest salary
Use subquery to avoid duplicates if multiple employees have the same salary
Q45. Program to read data from excel
A program to read data from excel.
Use a library like Apache POI or OpenPyXL to read excel files.
Identify the sheet and cell range to read data from.
Parse the data and store it in a suitable data structure.
Handle errors and exceptions that may occur during the process.
Q46. Why NextJs is preferred over react js
Next.js is preferred over React.js for server-side rendering, automatic code splitting, and simplified routing.
Next.js provides built-in support for server-side rendering, improving performance and SEO.
Automatic code splitting in Next.js allows for faster page loads by only loading necessary code.
Next.js simplifies routing with file-based routing, making it easier to organize and navigate between pages.
Next.js also offers features like static site generation and API routes fo...read more
Q47. What is python testing and their unittest
Python testing is a process of verifying the functionality of code. Unittest is a built-in testing framework in Python.
Python testing is done to ensure that the code is working as expected.
Unittest is a testing framework that comes with Python's standard library.
It provides a set of tools for constructing and running tests.
Tests are written as methods within a class that inherits from unittest.TestCase.
Assertions are used to check if the expected output matches the actual out...read more
Q48. Explain Lambda functions. Map, reduce, filter etc.
Lambda functions are anonymous functions that can be passed as arguments to other functions.
Lambda functions are also known as anonymous functions because they don't have a name.
They are often used as arguments to higher-order functions like map, reduce, and filter.
Map applies a function to each element of an array and returns a new array with the results.
Reduce applies a function to the elements of an array and returns a single value.
Filter applies a function to each element...read more
Q49. When we use ssis packages? Difference between union merge
SSIS packages are used for ETL processes in SQL Server. Union combines datasets vertically, while merge combines them horizontally.
SSIS packages are used for Extract, Transform, Load (ETL) processes in SQL Server.
Union in SSIS combines datasets vertically, stacking rows on top of each other.
Merge in SSIS combines datasets horizontally, matching rows based on specified columns.
Union All in SSIS combines datasets vertically without removing duplicates.
Merge Join in SSIS combine...read more
Q50. Testing methodologies Defect life-cycle Example of high priority and low severity defect and vice versa What is Agile
Testing methodologies, defect life-cycle, high priority vs low severity defects, and Agile.
Testing methodologies include black box, white box, and grey box testing.
Defect life-cycle includes identification, logging, prioritization, fixing, retesting, and closure.
High priority and low severity defect example: spelling mistake in a critical message.
Low priority and high severity defect example: cosmetic issue in a non-critical area.
Agile is an iterative and incremental approach...read more
Q51. How does a concurrent Hash Map works internally?
Concurrent Hash Map is a thread-safe implementation of Hash Map.
Uses multiple segments to allow concurrent access
Each segment is a separate hash table with its own lock
Segments are dynamically added or removed based on usage
Uses CAS (Compare and Swap) operation for updates
Provides higher concurrency than synchronized Hash Map
Q52. REST and SOAP examples and design principles
REST and SOAP are web service protocols with different design principles
REST (Representational State Transfer) is an architectural style that uses standard HTTP methods like GET, POST, PUT, DELETE for communication
SOAP (Simple Object Access Protocol) is a protocol that uses XML for message exchange and can work over various transport protocols like HTTP, SMTP, etc.
REST is lightweight, scalable, and easy to use, while SOAP is more rigid and has built-in security features
REST i...read more
Q53. Code on basic trigger
A basic trigger code is used to automatically perform an action when a certain event occurs in a database.
Triggers are written in SQL and can be used to enforce business rules, perform data validation, or maintain data integrity.
Example: CREATE TRIGGER trigger_name BEFORE INSERT ON table_name FOR EACH ROW BEGIN ... END;
Q54. Explain dict, tuple, list, set, string etc.
Data structures in Python: dict, tuple, list, set, string
dict: unordered collection of key-value pairs
tuple: ordered, immutable collection of elements
list: ordered, mutable collection of elements
set: unordered collection of unique elements
string: ordered collection of characters
Q55. Explain Oops concepts and object oriented programming approach.
Object-oriented programming is a programming paradigm that uses objects to represent and manipulate data.
Encapsulation: bundling data and methods together in a class
Inheritance: creating new classes from existing ones
Polymorphism: using a single interface to represent different types
Abstraction: simplifying complex systems by breaking them into smaller, manageable parts
Q56. How do you define a composite Primary key?
A composite primary key is a primary key that consists of two or more columns.
A composite primary key is used when a single column cannot uniquely identify a record.
It is created by combining two or more columns that together uniquely identify a record.
Each column in a composite primary key must be unique and not null.
Example: A table of orders may have a composite primary key consisting of order number and customer ID.
Q57. Explain list slices, starts and ends at.
List slices are a way to extract a portion of a list by specifying start and end indices.
List slices are denoted by using square brackets with start and end indices separated by a colon.
The start index is inclusive and the end index is exclusive.
If the start index is omitted, it defaults to 0. If the end index is omitted, it defaults to the length of the list.
Negative indices can be used to count from the end of the list.
List slices return a new list with the specified portio...read more
Q58. Explain the Automation framework
Automation framework is a set of guidelines, standards, and tools used for automating software testing.
It provides a structured approach to automate tests
It includes tools for test case management, test data management, and reporting
It helps in reducing manual effort and increasing test coverage
Examples include Selenium, Appium, and TestNG
Q59. Move all the zeros at last
Move all zeros in an array to the end while maintaining the order of other elements.
Iterate through the array and move all zeros to the end while keeping the order of non-zero elements.
Use two pointers approach to swap elements in-place.
Example: Input [0, 1, 0, 3, 12], Output [1, 3, 12, 0, 0]
Q60. What if there is no server in springboot
Spring Boot is designed to be a standalone application, so it can run without a separate server.
Spring Boot includes an embedded server (like Tomcat or Jetty) so it can run independently.
The embedded server is included in the application's JAR file, making it self-contained.
This allows Spring Boot applications to be easily deployed and run without the need for a separate server installation.
Q61. Code programs to solve basic string manipulations
Code programs to solve basic string manipulations
Use built-in string functions like substring, replace, and split
Implement algorithms for reversing a string, checking for palindromes, and counting occurrences of a character
Handle edge cases like empty strings and null inputs
Q62. Explain ownership of the project approach.
Ownership of the project approach refers to taking responsibility for the project's success and making decisions accordingly.
The owner of the project approach should have a clear understanding of the project's goals and objectives.
They should be able to make informed decisions about the project's direction and prioritize tasks accordingly.
The owner should also be accountable for the project's success or failure and be willing to take corrective action when necessary.
Effective...read more
Q63. Can we use list as dict key?
Yes, but only if the list is immutable.
Lists are mutable and cannot be used as dict keys.
Tuples are immutable and can be used as dict keys.
If a list needs to be used as a key, it can be converted to a tuple.
Q64. Have u worked on Java and Selenium?
Yes, I have worked extensively on Java and Selenium.
I have experience in developing and executing automated test scripts using Selenium WebDriver with Java.
I have worked on various frameworks like TestNG, JUnit, and Cucumber for test automation.
I have also integrated Selenium with other tools like Jenkins, Maven, and Git for continuous integration and delivery.
I have experience in debugging and troubleshooting issues in Selenium scripts.
I have worked on both web and mobile au...read more
Q65. difference between let const and var
let is block scoped, const is constant, var is function scoped
let: block scoped, can be reassigned
const: block scoped, cannot be reassigned, but its properties can be modified
var: function scoped, can be reassigned
Q66. Java program to count frequency of characters in string
Java program to count frequency of characters in string
Create a HashMap to store character and its frequency
Convert the string to char array
Iterate through the char array and update the frequency in HashMap
Print the HashMap
Q67. Class A{int num=60;} Class B extends A{int num=100; main(){ A a=new B; Sop(a.num);//output}}
Output of a Java program that extends a class and overrides a variable
Class B extends Class A and overrides the variable num with a value of 100
In the main method, an object of Class B is created and assigned to a reference variable of Class A
When the value of num is accessed using the reference variable, the output will be 60 as it is the value of num in Class A
Q68. Tell us about Quality Assurance process as I was hired for Quality department
Quality Assurance process involves ensuring products meet standards and customer expectations.
Developing quality standards and procedures
Testing products to identify defects
Implementing corrective actions
Continuous monitoring and improvement
Training staff on quality processes
Q69. How spring works internally
Spring is a lightweight framework that provides comprehensive infrastructure support for developing Java applications.
Spring works internally by using Inversion of Control (IoC) container to manage Java objects.
It uses Dependency Injection to inject the dependencies of an object at runtime.
Spring also provides Aspect-Oriented Programming (AOP) support for cross-cutting concerns.
It utilizes various modules like Core, Context, AOP, JDBC, ORM, etc., to provide different function...read more
Q70. what is sql injection
SQL injection is a type of cyber attack where malicious SQL code is inserted into input fields to manipulate a database.
SQL injection occurs when a user input is not properly sanitized and allows an attacker to execute malicious SQL commands.
It can lead to unauthorized access to sensitive data, data loss, and even complete server takeover.
Example: Entering ' OR '1'='1' into a login form to bypass authentication and gain access to the system.
Q71. What is Drupal and so many
Drupal is a free and open-source content management system (CMS) used to create websites and web applications.
Drupal is written in PHP and uses a MySQL or PostgreSQL database.
It allows users to create and manage content, customize the appearance, and add functionality through modules.
Drupal has a large community of developers and users who contribute to its development and provide support.
Some popular websites built with Drupal include The Economist, NBC, and the White House.
Q72. Program to reverse a string
A program to reverse a string
Iterate through the string from end to start and append each character to a new string
Use built-in functions like reverse() or StringBuilder.reverse() in some programming languages
Convert the string to an array, reverse the array, and then convert it back to a string
Q73. OOPs concepts, explain polymorphism, inheritance, etc
Polymorphism is the ability of an object to take on many forms. Inheritance is the process of creating new classes from existing ones.
Polymorphism allows objects of different classes to be treated as objects of a common superclass.
Inheritance allows a class to inherit properties and methods from another class.
Polymorphism and inheritance are key concepts in object-oriented programming (OOP).
Example of polymorphism: A superclass Animal with subclasses Dog, Cat, and Bird. They ...read more
Q74. When you are joine
Joining a new team requires understanding the team dynamics and culture.
Take time to observe and learn about the team's communication style and work processes.
Be open to feedback and willing to adapt to the team's way of doing things.
Build relationships with team members and establish trust through open communication.
Ask questions and seek clarification to ensure a clear understanding of expectations and goals.
Contribute your skills and expertise to the team while also being ...read more
Q75. What is CI Cd pipeline and string manipulation programs
CI/CD pipeline is a set of automated processes for building, testing, and deploying software. String manipulation programs involve manipulating text data.
CI/CD pipeline automates the process of integrating code changes, testing them, and deploying them to production.
String manipulation programs involve tasks like searching, replacing, and modifying text data.
Examples of string manipulation programs include finding the length of a string, converting text to uppercase, and extr...read more
Q76. Explain and Identify Async Coding styles
Async coding styles involve writing code that allows for non-blocking operations and efficient use of resources.
Callbacks: Passing functions as arguments to be executed once an asynchronous operation is completed.
Promises: Representing a value that may be available in the future, allowing chaining of operations.
Async/Await: Syntactic sugar for writing asynchronous code in a synchronous style.
Event Emitters: Using events to signal completion of asynchronous operations.
Q77. 3. Write a program to find duplicates number from list
Program to find duplicates in a list
Create an empty list to store duplicates
Loop through the list and check if the element appears more than once
If yes, add it to the duplicates list
Return the duplicates list
Q78. Optimization techniques for react
Optimization techniques for React include code splitting, lazy loading, memoization, and virtualization.
Code splitting: Break down the code into smaller chunks to load only what is necessary for each page.
Lazy loading: Load components only when they are needed, improving initial load time.
Memoization: Cache the results of expensive function calls to avoid redundant calculations.
Virtualization: Render only the visible elements in a list, improving performance for large dataset...read more
Q79. What is interface and why is it used
An interface is a contract between two components that defines the communication between them.
Interfaces provide a way to achieve abstraction and loose coupling in software design.
They allow different components to communicate with each other without knowing the implementation details.
Interfaces are used in object-oriented programming to define a set of methods that a class must implement.
Examples of interfaces in Java include Serializable, Comparable, and Runnable.
Interfaces...read more
Q80. Underlying structure of Databricks
Databricks is built on Apache Spark, a unified analytics engine for big data processing.
Databricks is built on top of Apache Spark, which provides a unified analytics engine for big data processing.
It offers a collaborative platform for data scientists, data engineers, and business analysts to work together.
Databricks provides tools for data ingestion, data processing, machine learning, and visualization.
It supports multiple programming languages like Python, Scala, SQL, and ...read more
Q81. Difference between PUT and POST methods?
PUT is used to update an existing resource while POST is used to create a new resource.
PUT is idempotent, meaning multiple identical requests will have the same effect as a single request.
POST is not idempotent and can result in multiple resources being created if the request is sent multiple times.
PUT requires the client to send the entire updated resource while POST only requires the necessary fields to create a new resource.
PUT is typically used for updating data while POS...read more
Q82. Explain control flow of the automation framework
Control flow of automation framework refers to the sequence in which the test cases are executed.
The framework follows a predefined sequence of steps to execute test cases
It includes steps like test case selection, test data preparation, test case execution, and result reporting
The control flow can be linear or non-linear depending on the framework design
Example: In a linear control flow, test cases are executed one after the other in a predefined order
Q83. Development about backend and front end
Backend development focuses on server-side logic and databases, while front end development focuses on user interface and client-side functionality.
Backend development involves writing server-side code using languages like Java, Python, or Node.js.
Front end development involves creating user interfaces using HTML, CSS, and JavaScript.
Backend developers work on databases, APIs, and server-side logic.
Front end developers focus on creating visually appealing and interactive user...read more
Q84. NodeJs is single threaded but how it achieved multiple threading
NodeJs achieves multiple threading through event loop and asynchronous non-blocking I/O operations.
NodeJs uses event loop to handle multiple requests efficiently without blocking the main thread.
It utilizes asynchronous non-blocking I/O operations to perform tasks concurrently.
NodeJs can also create child processes to handle heavy computational tasks in parallel.
Q85. Program to write odd and even by using third variable
A program to write odd and even numbers using a third variable.
Declare three variables: num, even, and odd.
Take input from the user for num.
Use if-else statement to check if num is even or odd.
If even, assign num to even variable, else assign to odd variable.
Print even and odd variables.
Q86. Can we call queueable class from batch class
Yes, we can call queueable class from batch class.
Batch class can call a queueable class to perform additional processing after the batch job completes.
Queueable class can be called from the finish method of the batch class.
This allows for asynchronous processing of data.
Example: Batch class processes records and calls a queueable class to send email notifications.
Q87. What is oops, Jruby GIThub command
OOPs stands for Object-Oriented Programming, JRuby is a Ruby implementation on the Java Virtual Machine, and GitHub commands are used for version control.
OOPs is a programming paradigm based on the concept of objects, which can contain data in the form of fields and code in the form of procedures.
JRuby is a Ruby implementation that runs on the Java Virtual Machine, allowing Ruby code to interact with Java libraries.
GitHub commands are used to interact with repositories on the...read more
Q88. What is the flow of recent project
The recent project flow involved data extraction, transformation, and loading using ETL tools.
The project started with identifying the data sources and requirements.
Then, the data was extracted from various sources using ETL tools like Informatica, Talend, etc.
The extracted data was transformed as per the business rules and requirements.
Finally, the transformed data was loaded into the target system.
The project also involved testing the ETL process and ensuring data accuracy ...read more
Q89. What is data security
Data security refers to the protection of digital data from unauthorized access, use, disclosure, disruption, modification, or destruction.
Ensuring data confidentiality by encrypting sensitive information
Implementing access controls to restrict unauthorized users from accessing data
Regularly updating security measures to protect against evolving threats
Backing up data to prevent loss in case of a security breach
Q90. What parameters you will consider while design a system
Parameters considered while designing a system
Functional requirements
Performance requirements
Scalability
Security
Maintainability
Cost
User experience
Integration with existing systems
Q91. 5. How you handle dynamic web table
Dynamic web tables can be handled using various methods like XPath, CSS selectors, and Selenium commands.
Identify the table element using its HTML tag and attributes
Use Selenium commands like findElement() and findElements() to locate the table and its rows/columns
Iterate through the rows and columns using loops and extract the required data
Use XPath or CSS selectors to locate specific cells or data within the table
Handle pagination if the table has multiple pages
Verify the a...read more
Q92. Nodejs how to scale How does event lop work internally
Node.js scaling involves horizontal scaling and load balancing. Event loop is a single-threaded, non-blocking I/O model.
Node.js scaling involves horizontal scaling and load balancing
Event loop is a single-threaded, non-blocking I/O model
Horizontal scaling involves adding more servers to handle increased traffic
Load balancing distributes incoming requests across multiple servers
Event loop allows Node.js to handle multiple concurrent requests efficiently
Event loop uses an event...read more
Q93. Explain memory management of python.
Python uses automatic memory management through garbage collection.
Python uses reference counting to keep track of objects in memory.
When an object's reference count reaches zero, it is deleted by the garbage collector.
Python also uses a cyclic garbage collector to detect and delete objects with circular references.
Memory can be managed manually using the ctypes module.
Python's memory management is efficient and transparent to the developer.
Q94. 1. Write a code for database connectivity
Code for database connectivity
Import the required database driver
Create a connection object using the driver
Establish connection to the database using connection object
Execute SQL queries using the connection object
Close the connection
Q95. Java 8 features and logical of it
Java 8 introduced several new features such as lambda expressions, streams, and functional interfaces.
Lambda expressions allow for more concise code by enabling functional programming.
Streams provide a way to work with collections in a more functional style, allowing for parallel processing and lazy evaluation.
Functional interfaces are interfaces with a single abstract method, which can be implemented using lambda expressions.
Other features include default methods in interfac...read more
Q96. 1Code on Palindrome
A palindrome is a word, phrase, number, or other sequence of characters that reads the same forward and backward.
Check if the string is equal to its reverse to determine if it is a palindrome.
Ignore spaces and punctuation when checking for palindromes.
Examples: 'racecar', 'madam', '12321'
Q97. check palindrome in python
Check if a string is a palindrome in Python
Use string slicing to reverse the string and compare with the original string
Remove spaces and convert to lowercase for accurate comparison
Use a for loop to iterate through the string and check if it is a palindrome
Q98. 2)What are SOLID principles?
SOLID principles are a set of five design principles for writing maintainable and scalable code.
S - Single Responsibility Principle: A class should have only one reason to change.
O - Open/Closed Principle: Software entities should be open for extension but closed for modification.
L - Liskov Substitution Principle: Subtypes should be substitutable for their base types.
I - Interface Segregation Principle: Clients should not be forced to depend on interfaces they do not use.
D - ...read more
Q99. find out duplicate element in array?
Use a HashSet to find duplicate elements in an array of strings.
Create a HashSet to store unique elements.
Iterate through the array and check if the element is already in the HashSet.
If it is, then it is a duplicate element.
Example: String[] array = {"apple", "banana", "apple", "orange"};
Q100. Explain how backpropogation works
Backpropagation is a method used in neural networks to update the weights of the network by calculating the gradient of the loss function.
Backpropagation involves calculating the gradient of the loss function with respect to each weight in the network.
The gradients are then used to update the weights in the network in order to minimize the loss function.
This process is repeated iteratively until the network converges to a set of weights that minimize the loss function.
Backpro...read more
Top HR Questions asked in null
Interview Process at null
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month