Newgen interview questions

78 questions from 15 interviews · updated from reports 2017-2024

Practise Newgen-style

About

Newgen Software is an Indian software company that provides a low-code platform for business process automation, content services, and customer communication management. In India, it is commonly seen hiring Software Engineers, Software Design Engineers, and Associate Software Engineers for product development and implementation work.

The roles that come up most are Software Engineer, Software Design Engineer and Associate Software Engineer. This covers 15 candidate interviews reported from 2017 to 2024. Most sat it at entry level (14 of 15 that recorded a level), with 1 internship interviews alongside. Among the 14 that recorded either route, arrivals split between campus drives (12, 86%) and off-campus applications (2, 14%). Most questions fall under CS fundamentals and DSA.

Category
Difficulty
Round

Interview questions

Q. Reverse a linked list.

asked 2xeasyLinked listsTechnical2021-2024

Ans. Reverse a linked list by iterating through it and changing each node’s next pointer to point to the previous node. Keep three pointers: previous, current, and next, so you do not lose the rest of the list. At the end, previous is the new head. Time complexity is O(n), space complexity is O(1).

Q. Find duplicate characters in a string

asked 2xeasyStringsTechnical2023

Ans. Use a frequency map to count how many times each character appears, then report the characters whose count is greater than one. Traverse the string once, updating counts in a hash map or fixed-size array for known character sets. This takes O(n) time and O(k) space, where k is the character set size.

Q. Perform inorder traversal of a binary tree

asked 2xeasyTreesTechnical2023

Ans. Perform inorder traversal by visiting the left subtree, then the current node, then the right subtree. Use recursion, or use an explicit stack to simulate recursion if an iterative approach is required. Each node is processed once, so the time complexity is O(n), and the space complexity is O(h) for tree height.

Q. Check whether a given string is a palindrome.

asked 2xeasyStringsTechnical2020-2021

Ans. Use two pointers, one at the start of the string and one at the end, and compare characters while moving inward. If any pair differs, it is not a palindrome; if the pointers meet or cross, it is. This uses no extra data structure and runs in O(n) time with O(1) space.

Q. What is the difference between a stack and a queue?

asked 2xeasyData structuresTechnical2020-2021

Ans. A stack removes the most recently added item first, while a queue removes the earliest added item first. This is usually called LIFO for stack and FIFO for queue. Stacks are used for function calls, undo, or parsing. Queues are used for scheduling, buffering, and breadth first search.

Q. Explain primary key, foreign key, candidate key, and super key in DBMS

asked 2xeasyDBMSTechnical2017-2024

Ans. A super key is any set of columns that uniquely identifies a row. A candidate key is a minimal super key, with no unnecessary columns. A primary key is the chosen candidate key used as the main row identifier. A foreign key is a column that refers to a primary or candidate key in another table.

Q. Explain the Merge Sort algorithm

asked 1xmediumSortingTechnical2023

Ans. Merge sort is a divide and conquer sorting algorithm that splits the array into halves, sorts each half recursively, then merges the sorted halves. The key step is merging by comparing the smallest remaining elements. It runs in O(n log n) time and usually needs O(n) extra space.

Q. Implement a stack using a linked list

asked 1xmediumLinked listsTechnical2020

Ans. Use a singly linked list and treat the head node as the top of the stack. To push, create a new node and link it before the current head. To pop, remove the head and return its value. Peek reads the head value. Push, pop and peek are O(1); space is O(n).

Q. Explain BFS and DFS traversal in graphs

asked 1xmediumGraphsTechnical2023

Ans. BFS visits a graph level by level using a queue, while DFS goes as deep as possible along a path using recursion or a stack. Both need a visited set to avoid cycles and repeated work. For adjacency lists, each traversal runs in O(V + E) time and uses O(V) extra space.

Q. Find the k-th largest element in an array.

asked 1xmediumArraysTechnical2024

Ans. Use a min-heap of size k: insert each element, and whenever the heap grows beyond k, remove the smallest. After processing the array, the heap root is the k-th largest element. This takes O(n log k) time and O(k) space, and handles duplicates naturally.

Q. Why are system testing and unit testing done?

asked 1xmediumSoftware testingTechnical2020

Ans. System testing and unit testing are done to find defects and prove that software works as expected at different levels. Unit testing checks small pieces of code in isolation, usually by developers. System testing checks the complete application against requirements, including how components work together, before release.

Q. Write the steps and syntax for JDBC connectivity.

asked 1xmediumDBMSTechnical2020

Ans. JDBC connectivity steps are: import java.sql package, load/register the driver, create a Connection using DriverManager.getConnection(url, user, password), create Statement or PreparedStatement, execute the SQL, process the ResultSet, then close ResultSet, Statement and Connection. The most important detail is to use PreparedStatement to avoid SQL injection and handle parameters safely.

Q. What happens if we execute REVOKE just after COMMIT?

asked 1xmediumDBMSTechnical2020

Ans. REVOKE will remove the specified privileges, but it will not affect the changes already saved by COMMIT. COMMIT makes the transaction permanent, so any inserted, updated, or deleted data remains stored. REVOKE only changes access permissions for a user or role, and in some databases it may also cause an implicit commit.

Q. Explain and implement BFS and DFS traversals for a graph.

asked 1xmediumGraphsTechnical2023

Ans. BFS visits a graph level by level using a queue, while DFS goes as deep as possible using recursion or a stack. Implement both with an adjacency list and a visited set to avoid cycles and repeated work. Start from a source node, mark visited, then process neighbours. Both run in O(V + E) time.

Q. Explain the Merge Sort algorithm and its time complexity.

asked 1xmediumSortingTechnical2023

Ans. Merge Sort is a divide and conquer sorting algorithm that splits the array into two halves, recursively sorts each half, then merges the sorted halves. Its time complexity is O(n log n) in best, average, and worst cases. The key cost is merging, which processes each element at every level.

Q. How can data be recovered from a database after a failure?

asked 1xmediumDBMSTechnical2020

Ans. Data is recovered by restoring the latest consistent backup, then replaying transaction logs to bring the database forward to the point of failure. The key detail is write-ahead logging: changes are recorded before being applied, so committed transactions can be redone and incomplete transactions can be undone.

Q. Explain JDBC concepts and how Java connects to databases using JDBC

asked 1xmediumDBMSTechnical2024

Ans. JDBC is Java’s standard API for connecting to relational databases, sending SQL, and reading results. Java loads a database driver, obtains a Connection through DriverManager or DataSource, creates a Statement or PreparedStatement, executes queries or updates, and reads a ResultSet. The key detail is to use PreparedStatement and close resources properly.

Q. Explain JavaScript fundamentals relevant to frontend web development.

asked 1xmediumJavaScriptTechnical2023

Ans. JavaScript fundamentals for frontend development include variables, types, functions, scope, closures, objects, arrays, DOM manipulation, events, modules, and asynchronous programming with promises and async/await. The most important detail is understanding the event loop, because UI updates, user interactions, timers, network requests, and rendering all depend on non-blocking execution.

Q. Measure a specific amount of time using two ropes that burn unevenly.

asked 1xmediumLogical reasoningTechnical2021

Ans. Light rope A at both ends and rope B at one end. Rope A finishes in 30 minutes, because both burning fronts consume its one hour of burn time together. At that moment, light the other end of rope B. It has 30 minutes of burn left, now burned from both ends, so it finishes after 15 more minutes. Total: 45 minutes.

Q. Write SQL queries to retrieve and manipulate data (4–5 queries asked)

asked 1xmediumSQLTechnical2024

Ans. Use SELECT with WHERE to filter rows, JOIN to combine related tables, GROUP BY with aggregate functions for summaries, and INSERT, UPDATE, or DELETE to change data. The key detail is choosing the right join condition and filtering before aggregation where possible. With proper indexes, lookups are usually logarithmic; full scans are linear.

Q. What is polymorphism? Implement compile-time and run-time polymorphism

asked 1xmediumOOPTechnical2020

Ans. Polymorphism is the ability to use one interface while different types provide different behaviour. Compile-time polymorphism is implemented with method or operator overloading, where the compiler chooses the function by signature. Run-time polymorphism is implemented with inheritance and overriding, using a base-class reference or pointer and virtual dispatch. Dispatch is typically constant time.

Q. Answer fundamental database-related questions based on coursework knowledge.

asked 1xmediumDBMSTechnical2023

Ans. A database stores organised data so it can be queried, updated, and managed reliably. In coursework, the key ideas are relational tables, primary and foreign keys, SQL queries, normalisation to reduce redundancy, indexes to speed lookups, and transactions with ACID properties to keep data correct during concurrent operations.

Q. Write an SQL query to find the minimum two values from a specific column in a table.

asked 1xmediumSQLTechnical2024

Ans. Select the target column from the table, sort it in ascending order, and return only the first two rows. The key detail is whether duplicates count: use distinct values if you need the two smallest unique values, otherwise the result may contain the same minimum value twice. This runs in sorting time.

Q. Explain SQL joins and write queries using joins on two given tables to retrieve required data.

asked 1xmediumDBMSTechnical2021

Ans. SQL joins combine rows from two tables using a related column, usually a primary key and foreign key. An inner join returns matching rows only, a left join returns all left table rows plus matches, and a right or full join keeps unmatched rows from one or both sides. Use aliases and qualify columns to avoid ambiguity.

Q. Design and implement a basic Bank Management System supporting Deposit, Withdraw, and Check Balance operations

asked 1xmediumDesignTechnical2023

Ans. Use a map from account ID to account object holding the current balance. Deposit adds a positive amount, withdraw first checks sufficient funds and then subtracts, and check balance returns the stored value. Validate account existence and non-negative amounts. Each operation takes O(1) average time with a hash map.

Q. Given three bulbs in a room and three switches outside, how can you determine which switch controls which bulb with only one entry into the room?

asked 1xmediumLogical reasoningTechnical2020

Ans. Turn on switch 1 for a few minutes, then turn it off. Turn on switch 2 and leave switch 3 off. Enter the room once. The lit bulb is controlled by switch 2. Of the two unlit bulbs, the warm one is controlled by switch 1, and the cold one by switch 3.

Q. You have three boxes incorrectly labeled: one contains only apples, one only oranges, and one a mix. By picking one fruit from one box, how can you correctly label all boxes?

asked 1xmediumLogical reasoningTechnical2020

Ans. Pick one fruit from the box labelled “mix”. Since every label is wrong, that box cannot be mixed, so the fruit tells you its true contents. If it is an apple, that box is apples. The box labelled oranges must then be mix, and the box labelled apples is oranges. Reverse this if you pick an orange.

Q. Implement banking constraints such as daily transaction limits, withdrawal not exceeding 80% of monthly balance on the 1st day, deposit limit of 10x initial deposit per day, and limited balance checks per day

asked 1xmediumConstraintsTechnical2023

Ans. Use per-account state and validate every operation before applying it. Store balance, initial deposit, today’s withdrawn, today’s deposited, today’s balance-check count, current day, and current month balance snapshot. Reset daily counters when the date changes. On the 1st, cap withdrawals at 80% of monthly balance. Each operation is O(1).

Q. Implement a bank management system with Deposit, Withdraw, and Check Balance functionalities, enforcing constraints like daily transaction limits, withdrawal not exceeding 80% of monthly balance on the 1st day, deposit limits relative to initial deposit, and limited balance checks per day, with all operations driven by input from a CSV file.

asked 1xmediumImplementationTechnical2023

Ans. Use an Account object stored in a map by account id, process each CSV row sequentially, validate the requested operation against the account state, then update balances and counters only if valid. Store balance, initial deposit, monthly balance, per-day transaction count, per-day balance-check count, and current date. Each operation is O(1), total O(n).

Q. Implement the bubble sort algorithm.

asked 1xeasySortingTechnical2024

Ans. Bubble sort repeatedly scans the array, compares adjacent elements, and swaps them if they are in the wrong order. After each full pass, the largest unsorted element moves to its final position. Stop after no swaps occur, or after n minus 1 passes. It sorts in place, with O(n²) time and O(1) space.

Q. What are the types of database commands?

asked 1xeasyDBMSTechnical2020

Ans. Database commands are commonly grouped into DDL, DML, DQL, DCL and TCL. DDL defines structure, such as CREATE and ALTER. DML changes data, such as INSERT and UPDATE. DQL reads data using SELECT. DCL controls permissions, such as GRANT. TCL manages transactions, such as COMMIT and ROLLBACK.

Q. Write an SQL query to rename a database.

asked 1xeasySQLTechnical2020

Ans. In SQL Server, rename a database using ALTER DATABASE with MODIFY NAME, specifying the old name and the new name. The key detail is that this is database-specific: MySQL does not support a simple rename database statement, so you usually create a new database and migrate or dump and restore the data.

Q. Explain DML, DDL, and DCL commands in SQL.

asked 1xeasyDBMSTechnical2024

Ans. DML manipulates data, DDL defines database structure, and DCL controls access permissions. DML includes SELECT, INSERT, UPDATE, and DELETE. DDL includes CREATE, ALTER, DROP, and TRUNCATE. DCL includes GRANT and REVOKE. The key difference is that DML affects rows, DDL affects schema, and DCL affects user privileges.

Q. What are the steps of the Waterfall Model?

asked 1xeasySoftware engineeringTechnical2020

Ans. The Waterfall Model steps are requirements analysis, system design, implementation, testing, deployment, and maintenance. Each phase is completed before the next begins, with outputs from one phase feeding the next. The key point is that it is a linear process, so late changes can be expensive and difficult.

Q. Write a program to generate random numbers

asked 1xeasyBasic codingTechnical2020

Ans. Use a pseudo random number generator with a seed, such as a linear congruential generator, to produce each next number from the previous one. Store only the current seed value, so no extra data structure is needed. Each generated number takes O(1) time and O(1) space.

Q. What are the differences between C and C++?

asked 1xeasyOOPTechnical2024

Ans. C is a procedural language, while C++ is largely a superset of C with object oriented and generic programming features. C++ adds classes, inheritance, polymorphism, templates, exceptions, references, function overloading and the standard library. The most important difference is abstraction: C gives low level control, while C++ supports higher level design without losing that control.

Q. Differentiate between arrays and linked lists.

asked 1xeasyData structuresTechnical2024

Ans. Arrays store elements in contiguous memory and allow fast index-based access, while linked lists store elements as separate nodes connected by pointers. Arrays have O(1) random access but costly insertions or deletions in the middle. Linked lists have O(n) access but can insert or delete efficiently when the node is known.

Q. Remove duplicate elements from a sorted array.

asked 1xeasyArraysTechnical2017

Ans. Use a two-pointer approach to remove duplicates in place. Keep one pointer at the position for the next unique element, scan with the other, and copy only when the current value differs from the last kept value. This uses no extra data structure, runs in O(n) time, and O(1) space.

Q. Check if a given parentheses string is balanced.

asked 1xeasyStacksTechnical2021

Ans. Scan the string left to right and use a stack to ensure every closing bracket matches the most recent unmatched opening bracket. Push opening brackets, pop and compare on closing brackets, and fail if the stack is empty or mismatched. The string is balanced only if the stack is empty at the end. Time complexity is O(n).

Q. Explain linked lists and their basic operations.

asked 1xeasyLinked listsTechnical2023

Ans. A linked list is a linear data structure where each node stores data and a reference to the next node, and sometimes the previous one. Basic operations are traversal, insertion, deletion and search. Insertion or deletion is constant time when the node position is known, but searching usually takes linear time.

Q. Explain exception handling in Java with examples.

asked 1xeasyOOPTechnical2021

Ans. Exception handling in Java lets a program deal with runtime errors without crashing, using try, catch, finally, throw, and throws. For example, reading a file may throw a checked IOException, so it must be caught or declared. Dividing by zero may throw an unchecked ArithmeticException. finally is used for cleanup, such as closing resources.

Q. Remove duplicate elements from an unsorted array.

asked 1xeasyArraysTechnical2017

Ans. Use a hash set to track values already seen, and build a result array by adding each element only the first time it appears. This preserves the original order of first occurrences. The time complexity is O(n), and the extra space complexity is O(n).

Q. What are the iterative model and prototype model?

asked 1xeasySoftware engineeringTechnical2020

Ans. The iterative model builds software through repeated cycles, adding or improving features each time, while the prototype model builds an early working sample to clarify requirements before full development. The key difference is that iteration evolves the real product, whereas prototyping mainly explores and validates what users need.

Q. Explain different types of JOIN operations in SQL.

asked 1xeasyDBMSTechnical2021

Ans. SQL JOINs combine rows from related tables: INNER JOIN returns only matching rows, LEFT JOIN returns all left rows plus matches, RIGHT JOIN returns all right rows plus matches, and FULL OUTER JOIN returns all rows from both sides. CROSS JOIN returns every pair of rows. The join condition usually uses matching key columns.

Q. What is RDBMS? Explain different types of SQL joins

asked 1xeasySQLTechnical2017

Ans. An RDBMS is a database system that stores data in related tables with rows, columns, keys, and SQL for querying. SQL joins combine rows from tables using related columns. Inner join returns matching rows. Left join returns all left rows plus matches. Right join returns all right rows plus matches. Full join returns all rows from both sides.

Q. Find the second largest element in an unsorted array.

asked 1xeasyArraysTechnical2017

Ans. Scan the array once while keeping two values: the largest and the second largest seen so far. For each element, update the largest and move the old largest to second largest, or update only the second largest if it lies between them. This uses constant space and runs in O(n) time.

Q. Define RDBMS and explain different types of SQL joins.

asked 1xeasyDBMSTechnical2024

Ans. An RDBMS is software that stores data in related tables with rows, columns, keys and SQL for querying. SQL joins combine rows from tables using matching columns. Inner join returns matches only. Left and right joins keep all rows from one side. Full outer join keeps all rows from both sides. Cross join returns all combinations.

Q. Explain and solve questions based on the ternary operator

asked 1xeasyOperatorsTechnical2020

Ans. The ternary operator is a shorthand conditional expression: condition ? valueIfTrue : valueIfFalse. It evaluates the condition first, then returns only one of the two expressions. It is best used for simple assignments or return values, not complex logic. Nested ternary operators work, but reduce readability and should usually be avoided.

Q. Explain SQL commands: DDL, DML, DCL (and related commands)

asked 1xeasySQLTechnical2017

Ans. SQL commands are grouped by purpose: DDL defines database structure, DML changes or reads data, and DCL controls permissions. DDL includes CREATE, ALTER, DROP and TRUNCATE. DML includes SELECT, INSERT, UPDATE and DELETE. DCL includes GRANT and REVOKE. Related TCL commands include COMMIT, ROLLBACK and SAVEPOINT for transaction control.

Q. Explain the stack data structure and its basic operations.

asked 1xeasyStacksTechnical2023

Ans. A stack is a linear data structure that stores items in last in, first out order, so the most recently added item is removed first. Its basic operations are push to add an item, pop to remove the top item, peek to read the top item, and isEmpty to check whether it has items.

Q. Explain the time complexity of various sorting algorithms.

asked 1xeasySortingTechnical2024

Ans. Common sorting complexities are: bubble, selection and insertion sort are O(n²) on average, merge sort and heap sort are O(n log n), and quicksort is O(n log n) average but O(n²) worst case. The key detail is whether the algorithm repeatedly compares pairs, divides the input, or depends on pivot quality.

Q. What is the difference between DELETE and TRUNCATE in SQL?

asked 1xeasyDBMSTechnical2021

Ans. DELETE removes selected rows and can use a WHERE clause, while TRUNCATE removes all rows from a table. DELETE is usually row logged, can fire delete triggers, and is slower for large tables. TRUNCATE deallocates data pages, is faster, often resets identity values, and cannot be used when referenced by foreign keys.

Q. Explain the time complexities of various sorting algorithms

asked 1xeasySortingTechnical2017

Ans. Common sorting complexities are: bubble, insertion and selection sort take O(n²) on average, merge sort and heap sort take O(n log n), and quicksort takes O(n log n) on average but O(n²) worst case. Counting or radix sort can be O(n) when keys have a limited range or fixed size.

Q. Write an SQL query to retrieve the top 50 rows from a table.

asked 1xeasySQLTechnical2024

Ans. Use a SELECT statement with an ORDER BY clause and a row limiting clause to return 50 rows. In MySQL, PostgreSQL, and SQLite, use LIMIT 50. In SQL Server, use TOP 50. The important detail is to define “top” with ORDER BY, otherwise the returned rows are not deterministic.

Q. Write a Java program demonstrating polymorphism and inheritance.

asked 1xeasyOOPTechnical2020

Ans. Create a parent class Animal with a method makeSound, then create child classes Dog and Cat that extend Animal and override makeSound. In main, store Dog and Cat objects in an Animal array or list and call makeSound on each. This demonstrates inheritance and runtime polymorphism. Time complexity is O(n).

Q. Write an SQL query to find the top 10 employees based on salary.

asked 1xeasySQLTechnical2020

Ans. Select the employee columns from the employees table, order the rows by salary in descending order, and return only the first 10 rows. The key detail is using a limit clause, such as LIMIT 10 in MySQL or PostgreSQL, or FETCH FIRST 10 ROWS ONLY in standard SQL.

Q. Answer logical reasoning questions based on patterns and deductions

asked 1xeasyLogical reasoningOnline test2020

Ans. Identify the rule before choosing an answer. Compare items for changes in number, position, size, direction, colour, order or relationship. Test one pattern at a time and use elimination. For deductions, separate facts from assumptions, follow only what must be true, and check that the conclusion is fully supported.

Q. Solve basic mathematical aptitude problems (percentages, profit and loss, time and work, etc.)

asked 1xeasyMathematical aptitudeOnline test2020

Ans. Break the problem into known values, required value, and the formula needed. For percentages, convert to fractions or decimals. For profit and loss, use cost price, selling price, profit percentage, or loss percentage. For time and work, use rate of work per unit time, then combine rates carefully.

Q. Solve aptitude and logical reasoning problems involving quantitative aptitude and logical ability

asked 1xeasyLogical reasoningOnline test2020

Ans. Use a structured approach: read the question carefully, identify what is being asked, note the given data, and choose the right formula or logic pattern. For quantitative problems, simplify step by step and check units. For reasoning problems, use tables, diagrams, or elimination. Verify the answer against the options.

Showing 59 of 78 questions. Ranked by how often the same question came back across interviews.

Practise a Newgen-style interview

A spoken interview built from these questions, scored when you finish; the feedback is yours.

Start practising

When you are ready, record The One: a single interview hiring teams watch, so you stop repeating first rounds.

Common questions

What questions does Newgen ask?

Candidate interviews most often cover CS fundamentals (61%) and DSA (32%).

How many rounds does Newgen interview have?

Candidate interviews show an average of 3.9 rounds per experience, with a typical sequence of Online test → Online test → Technical → HR. Individual interview paths can vary.

Is the Newgen interview hard?

Among questions with a recorded difficulty, the mix is easy 73%, medium 27%, hard 0%.