PhonePe Placement Papers 2026 | Freshers Exam Pattern, Syllabus & Questions
PhonePe Placement Papers 2026 - Complete Preparation Guide
Last Updated: March 2026
📋 Company Overview
PhonePe is India's largest UPI-based digital payments platform, founded in December 2015 by Sameer Nigam, Rahul Chari, and Burzin Engineer. Headquartered in Bengaluru, Karnataka, PhonePe was acquired by Flipkart in 2016 and became a subsidiary of Walmart after Flipkart's acquisition. In 2022-23, PhonePe became a separate entity after a historic share buyback.
PhonePe processes over 5+ billion UPI transactions monthly, making it India's leading UPI app. The company has expanded beyond payments into financial services including insurance, mutual funds, lending, and shopping on its Switch platform.
🎯 Eligibility Criteria for Freshers 2026
| Parameter | Requirements |
|---|---|
| Academic Qualification | B.Tech/B.E (CS/IT/ECE/EEE), MCA, M.Tech |
| Batch Eligible | 2025, 2026 graduating batches |
| Minimum CGPA | 7.5/10 or 75% throughout academics |
| Backlogs | No active backlogs |
| Skills Preferred | Java, Kotlin, Python, Android/iOS, Microservices, System Design |
| Experience | Freshers (0-1 years) |
💰 CTC Package for Freshers 2026
| Component | Amount (INR) |
|---|---|
| Base Salary | ₹14,00,000 - ₹20,00,000 |
| Joining Bonus | ₹1,50,000 - ₹2,50,000 |
| Relocation Allowance | ₹50,000 - ₹1,00,000 |
| Performance Bonus | Up to 20% of CTC |
| ESOPs | Variable (significant upside potential) |
| Total CTC | ₹18,00,000 - ₹28,00,000 |
📊 Exam Pattern 2026
PhonePe follows a rigorous selection process with emphasis on problem-solving and system design:
Stage 1: Online Assessment (OA)
| Section | Duration | Questions | Topics |
|---|---|---|---|
| Quantitative Aptitude | 30 mins | 15 | Arithmetic, Algebra, Probability |
| Logical Reasoning | 20 mins | 10 | Puzzles, Pattern Recognition |
| Technical MCQ | 25 mins | 15 | DSA, OOPS, DBMS, OS |
| Coding Round | 75 mins | 3 | Algorithms, Data Structures |
| Machine Coding | 90 mins | 1 | Low-level Design Problem |
Stage 2-5: Interview Rounds
| Round | Type | Duration | Focus Area |
|---|---|---|---|
| Round 2 | Problem Solving | 60 mins | 2-3 DSA problems |
| Round 3 | Machine Coding | 90 mins | Design and code a working system |
| Round 4 | System Design | 60 mins | High-level design, scalability |
| Round 5 | Hiring Manager + HR | 45 mins | Culture, motivation, compensation |
Marking Scheme:
- Aptitude: +3/-1 scoring
- Coding problems evaluated on test cases, edge cases, code quality
- Machine coding evaluated on working solution, design patterns, extensibility
🧮 Aptitude Questions with Solutions (15 Questions)
Question 1
Problem: PhonePe processes 200 million transactions per day. If peak hours (4 hours) account for 60% of daily volume, what's the average TPS (transactions per second) during peak?
Solution: Peak transactions = 200M × 0.60 = 120 million Peak duration = 4 × 60 × 60 = 14,400 seconds TPS = 120,000,000 / 14,400 = 8,333 TPS
Question 2
Problem: A sum of money triples itself in 15 years at simple interest. In how many years will it become 7 times itself?
Solution: If sum triples, interest = 2P in 15 years Rate = (2P × 100)/(P × 15) = 40/3 % To become 7 times, interest = 6P Time = (6P × 100)/(P × 40/3) = 600 × 3/40 = 45 years
Shortcut: Formula t(m-1)/(n-1) = 15(7-1)/(3-1) = 15×6/2 = 45 years
Question 3
Problem: In how many ways can the letters of the word "PHONEPE" be arranged?
Solution: Total letters = 7 P appears 2 times, E appears 2 times Total arrangements = 7! / (2! × 2!) = 5040 / 4 = 1260 ways
Question 4
Problem: The average of 7 numbers is 45. If one number is excluded, the average becomes 42. What is the excluded number?
Solution: Sum of 7 numbers = 7 × 45 = 315 Sum of 6 numbers = 6 × 42 = 252 Excluded number = 315 - 252 = 63
Question 5
Problem: A merchant sells a product at 20% profit. If he had bought it at 10% less and sold it for ₹18 less, he would have gained 25%. Find the cost price.
Solution: Let CP = x Original SP = 1.2x New CP = 0.9x, New SP = 1.2x - 18 Profit = 25%, so New SP = 1.25 × 0.9x = 1.125x
1.2x - 18 = 1.125x 0.075x = 18 x = ₹240
Question 6
Problem: If the probability of a transaction failing is 0.02, what is the probability that exactly 2 out of 10 transactions fail?
Solution: Using binomial probability: P(X=2) = C(10,2) × (0.02)² × (0.98)^8 = 45 × 0.0004 × 0.8508 = 0.0153 or 1.53%
Question 7
Problem: A train 240m long passes a platform in 30 seconds at 54 km/hr. Find the platform length.
Solution: Speed = 54 × (5/18) = 15 m/s Total distance = 15 × 30 = 450m Platform length = 450 - 240 = 210 meters
Question 8
Problem: In a class of 50 students, 30 study Math, 25 study Physics, and 15 study both. How many study neither?
Solution: Using inclusion-exclusion: Math ∪ Physics = 30 + 25 - 15 = 40 Neither = 50 - 40 = 10 students
Question 9
Problem: Find the next number: 1, 4, 9, 16, 25, 36, ?
Solution: Perfect squares: 1², 2², 3², 4², 5², 6² Next = 49 (7²)
Question 10
Problem: If 20 workers can build a wall in 15 days, how many days will 25 workers take?
Solution: Using work equivalence: M1×D1 = M2×D2 20 × 15 = 25 × D2 D2 = 300/25 = 12 days
Question 11
Problem: The ratio of present ages of A and B is 5:7. After 6 years, the ratio becomes 3:4. Find B's present age.
Solution: Let ages be 5x and 7x (5x + 6)/(7x + 6) = 3/4 4(5x + 6) = 3(7x + 6) 20x + 24 = 21x + 18 x = 6 B's age = 7 × 6 = 42 years
Question 12
Problem: A sum of ₹5000 becomes ₹6655 in 3 years at compound interest. Find the rate.
Solution: 6655 = 5000(1 + r/100)³ 1.331 = (1 + r/100)³ 1.1 = 1 + r/100 r = 10%
Question 13
Problem: Find the unit digit of 7^83 × 3^41.
Solution: Cycle of 7: 7, 9, 3, 1 (every 4) 83 mod 4 = 3, so 7^83 ends in 3
Cycle of 3: 3, 9, 7, 1 (every 4) 41 mod 4 = 1, so 3^41 ends in 3
Unit digit of product: 3 × 3 = 9 → 9
Question 14
Problem: A man rows at 8 km/hr in still water. If the river flows at 2 km/hr and it takes him 48 minutes to row to a place and back, how far is the place?
Solution: Downstream speed = 8 + 2 = 10 km/hr Upstream speed = 8 - 2 = 6 km/hr Let distance = d km Time = d/10 + d/6 = 48/60 = 0.8 hours (3d + 5d)/30 = 0.8 8d = 24 d = 3 km
Question 15
Problem: In a code, COMPUTER is written as DPNUVUFS. How is MOBILE written?
Solution: Pattern: Each letter + 1 C→D, O→P, M→N, P→Q... Wait, COMPUTER → DPNUVUFS C+1=D, O+1=P, M+1=N, P+1=Q? But we have U. Let's check: C→D(+1), O→P(+1), M→N(+1), P→Q? Given U. Actually: C→D, O→P, M→N, P→U? No. Pattern: +1, +1, +1, +1, +1, +1, +1, +1 doesn't match. C(3)→D(4), O(15)→P(16), M(13)→N(14), P(16)→Q? But given U(21). Actual pattern: C→D(+1), O→P(+1), M→N(+1), U→V(+1), T→U(+1), E→F(+1), R→S(+1) So MOBILE → N(14)P(17)C(4)J(10)M(13)F(7)? Actually looking at DPNUVUFS: each letter shifted by +1. So MOBILE → NPCJMF
💻 Technical/CS Questions with Solutions (10 Questions)
Question 1
Q: Explain the UPI architecture and how PhonePe processes transactions.
Architecture Components:
- UPI Switch: Central NPCI infrastructure
- PSP (Payment Service Provider) Bank: Banks that provide UPI infrastructure
- TPAP (Third Party Application Provider): Apps like PhonePe that offer UPI services
- Remitter Bank: Sender's bank
- Beneficiary Bank: Receiver's bank
Transaction Flow:
- User initiates payment on PhonePe
- PhonePe sends request to PSP Bank
- PSP routes to NPCI UPI Switch
- NPCI validates and routes to beneficiary bank
- Beneficiary bank credits account
- Response flows back through the chain
PhonePe Optimizations:
- Smart routing across multiple PSPs
- Retry mechanisms for failed transactions
- Real-time fraud detection
- 99.9%+ success rate through intelligent routing
Question 2
Q: What is Idempotency and why is it important in payment systems?
Why Critical for Payments:
- Network timeouts can cause retry attempts
- Users may click "Pay" button multiple times
- Without idempotency, duplicate charges occur
Implementation:
# Client sends unique idempotency key
headers = {'Idempotency-Key': 'uuid-generated-by-client'}
# Server stores: idempotency_key → response
# On duplicate request with same key, return stored response
PhonePe Implementation:
- UPI Ref IDs serve as natural idempotency keys
- Database unique constraints prevent duplicates
- Idempotency cache with TTL for replay protection
Question 3
Q: Explain Consistent Hashing and its use in distributed systems.
Traditional Hashing:
- server = hash(key) % N
- Problem: When N changes, almost all keys remap
Consistent Hashing:
- Hash both keys and servers onto a ring (0 to 2³²-1)
- Key maps to next server clockwise on ring
- Each server owns keys between it and previous server
Virtual Nodes:
- Multiple points on ring per physical server
- Better load distribution
- Handles heterogeneous hardware
PhonePe Use Case:
- Cache sharding across Redis clusters
- User session distribution
- Minimal data movement during scaling
Question 4
Q: What is the difference between synchronous and asynchronous communication in microservices?
| Aspect | Synchronous | Asynchronous |
|---|---|---|
| Pattern | Request-Response | Event-driven, Message queues |
| Blocking | Client waits for response | Client continues immediately |
| Coupling | Tight coupling | Loose coupling |
| Reliability | Failures immediately visible | Requires retry/dlq mechanisms |
| Use Case | User-facing queries, validations | Background processing, notifications |
| Examples | REST/gRPC calls | Kafka, RabbitMQ, SQS |
PhonePe Usage:
- Synchronous: Transaction authorization, balance checks
- Asynchronous: Transaction post-processing, notifications, analytics
Hybrid Approach: Saga pattern - sync for critical path, async for side effects
Question 5
Q: Explain Database Indexing strategies for high-performance queries.
Index Types:
- B-Tree Index: Default, good for equality and range queries
- Hash Index: O(1) equality lookups, no range support
- Bitmap Index: Low cardinality columns
- GIN/GiST: Full-text search, JSON, arrays
- Composite Index: Multiple columns
Indexing Strategies:
- Index columns in WHERE, JOIN, ORDER BY clauses
- Covering indexes (INCLUDE columns) eliminate table lookups
- Partial indexes for filtered queries
- Expression indexes for computed values
PhonePe Context:
- User ID indexes for wallet lookups
- Transaction time indexes for history queries
- Composite indexes on (user_id, created_at) for user transaction history
Question 6
Q: What is Circuit Breaker pattern?
States:
- Closed: Normal operation, requests pass through
- Open: Failure threshold reached, requests fail fast
- Half-Open: Testing if service recovered
Implementation:
class CircuitBreaker:
def __init__(self, failure_threshold, timeout):
self.failure_threshold = failure_threshold
self.timeout = timeout
self.failure_count = 0
self.state = 'CLOSED'
def call(self, func, *args):
if self.state == 'OPEN':
if time_since_open > timeout:
self.state = 'HALF_OPEN'
else:
raise CircuitOpenException()
try:
result = func(*args)
self.on_success()
return result
except Exception as e:
self.on_failure()
raise e
PhonePe Usage: Protects against PSP bank outages, NPCI failures.
Question 7
Q: Explain the difference between Optimistic and Pessimistic Locking.
| Aspect | Pessimistic Locking | Optimistic Locking |
|---|---|---|
| Approach | Lock resources before use | Check conflicts at commit time |
| Concurrency | Lower concurrency | Higher concurrency |
| Deadlock Risk | Possible | No deadlocks |
| Use Case | High contention scenarios | Low-medium contention |
| Implementation | SELECT FOR UPDATE | Version numbers/timestamps |
Optimistic Locking:
-- Read with version
SELECT balance, version FROM wallet WHERE user_id = 1;
-- Update with version check
UPDATE wallet SET balance = 900, version = 2
WHERE user_id = 1 AND version = 1;
-- If rows affected = 0, conflict occurred
PhonePe Context: Wallet balance updates use optimistic locking for high throughput.
Question 8
Q: What is a Distributed Transaction and how is it managed?
Challenges:
- Network failures during commit
- Partial commit scenarios
- Coordinating multiple participants
Solutions:
1. Two-Phase Commit (2PC):
- Phase 1: Coordinator asks participants to prepare
- Phase 2: If all ready, coordinator sends commit
- Problem: Blocking, coordinator single point of failure
2. Saga Pattern:
- Sequence of local transactions
- Each service updates and publishes event
- Compensating transactions for rollback
PhonePe Approach:
- Saga pattern for multi-step operations
- Event sourcing for audit trails
- Idempotency for retry safety
Question 9
Q: Explain Rate Limiting and its algorithms.
Algorithms:
-
Token Bucket:
- Bucket holds tokens, refilled at fixed rate
- Request consumes a token
- Bursts allowed up to bucket capacity
-
Leaky Bucket:
- Requests enter queue, processed at fixed rate
- Queue full → requests dropped
- Smooths traffic, no bursts
-
Fixed Window:
- Count requests in fixed time windows
- Simple but has burst issues at window boundaries
-
Sliding Window:
- More accurate, tracks exact time range
- Higher memory usage
PhonePe Usage:
- API rate limits per user/app
- Transaction limits for fraud prevention
- DDoS protection at edge
Question 10
Q: What is Event Sourcing and CQRS?
Event Sourcing:
- Store state changes as events, not current state
- Event log becomes source of truth
- Can replay events to reconstruct any state
- Audit trail built-in
Traditional: Balance = 1000
Event Sourcing: [AccountCreated, Deposit(500), Withdrawal(200), Deposit(700)]
CQRS (Command Query Responsibility Segregation):
- Separate read and write models
- Commands update the write model
- Queries read from optimized read models
- Event sourcing often pairs with CQRS
PhonePe Use Case:
- Transaction history (event sourcing)
- Real-time analytics (CQRS read models)
- Audit and compliance requirements
📝 Verbal/English Questions with Solutions (10 Questions)
Question 1
Spot the error: Neither the engineers or the manager are aware of the production issue.
Question 2
Fill in the blank: The payment system _______ designed to handle millions of concurrent transactions.
Options: (a) are (b) is (c) were (d) being
Question 3
Synonym: LUCID
Options: (a) Confusing (b) Clear (c) Dark (d) Complex
Question 4
Antonym: EPHEMERAL
Options: (a) Temporary (b) Eternal (c) Fleeting (d) Brief
Question 5
Rearrange: (A) Digital payments / (B) have revolutionized / (C) financial inclusion / (D) in rural India
Question 6
Idiom: "To get the ball rolling"
Meaning: (a) To play sports (b) To start an activity (c) To move quickly (d) To be energetic
Question 7
One word substitution: A person who doesn't believe in God
Options: (a) Theist (b) Atheist (c) Agnostic (d) Believer
Question 8
Reading Comprehension: PhonePe's Switch platform allows users to access multiple apps without downloading them, creating a super-app ecosystem that brings merchants and consumers together on a single platform.
What is the main benefit of the Switch platform?
Question 9
Sentence Correction: Each of the developers have submitted their code for review.
Question 10
Analogies: Seed : Plant :: Code : ?
Options: (a) Computer (b) Software (c) Programmer (d) Bug
👨💻 Coding Questions with Python Solutions (5 Questions)
Question 1: Merge Intervals
Problem: Given an array of intervals where intervals[i] = [start, end], merge all overlapping intervals.
Solution:
def merge_intervals(intervals):
"""
Time Complexity: O(n log n) for sorting
Space Complexity: O(n)
"""
if not intervals:
return []
# Sort by start time
intervals.sort(key=lambda x: x[0])
merged = [intervals[0]]
for current in intervals[1:]:
last = merged[-1]
if current[0] <= last[1]: # Overlapping
last[1] = max(last[1], current[1])
else:
merged.append(current)
return merged
# Test
print(merge_intervals([[1,3],[2,6],[8,10],[15,18]])) # [[1,6],[8,10],[15,18]]
print(merge_intervals([[1,4],[4,5]])) # [[1,5]]
Question 2: Top K Frequent Elements
Problem: Given an integer array and an integer k, return the k most frequent elements.
Solution:
def top_k_frequent(nums, k):
"""
Time Complexity: O(n log k)
Space Complexity: O(n)
"""
from collections import Counter
import heapq
# Count frequencies
count = Counter(nums)
# Use min heap of size k
heap = []
for num, freq in count.items():
heapq.heappush(heap, (freq, num))
if len(heap) > k:
heapq.heappop(heap)
return [num for freq, num in heap]
# Alternative: Bucket sort O(n)
def top_k_frequent_linear(nums, k):
from collections import Counter
count = Counter(nums)
n = len(nums)
# Bucket by frequency
buckets = [[] for _ in range(n + 1)]
for num, freq in count.items():
buckets[freq].append(num)
result = []
for freq in range(n, 0, -1):
for num in buckets[freq]:
result.append(num)
if len(result) == k:
return result
# Test
print(top_k_frequent([1,1,1,2,2,3], 2)) # [1, 2]
print(top_k_frequent([1], 1)) # [1]
Question 3: Course Schedule (Topological Sort)
Problem: There are numCourses courses labeled from 0 to numCourses-1. Prerequisites[i] = [a, b] means to take course a, you must first take course b. Return true if all courses can be finished.
Solution:
def can_finish(num_courses, prerequisites):
"""
Detect cycle in directed graph using DFS
Time Complexity: O(V + E)
Space Complexity: O(V + E)
"""
from collections import defaultdict
# Build graph
graph = defaultdict(list)
for course, prereq in prerequisites:
graph[course].append(prereq)
# 0 = unvisited, 1 = visiting, 2 = visited
state = [0] * num_courses
def has_cycle(course):
if state[course] == 1: # Currently visiting - cycle!
return True
if state[course] == 2: # Already checked
return False
state[course] = 1 # Mark as visiting
for prereq in graph[course]:
if has_cycle(prereq):
return True
state[course] = 2 # Mark as visited
return False
for course in range(num_courses):
if has_cycle(course):
return False
return True
# Alternative: Kahn's Algorithm (BFS)
def can_finish_bfs(num_courses, prerequisites):
from collections import defaultdict, deque
in_degree = [0] * num_courses
graph = defaultdict(list)
for course, prereq in prerequisites:
graph[prereq].append(course)
in_degree[course] += 1
queue = deque([i for i in range(num_courses) if in_degree[i] == 0])
courses_taken = 0
while queue:
course = queue.popleft()
courses_taken += 1
for next_course in graph[course]:
in_degree[next_course] -= 1
if in_degree[next_course] == 0:
queue.append(next_course)
return courses_taken == num_courses
# Test
print(can_finish(2, [[1,0]])) # True
print(can_finish(2, [[1,0],[0,1]])) # False
Question 4: Design Hit Counter
Problem: Design a hit counter which counts the number of hits received in the past 5 minutes (300 seconds).
Solution:
from collections import deque
class HitCounter:
"""
Time Complexity: O(1) for hit, O(1) amortized for getHits
Space Complexity: O(s) where s is distinct timestamps in window
"""
def __init__(self):
self.hits = deque() # (timestamp, count)
self.total = 0
def hit(self, timestamp: int) -> None:
# Remove old hits outside 5-minute window
self._cleanup(timestamp)
if self.hits and self.hits[-1][0] == timestamp:
self.hits[-1] = (timestamp, self.hits[-1][1] + 1)
else:
self.hits.append((timestamp, 1))
self.total += 1
def getHits(self, timestamp: int) -> int:
self._cleanup(timestamp)
return self.total
def _cleanup(self, timestamp: int):
# Remove hits older than 300 seconds
while self.hits and timestamp - self.hits[0][0] >= 300:
old_timestamp, count = self.hits.popleft()
self.total -= count
# Test
counter = HitCounter()
counter.hit(1)
counter.hit(2)
counter.hit(3)
print(counter.getHits(4)) # 3
counter.hit(300)
print(counter.getHits(300)) # 4
print(counter.getHits(301)) # 3 (hit at timestamp 1 expired)
Question 5: Design Twitter (Simplified)
Problem: Design a simplified Twitter where users can post tweets, follow/unfollow others, and see the 10 most recent tweets from followed users.
Solution:
from collections import defaultdict
import heapq
class Twitter:
"""
Time Complexity: O(k log k) for getNewsFeed where k is number of followees
Space Complexity: O(users * tweets)
"""
def __init__(self):
self.tweets = defaultdict(list) # userId -> [(timestamp, tweetId)]
self.following = defaultdict(set) # userId -> {followeeIds}
self.timestamp = 0
def postTweet(self, userId: int, tweetId: int) -> None:
self.timestamp += 1
self.tweets[userId].append((self.timestamp, tweetId))
def getNewsFeed(self, userId: int):
# Get last tweet index for each followee
followees = self.following[userId] | {userId}
# Max heap (use negative timestamp)
heap = []
for followee in followees:
if self.tweets[followee]:
tweets = self.tweets[followee]
idx = len(tweets) - 1
timestamp, tweetId = tweets[idx]
heapq.heappush(heap, (-timestamp, tweetId, followee, idx - 1))
result = []
while heap and len(result) < 10:
neg_time, tweetId, followee, idx = heapq.heappop(heap)
result.append(tweetId)
if idx >= 0:
tweets = self.tweets[followee]
timestamp, nextTweetId = tweets[idx]
heapq.heappush(heap, (-timestamp, nextTweetId, followee, idx - 1))
return result
def follow(self, followerId: int, followeeId: int) -> None:
if followerId != followeeId:
self.following[followerId].add(followeeId)
def unfollow(self, followerId: int, followeeId: int) -> None:
self.following[followerId].discard(followeeId)
# Test
twitter = Twitter()
twitter.postTweet(1, 5)
print(twitter.getNewsFeed(1)) # [5]
twitter.follow(1, 2)
twitter.postTweet(2, 6)
print(twitter.getNewsFeed(1)) # [6, 5]
twitter.unfollow(1, 2)
print(twitter.getNewsFeed(1)) # [5]
🎯 Interview Tips for PhonePe
-
Master System Design: PhonePe interviews heavily focus on system design. Practice designing payment systems, notification services, and high-scale distributed systems.
-
Machine Coding Round: This is unique to PhonePe. Practice building working systems with clean code, proper abstractions, and extensible design in 90 minutes.
-
Know UPI Deeply: Understand UPI architecture, NPCI's role, and the complete transaction flow. Knowledge of financial regulations is a plus.
-
Scale Considerations: PhonePe processes billions of transactions. Always think about scale, latency, and reliability in your solutions.
-
Problem-Solving Speed: PhonePe's coding rounds are time-bound. Practice solving medium-hard problems within 30-40 minutes with clean, optimized code.
-
Java Proficiency: Strong Java skills are valued given PhonePe's tech stack. Know Java internals, concurrency, and JVM tuning.
-
Distributed Systems: Study distributed transactions, consensus algorithms, and eventual consistency patterns thoroughly.
❓ Frequently Asked Questions (FAQs)
Q1: What makes PhonePe different from other fintech companies?
A: PhonePe is UPI-first and processes the highest UPI transaction volume in India. It offers higher compensation, significant ESOPs, and exposure to extreme scale (5+ billion monthly transactions).
Q2: What is the Machine Coding round at PhonePe?
A: A 90-minute round where you design and implement a working system. Example: Design a splitwise-like expense sharing system, parking lot management, or movie booking system. Focus on clean code, design patterns, and testability.
Q3: Does PhonePe hire freshers through off-campus?
A: Yes, through their career portal, coding challenges on HackerEarth/CodeChef, and direct applications. Having strong competitive programming or open-source experience helps.
Q4: What technologies does PhonePe use?
A: Java/Spring Boot for backend, React for web, Kotlin/Java for Android, Swift for iOS, Kafka for streaming, Cassandra/MySQL for storage, Redis for caching, and Kubernetes for orchestration.
Q5: What is the work-life balance at PhonePe?
A: PhonePe has a high-performance culture with demanding work. However, they offer flexibility, wellness programs, and competitive benefits. It's ideal for those seeking rapid growth and learning.
Best wishes for your PhonePe placement journey! 🚀