Summary
I interviewed for a Backend Engineer position at PayPay, going through three rounds that covered DSA, system design, and resume discussions. Despite my efforts, I was ultimately rejected.
Full Experience
Current YOE : 4 Current Organisation : PBC TC : 26 Base + 10% Var
First Round (60 mins): The interviewer seemed really nice the first 30 mins asked about the most challenging project dug deeper on the same, asked me about the different concepts like REST APIs, SQL vs NoSQL etc and some java concepts. The last 30 mins was DSA question where they asked this question :
Given an input in this format : [fileID, CollectionId, fileSize] find the topK collections based on their size of files inside them. The filesystem was like this - FileSystem contains Collection which in turn contains Files.
Gave the heap approach selected for the next round.
Second Round (60 mins) : Asked me about a few questions based on my resume, then gave a Graph question : https://leetcode.com/problems/min-cost-to-connect-all-points/description/ . Post this we had a discussion related to API design and LLD of a notification system (Was just asked how would I approach this not asked to code it like which design pattern would you use given a certain scenario.)
Third Round (60 mins) : System Design Round was asked to Design a PasteBin Service asked the FR and the NFR they were as follows -
- The user should be able to paste code/file (upto 5GB) in the service and should then get a URL.
- This URL should be sharable and then should allow anyone receiving it to open the same and see the contents of the file.
- The amount of time the file should persist should be customisable but at max 6 months.
- Around 600 M monthly active users should be handled.
My Approach : I proposed a 2 step design - Storage service and then URL generation service. But was not able to answer questions like how much compute qould be required in case 100 concurrent users upload 5GB files or how would we handle the larger files should we chunk it? What compute would be required in that case. I think I was wrong from the get go itself in generating the URLs and then uploading a file or first uploading a file and then generating the URL.
Verdict : Rejected Hope it helps.
Interview Questions (4)
Given an input in this format: [fileID, CollectionId, fileSize]. Find the top K collections based on their size of files inside them. The filesystem was like this - FileSystem contains Collection which in turn contains Files.
Discussion related to API design and low-level design (LLD) of a notification system. I was asked how I would approach this, focusing on design patterns for a given scenario, not asked to code.
Design a PasteBin Service with the following functional and non-functional requirements:
- The user should be able to paste code/file (upto 5GB) in the service and should then get a URL.
- This URL should be sharable and then should allow anyone receiving it to open the same and see the contents of the file.
- The amount of time the file should persist should be customisable but at max 6 months.
- Around 600 M monthly active users should be handled.
Summary
I interviewed for a Backend Engineer role at PayPay in Japan in June 2025 and was rejected after several rounds, primarily due to not performing well in the Data Structures and Algorithms (DSA) rounds.
Full Experience
Current Employer: Product based MNC YOE: 5+
Application Process: Recruiter reached out on LinkedIn Interview Process Round 1: Online Assessment on CodeSignal 2 DSA Questions based on array, String, HashMap, Stack Question1: String manipulation with Stack(Easy) Question2: https://leetcode.com/problems/number-of-adjacent-elements-with-the-same-color (Same question with different constraints) Time : 70 mins
Round 2: General tech knowledge Past projects(most challenging) Monolith vs Microservices Sql vs NoSQL ACID properties in detail One scenario based question:- How to handle multiple pay click by user in Payment System(Gave Idempotency key + Rate Limitting based solution) Time : 45 mins
Round 3(Loop): DSA : Sync vs Async Programming(how async wait works internally) Generators in Python JIT compilation in Java(working in depth) SkipList Data structure(working + time complexity of insert, delete) Bloom Filter(how to delete element from BF, told we can't, follow-up:- which DS similar to Bloom Filter supports deletion) Bellman-Ford Algorithm(working and Time Complexity)
One DSA question(Leetcode Hard), working code was expected in 20 mints:- https://leetcode.com/problems/add-edges-to-make-degrees-of-all-nodes-even/ Time : 60 mins
Verdict: Rejected DSA round didn't went well, was not able to answer most of the questions(I mean who will read about Cuckoo Filter(same as Bloom filter with deletion capability)). Also 20 mints for a Leetcode Hard(may be a CM on Codeforces can solve).
One day after the DSA round, I got the rejection mail, no feedback was given as it's against their policy.
Interview Questions (9)
Scenario-based question: How to handle multiple pay clicks by a user in a payment system.
Question on Sync vs Async Programming, specifically how async/await works internally.
Question on Generators in Python.
Question on JIT compilation in Java, working in depth.
Discussion on SkipList Data structure: working and time complexity of insert, delete operations.
Question on Bloom Filter: how to delete elements from a Bloom Filter. Follow-up: which data structure similar to Bloom Filter supports deletion (e.g., Cuckoo Filter).
Question on Bellman-Ford Algorithm: working and Time Complexity.
Preparation Tips
Suggestions: Keep resume updated with skills you are well versed with(having Node.Js and Python from my past experience backfired me as there were multiple questions on those skills)
I had mentioned(in my resume) that I've done Competivie programming in past and I think that was the reason he asked me a Leetcode Hard problem(20 mints). Don't mention such thing if you are out of touch from CP