Persistent Systems Previous Year Coding Questions and Hiring Process

Persistent Systems is a large Indian IT services and product engineering company that hires freshers every year through campus and off campus drives, often supported by its Train and Hire pre placement program. It recruits from B.E./B.Tech backgrounds across CSE, IT, ECE, and related branches.

If you are preparing for Persistent, understanding the AMCAT based assessment structure, the optional advanced coding round, and the two stage technical interview will help you prepare efficiently. This guide covers the complete Persistent Systems hiring process along with previous year coding questions asked in its online assessments and interviews.

Persistent Systems Hiring Process

Here is the typical flow for Persistent Systems fresher hiring through campus and off campus drives.

StageWhat HappensWhat They Are Looking For
  1. Online Assessment
A proctored AMCAT based test, around 60 to 90 minutes, covering computer science MCQs, quantitative aptitude, logical reasoning, verbal English, and two coding questions. Breadth across fundamentals and working code.
  1. Advanced Coding Round
An optional round for top performers, one or two harder DSA problems solved in a real compiler over 60 to 90 minutes. Depth in data structures and algorithmic thinking.
  1. Technical Interview 1
A resume and project walkthrough alongside DSA, OOP, and SQL questions. Ability to explain your own code and design choices.
  1. Technical Interview 2
Operating systems, computer networks, DBMS, and sometimes cloud computing or multithreading basics. Some drives combine this with Technical Interview 1 into a single round. Conceptual clarity across core CS subjects.
  1. HR Interview
A conversation about your background, motivation for joining Persistent, and general behavioural questions. Cultural fit and career clarity.

Candidates who perform strongly in the advanced coding round are sometimes offered a higher starting package, so treat that round as worth the extra preparation even though it is optional for many drives.

Assessment Pattern

Format: A proctored AMCAT based online test combining aptitude, technical MCQs, and coding, generally with no negative marking, so attempt every question.

Sections typically included:

  1. Quantitative Aptitude: Percentages, ratios, time and work, profit and loss, number series, data interpretation.
  2. Logical Reasoning: Puzzles, series completion, blood relations, coding decoding.
  3. Verbal English: Grammar, comprehension, sentence correction, sometimes a short essay writing task.
  4. Computer Science MCQs: DSA, DBMS, operating systems, computer networks, and C or C++ output prediction questions.
  5. Coding Round: Two problems, easy to medium difficulty, in C, C++, Java, or Python.

Persistent Coding Round: What to Expect

The coding round at Persistent blends classic DSA problems with C language specific tasks such as struct usage and file handling. Frequently reported topics include:

  • Linked list operations such as reversal and finding the middle node
  • Array based problems such as segregating 0s and 1s or computing product of array except self
  • String manipulation such as permutations, removing substrings, and pattern matching
  • Stack and queue implementations, including implementing one using the other
  • C specific tasks such as defining a struct for a banking record or reading and modifying text files
  • In the advanced round, graph or matrix based problems such as shortest path in an N by N grid, and generating balanced parentheses combinations

For hands on practice, use:

Technical Interview Focus Areas

  • Object Oriented Programming: Abstraction versus encapsulation with real life examples, operator overloading versus overriding.
  • Data Structures: Sets versus lists, BFS versus DFS traversal, binary search tree structure and traversal.
  • Operating Systems: Process versus thread, deadlocks and how to avoid them, paging, page faults, and thrashing.
  • Computer Networks: TCP versus UDP, HTTP versus HTTPS, subnetting, and what happens when you type a URL into a browser.
  • DBMS and SQL: ACID properties, aggregation, and SQL queries such as finding the second highest salary, grouping totals by category, and filtering by name pattern.
  • Core C/C++ Concepts: Dangling pointers, linker versus loader, compiler versus interpreter, preprocessor directives, and access specifiers.

Complete Interview Questions

HR Interview Tips

The HR round checks communication, motivation, and overall fit. Common questions include:

  • Why should I hire you.
  • Where do you see yourself in five to ten years.
  • Have you done any internships.
  • Why Persistent, and what do you know about our company.
  • If you had a more attractive offer, would you still accept Persistent.
  • What are your hobbies.

Complete HR Interview Questions

Answer with specific examples from your projects and internships rather than generic statements.

Resources to Prepare for Persistent Systems


Persistent Systems Previous Year Coding Questions

Below is a list of Persistent Systems previous year coding questions commonly reported by candidates in the online assessment and advanced coding round. Each question includes a problem statement, input and output format, and a sample explanation.

1. Reverse a Linked List

Problem Statement: Given the head of a singly linked list, reverse it and return the new head.

Input Format:

  • A linked list head

Output Format:

  • The reversed linked list

Example: Input: 1 -> 2 -> 3 -> 4 Output: 4 -> 3 -> 2 -> 1

2. Find the Middle of a Linked List

Problem Statement: Given the head of a singly linked list, find and return the middle node. If there are two middle nodes, return the second one.

Input Format:

  • A linked list head

Output Format:

  • The value at the middle node

Example: Input: 1 -> 2 -> 3 -> 4 -> 5 Output: 3

3. Product of Array Except Self

Problem Statement: Given an array of integers, return an array where each element is the product of all other elements except itself, without using division.

Input Format:

  • An integer array arr

Output Format:

  • An array of products

Example: Input: [1, 2, 3, 4] Output: [24, 12, 8, 6]

4. Remove All Occurrences of a Substring

Problem Statement: Given a string and a substring, repeatedly remove all occurrences of the substring from the string until none remain.

Input Format:

  • A string s and a string part

Output Format:

  • The resulting string after all removals

Example: Input: s = "daabcbaabcbc", part = "abc" Output: dab

5. Print a Pyramid Pattern

Problem Statement: Given a number of rows n, print a pyramid pattern of stars centered on each line.

Input Format:

  • An integer n

Output Format:

  • The pyramid pattern printed row by row

Example: Input: 3 Output:

  *
 ***
*****

6. All Permutations of a String

Problem Statement: Given a string, print all possible permutations of its characters.

Input Format:

  • A string s

Output Format:

  • All permutations of the string

Example: Input: ab Output: ab, ba

7. Segregate 0s and 1s in an Array

Problem Statement: Given an array containing only 0s and 1s, rearrange it so that all 0s appear before all 1s, ideally in a single pass.

Input Format:

  • An integer array arr containing only 0 and 1

Output Format:

  • The rearranged array

Example: Input: [1, 0, 1, 0, 0, 1] Output: [0, 0, 0, 1, 1, 1]

8. Implement a Queue Using Two Stacks

Problem Statement: Implement a queue data structure using only two stacks, supporting enqueue and dequeue operations.

Input Format:

  • A sequence of enqueue and dequeue operations

Output Format:

  • The result of each dequeue operation

Example: Input: enqueue(1), enqueue(2), dequeue(), enqueue(3), dequeue() Output: 1, 2

9. Shortest Path in an N by N Matrix

Problem Statement: Given an N by N grid with some cells blocked, find the length of the shortest path from the top left cell to the bottom right cell, moving in four directions.

Input Format:

  • An N by N grid of 0s (open) and 1s (blocked)

Output Format:

  • The length of the shortest path, or -1 if no path exists

Example: Input: [[0,0,0],[1,1,0],[0,0,0]] Output: 4

10. Generate Balanced Parentheses Combinations

Problem Statement: Given a number n, generate all combinations of n pairs of balanced parentheses.

Input Format:

  • An integer n

Output Format:

  • All valid combinations of balanced parentheses

Example: Input: 2 Output: (()), ()()

11. Sort Half Ascending and Half Descending

Problem Statement: Given an array, sort the first half in ascending order and the second half in descending order.

Input Format:

  • An integer array arr

Output Format:

  • The rearranged array

Example: Input: [5, 3, 8, 1, 9, 2] Output: [3, 5, 8, 9, 2, 1]

12. Remove Alternate Occurring Vowels From a String

Problem Statement: Given a string, remove every alternate occurrence of a vowel, keeping the first, removing the second, keeping the third, and so on.

Input Format:

  • A string s

Output Format:

  • The resulting string

Example: Input: programming Output: prigromming

13. Replace the Second Occurrence of a Character

Problem Statement: Given a string and a target character, replace only the second occurrence of that character with a given replacement character.

Input Format:

  • A string s, a target character, and a replacement character

Output Format:

  • The modified string

Example: Input: s = "believe", target = 'e', replacement = '@' Output: beli@ve

14. Find Duplicate Characters in a String

Problem Statement: Given a string, find all characters that occur more than once, along with their counts.

Input Format:

  • A string s

Output Format:

  • Each duplicate character with its count

Example: Input: programming Output: r: 2, g: 2, m: 2

15. Count Words and Characters in a String

Problem Statement: Given a sentence, count the number of words and the total number of characters, excluding spaces.

Input Format:

  • A string s

Output Format:

  • The word count and the character count

Example: Input: Persistent hires freshers every year Output: Words = 5, Characters = 32

At Last

Persistent tests a wide range of fundamentals in a single AMCAT sitting, so pace yourself across sections rather than spending too long on any one part. Since there is generally no negative marking, attempt every question. Revise linked lists, stack and queue implementations, and core CS subjects like OS, DBMS, and networking, since these come up repeatedly across both interview rounds.

Join the Telegram group for more resources and discussions.

Useful Resources for Your Placement Prep