๐ผ PayU Interview Experiences โ Intern + Backend + Frontend (Selected โ )
Software Developer (Intern, Backend, Frontend)PayU Worst Interview Experience | SSE | Bangalore | Awaiting
SDE IIPayU | SDE [Backend Java] | Gurugram | Oct 2023 [Reject]
sde [backend java]PayU Interview Experience | Gurgaon | Senior Software Engineer
Senior Software EngineerSummary
This post compiles a friend's successful interview experiences for Software Developer Intern, Backend SDE, and Frontend SDE/SDE-2 roles at PayU, covering various technical and behavioral aspects across multiple rounds.
Full Experience
๐น 1. PayU โ Software Developer Intern (Selected)
โ Key Technical Questions:
๐ DSA:
-
Reverse a Singly Linked List
- Explained pointer reversal approach and implemented it.
-
Implement Binary Search
- Walked through divide-and-conquer technique with code.
-
Merge Two Sorted Linked Lists
- Described merging logic and pointer movement in sorted order.
๐ Java Programming:
-
super keyword in Inheritance
- Explained its role in accessing parent class members.
-
Improving Design with Abstraction
- Shared examples of how abstraction leads to clean, scalable code.
-
Garbage Collection & Memory Leaks in Java
- Covered JVMโs automatic memory management and causes of leaks.
-
Checked vs. Unchecked Exceptions
- Explained with real examples.
๐งโ๐ป Questions contributed by: Aman Shukla
๐น 2. PayU โ Backend Developer (Intern/FTE)
โ Interview Process Summary:
- No Online Assessment โ Started directly with technical rounds
๐งช Technical Interview 1 (45 Minutes):
- 2 Medium-Level DSA Questions
- Basic Backend concepts:
- SDLC (Software Development Life Cycle)
- SQL query
โ Cleared and moved to the next round
๐งฑ Technical Interview 2 โ System Design Focus
- Discussed:
- Batching logic
- Backend architecture components
- Real-time use cases from previous experience
๐จโ๐ผ Hiring Manager (HM) Round
- Questions focused on:
- Backend projects
- Experience working at Juspay
- Practical application of backend concepts
โ Selected for the role
๐ Note: Giving interviews after 3 years was challenging but highly rewarding.
๐น 3. PayU โ Frontend SDE / SDE-2 (Selected)
โ Key Questions from Round 3:
-
Frontend App with Polling Strategy
- Scenario: Initiate a transaction โ Bank confirms asynchronously
- Solution: Used polling mechanism (no code required; conceptual discussion)
-
React App Performance Optimization
- Strategies for faster initial loads and build optimizations
-
Cache Invalidation After New Deployments
- Ensuring users see the latest version post-deploy (e.g., service workers, versioning)
-
CORS Error Handling
- Explained CORS, fixes, and IP whitelisting
-
JWT Token Handling
- How to store, clean, and implement protected routes
-
Cookies vs Sessions vs Local Storage
- Use-cases, lifetimes, and security considerations
-
Token/Payload Encryption
- Preventing interception by API/network attackers
-
Authentication vs Authorization
- Differences with practical frontend examples
โ Successfully cracked the Frontend SDE/SDE-2 role
Interview Questions (15)
Explained pointer reversal approach and implemented it.
Walked through divide-and-conquer technique with code.
Described merging logic and pointer movement in sorted order.
Explained its role in accessing parent class members.
Shared examples of how abstraction leads to clean, scalable code.
Covered JVMโs automatic memory management and causes of leaks.
Explained with real examples.
Scenario: Initiate a transaction โ Bank confirms asynchronously
- Solution: Used polling mechanism (no code required; conceptual discussion)
Strategies for faster initial loads and build optimizations
Ensuring users see the latest version post-deploy (e.g., service workers, versioning)
Explained CORS, fixes, and IP whitelisting
How to store, clean, and implement protected routes
Use-cases, lifetimes, and security considerations
Preventing interception by API/network attackers
Differences with practical frontend examples
Preparation Tips
๐ Final Words
Across these roles and tracks, key takeaways include:
- DSA, System Design, and Practical Projects are core to every role
- Backend candidates should expect architecture and database discussions
- Frontend candidates should be strong in React, performance, security, and browser concepts
๐ Best of Luck!
If you're preparing for PayU or similar tech interviews:
- Practice DSA regularly
- Strengthen your grasp of core concepts
- Reflect on your past projects and articulate them well
Youโve got this! ๐ช
Summary
My interview experience at PayU for an SSE role was quite challenging, marked by disagreements with the interviewer on standard DSA problems and a perceived lack of understanding on their part, leading to an overall negative impression.
Full Experience
I recently interviewed at PayU for an SSE role in Bangalore. I have 2.9 years of experience as an SDE1 at a product-based MNC.
The interview consisted of one problem-solving/data structures round. It started with introductions and a discussion about my projects.
Then, the interviewer presented two DSA questions. For the first question, I initially proposed an O(n^3) solution and then optimized it to O(n). I discussed the approach, and the interviewer asked me to code it on Google Docs. After completing the code, we dry ran it on a few test cases. The interviewer pointed out that my implementation was incorrect because it didn't explicitly maintain i, j, k. I tried to explain that the problem only required a boolean return value, but he disagreed. With 15 minutes left, he moved on to the next question without letting me finish discussing the first one.
For the second question, I solved it optimally using a sliding window approach on the first attempt. The interviewer asked for the time and space complexity. I explained that it was O(n), but he insisted it should be O(n^2) because of the use of two loops. Despite my efforts to clarify that the worst-case scenario involves iterating over the entire array twice, he didn't understand and abruptly ended the interview.
I honestly hope I don't get selected for this role.
Interview Questions (2)
The interviewer presented a problem where I needed to determine if there exists a triplet of indices (i, j, k) such that i < j < k and nums[i] < nums[j] < nums[k]. I initially came up with an O(n^3) solution and then optimized it to O(n). I coded it on Google Docs and dry-ran it. The interviewer disagreed with my O(n) implementation, believing it didn't explicitly maintain i, j, k, even though the problem only required a boolean return.
I was asked to find the maximum number of vowel letters in any substring of a given length. I solved this question optimally using a sliding window approach on the first attempt. When asked about time and space complexity, I stated O(n), but the interviewer insisted it was O(n^2) due to two loops, despite my clarifications.
Summary
I interviewed for an SDE [Backend Java] role at PayU in Gurugram, Haryana, in October 2023. With 3 years of experience, I completed DSA and System Design rounds but ultimately received a rejection.
Full Experience
I went through a two-round interview process for the SDE [Backend Java] position at PayU. The first round was focused on Data Structures and Algorithms, where I tackled questions involving array manipulation and flattening a nested list. The second round delved into technical discussion, presenting challenges such as finding the next greater number with the same digits and a detailed system design problem for a loan assessment job scheduler. I engaged actively, providing my best answers and addressing all follow-up questions on scalability, query optimization, data structure, and latency during the system design discussion.
Interview Questions (5)
Given an array and a target number x, check if there are two numbers in the array that sum up to x.
Example:
arr = [9, 4, 10, 13, 5, 3, 6]
x = ? (can be any given number)
Check if the sum of two numbers in the array will be x or not?
Segregate all zeroes towards the end of the array using inplace operation. An extra array cannot be used.
Input: [0, -7, 2, 11, 0, 0, 0, 13, 12, 0]
Output: [-7, 2, 11, 13, 12, 0, 0, 0, 0, 0]
Flatten the nested list and return the calculated output. The calculation seems to imply a weighted sum based on nesting level.
Input: [5, [6, 7, [8], 4]]
Output Example: 5 * 1 + (6 + 7 + 8*3 + 4) * 2 = ?
Find the next greater number with the same set of digits.
Examples:
123456 -> 123465
54321 -> -1
Design a job scheduler to automate the process of running loan assessments for 1 million users on certain dates of a month at PayU. The system needs to fulfill the following requirements:
- The business team should be able to configure the frequency/dates of the run.
- Our system should run assessments on the specified dates and save the assessment response in the database.
- Our system should be able to scale for a growing number of users and handle failures effectively.
Assumption: We do not have to build the internals of the "assessment" process; that is already handled. Assume that assessment is a function already built into your service.
Summary
My interview experience at PayU for a Senior Software Engineer position in Gurgaon was quite negative, marked by unprofessional behavior from one interviewer and ultimately being ghosted after seemingly clearing all technical rounds.
Full Experience
I decided to share my interview experience with PayU since I couldn't find many resources online about their process. A recruiter from Naukri reached out to me, and after discussing my work experience and salary expectations, I was scheduled for an interview for a Senior Software Engineer position in Gurgaon.
1. Round 1: Programming
This round was conducted on the Intervue platform, where I had to write and execute complete code along with test cases. I was given two problems:
- One similar to Meeting Rooms III
- And another, Subdomain Visit Count
I managed to solve both of them successfully.
2. Round 2: Problem Solving, Fundamentals
Within two days, the recruiter contacted me to schedule the second round. This round focused on both programming and fundamental concepts.
Programming:
I was asked a problem similar to Binary Tree Right Side View.
Fundamentals:
The discussion covered several core computer science topics:
- What happens when you type
www.google.com(or any site) into a browser? - SOLID principles
- Memory Leak concepts
- Multithreading
- Java
StringBuilderand related concepts
I felt confident about my performance in this round.
3. Round 3: Hiring Manager (Initial Attempt)
Again, the recruiter got back to me within two days to set up the next round. Unfortunately, this is where things started to go downhill. The interviewer didn't join on time, and after contacting my recruiter, he eventually joined from his phone while driving. I offered to reschedule, but he insisted on continuing. He didn't ask any technical questions, which I found surprising as I was expecting LLD/HLD discussions. Instead, he started asking what I considered irrelevant questions. Feeling that my time was being wasted, I directly asked if he had any design-level questions, to which he simply replied, "not needed." The interview concluded with a very unprofessional statement: "not everyone can go to IIT, so people go for some tier 3 colleges, maybe you should also follow the same!" Despite his arrogance and lack of professionalism, I ended the conversation with a smile.
Later, I received feedback from the recruiter stating that I was rejected because I "couldn't come up with a Database schema." This was clearly a random excuse, as our discussion never even touched upon technical subjects like database design. I decided to escalate this to HR, who then scheduled another Hiring Manager round with a different interviewer.
4. Round 3(II): Hiring Manager (Second Attempt)
This second attempt at the Hiring Manager round was a much better experience. We had a good discussion, and I was asked a couple of questions related to HLD fundamentals. Towards the end, there was also a DSA question similar to Container With Most Water. Overall, I felt very confident after this round.
I was expecting to hear back, but nothing happened. When I called the recruiter, he informed me that I had cleared all the rounds and asked for my documents (salary slips, etc.). Following this, I received an invite for an HR round, but once again, the HR didn't join. Upon calling the recruiter, he mentioned it was his last working day and he had left early. I asked for a reschedule, but it never materialized. The recruiter subsequently started ignoring my calls and emails. Given the numerous red flags, I decided to stop pursuing the opportunity.
Overall Experience:
My overall experience was pretty bad. It felt like I wasted almost a month clearing their interview process, only to be ghosted in the end. It's possible my salary expectations didn't align with their budget, but this was something I had shared upfront. I suspect they interview multiple candidates for one role and extend an offer to whoever accepts the lowest salary.
Interview Questions (9)
The problem asks to determine which meeting room is used the most, given a list of meetings with start and end times, and a number of available rooms. When a room becomes free, it should be used for the next waiting meeting. If multiple rooms become free at the same time, the one with the smallest index is used. If multiple meetings are waiting, the one with the smallest start time is prioritized.
A website domain 'discuss.leetcode.com' consists of various subdomains. At the top level, we have 'com', at the next level, 'leetcode.com', and at the lowest level, 'discuss.leetcode.com'. When we visit a domain like 'discuss.leetcode.com', we also implicitly visit all its subdomains. Given a list of count-paired domains, where each pair consists of a visit count and a domain name (e.g., '9001 discuss.leetcode.com'), return a list of count-paired domains that represents the number of visits to each subdomain across all the given domains. The output should be a list of strings like 'count domain'.
Explain in detail the entire process and underlying technologies involved when a user types a URL (e.g., www.google.com) into a web browser and presses Enter, leading to the display of the web page.
Discuss the five SOLID principles of object-oriented design (Single Responsibility, Open/Closed, Liskov Substitution, Interface Segregation, Dependency Inversion). Explain each principle with a brief description and provide examples of how they are applied in software development.
Explain what a memory leak is in the context of programming, how it occurs, and describe common scenarios or patterns that lead to memory leaks. Discuss strategies and tools for preventing, detecting, and debugging memory leaks in applications.
Discuss fundamental concepts related to multithreading, including threads, processes, concurrency, and parallelism. Explain common challenges such as race conditions, deadlocks, and starvation, and describe mechanisms for thread synchronization (e.g., mutexes, semaphores, locks).
Explain the differences between Java's String, StringBuilder, and StringBuffer classes. When should one choose StringBuilder over String for concatenation, and what are the performance implications? Discuss their immutability and thread-safety characteristics.
Given n non-negative integers a1, a2, ..., an where each represents a point at coordinate (i, ai). n vertical lines are drawn such that the two endpoints of line i are at (i, ai) and (i, 0). Find two lines, which, together with the x-axis, form a container, such that the container contains the most water. Return the maximum amount of water a container can store. Notice that you may not slant the container.