Related Articles
Paytm Interview Experience for Software Engineer FTE (On-Campus)
• Difficulty Level : Hard
• Last Updated : 18 Nov, 2020

I was interviewed on 11/11/2020. Overall, there were 4 rounds- 1 online coding round, 2 technical rounds, 1 technical + Managerial round. All the rounds were elimination rounds.

Round 1 (Online Coding 70 minutes): 3 coding questions

1. Given an integer, You just have to change the digits. (3 Marks) This was an easy question.

```0 - 9,
1 - 8,
2 - 7,
...
9 - 0.```

Example: Convert the below number.

```Input: 420
Output: 579```
2. This question was similar to(3 Marks): https://www.geeksforgeeks.org/largest-sum-contiguous-subarray-having-unique-elements/

3. This question was based on a tree and a slight variation of this(5 Marks): https://www.geeksforgeeks.org/print-nodes-distance-k-leaf-node/

This round was conducted on the CoCubes platform. I was able to solve all three questions, those who solved 2 questions and got 8 or more marks were also called for the interview. This round was a medium level round, those who are in regular touch with coding were able to crack this round easily. A total of 76 students was called for the interview. All the interview rounds were conducted on Google Meet.

• Generate a Fibonacci series up-to an integer ‘n’, find all the prime numbers out of the series and print them.

This was a pretty easy question, I told him the recursive approach for Fibonacci. He then asked me to optimize it, then i used DP for generating Fibonacci and find primes using a sieve algorithm. He was satisfied with the approach and asked me to write a code for the same. I wrote the code in 5 minutes, telling him everything I did in the code step by step. I dry run the code with some examples he gave me. He was satisfied with the code. Then he moved on to the next question.

This was based on Array Addressing and pointers, He gave me a code and asked me to write the output for the same.

Given:

```int a[15];
a[0] = 10;
a[14] = 100;
find- *(a), *(a + 0), *(a + 14), *(a) + 10```

This was easy as I had already cleared the gate, But he was trying to confuse me. I was confident about my answers and then he moved on to the third question.

Given a graph, check whether it’s a tree or not.

He asked me, when a graph becomes a tree and when it does not become a tree. I answered about cycles and connectivity. Then he asked me about the implementation and some DFS related questions. I answered, he was satisfied and finally asked me to write code. I did it using DFS. He gave me some examples to run. I successfully did them. He was very happy when I got it right.

Then, he asked which database I used in my projects and moved on to questions related to DBMS and OOPS.

1. What is DDL and DML in SQL, tuple in SQL?
2. What is a Primary Key? Difference between Primary and Candidate Key. What is Foreign Key and why is it used with example?
3. What are the 4 pillars of OOPS, Different types of Inheritance, along with examples?

Questions were basic and if you have read DBMS and oops properly, it should be a cake walk for you. I was able to answer them all. Then he said that he is done with the interview and If I had any questions for him. I asked him some questions related to the technologies he is currently working on in Paytm, How is his experience in Paytm and what they expect from freshers in Paytm, Workload before covid, and during covid. He answered all. Then I asked him my feedback(I always ask this to every interviewer so that I get an idea about how this round went and where should I improve). He gave my feedback saying, “Since morning I have taken 6 interviews, Yours was the best. I am giving you full marks in this round.” This really made me so happy and more confident for other rounds.

After 1.5 hours I got a mail for the next technical interview round, around 55 people were called.

Round 3 (Technical Interview 45 minutes): This round started with the greetings, then he asked me to introduce so that he can look into my resume. After the introduction, he asked me to explain one of my projects he chooses. I explained to him, then he asked some easy project-related questions. He shared a doc link and he moved on to the Coding questions.

Question 1: Given a singly Linked List of one-digit numbers. We have to consider 3 consecutive nodes at a time and ADD them. If the addition is greater than 9 then make these three nodes reverse in the Linked List.

Example:

```Input: 1 -> 5 -> 2 -> 4 -> 3
Output: 1 -> 4 -> 2 -> 5 -> 3
Nodes 5, 2, 4 make sum 11 which is greater than 9. So reverse them.```

I told him the solution using recursion he was fine with it and he then asked me to code. There was a lot of pointer manipulation involved, so he gave me three examples to dry run my code. I did it and he was satisfied. The next question was based on a slight variation of frequency count in the array. I was able to solve it too using a map in c++. It was easy. After this, he asked me BFS and DFS along with applications in real life. Then he moved on to DBMS and gave me 2 tables. Basically, I had to create those two tables, fill in the values using SQL, and then he gave me 2 queries related to group by and joins. I was able to write one query right and one wrong.

He said it is fine and the interview is over. I asked him questions and then my feedback- He told me that my coding part was food and to focus more on SQL. So, I assured him that I will definitely improve myself. I was skeptical about getting a call about the next round.

But I got a mail within 5 minutes for the next interview round, around 27 were called.