samsung logo

Samsung Interviews

10 experiences251 reads38 questions20% success rate
When To Choose BFS Over DFS? (Essential For Coding Rounds)
samsung logo
Samsung
November 20, 202543 reads

Summary

I participated in an on-campus coding round with Samsung where I encountered a challenging graph problem. The experience highlighted the critical importance of choosing BFS over DFS for problems involving shortest paths or levels, as candidates using BFS achieved a perfect score on the problem.

Full Experience

I recently participated in an actual on-campus coding round conducted by Samsung at my college. In Round 1, we were given 3 hours to solve a single problem. The question involved a square matrix, seven types of pipes, each allowing movement in specific directions, a starting position, and the task was to compute the maximum number of reachable steps from that position through valid pipe connections.

Many of my peers attempted this problem using DFS. Out of 50 test cases, those who used DFS typically passed around 42. However, candidates who used BFS received a perfect 50/50. That round made one thing crystal clear to me: while DFS can explore, BFS guarantees correctness whenever distance, levels, or minimal steps matter. This insight led me to understand exactly why BFS worked flawlessly in that problem, and more importantly, when BFS is the right tool.

Interview Questions (1)

Q1
Max Reachable Steps in Pipe Matrix
Data Structures & AlgorithmsHard

Given a square matrix and seven distinct types of pipes, each type allowing movement in specific directions. From a designated starting position within the matrix, the task is to compute the maximum number of reachable steps through valid pipe connections. The problem implies finding the farthest reachable node in a graph where nodes are matrix cells and edges are valid pipe connections.

Samsung SDE OA (2025) - On Campus
samsung logo
Samsung
software development engineeron campusOngoing
August 28, 202535 reads

Summary

I participated in the Samsung SDE Online Assessment (OA) for 2025 on-campus recruitment, which featured a single coding question: a modified version of the LeetCode Burst Balloons problem.

Full Experience

I recently took part in the Samsung Software Development Engineer (SDE) Online Assessment for their 2025 on-campus hiring drive. The coding round was straightforward, presenting just one question. This problem was a variant of the well-known LeetCode Burst Balloons problem. The main differentiator was the scoring mechanism for bursting a balloon, which was slightly altered from the standard version. Successful candidates who passed all 50 test cases were then shortlisted for the subsequent interview rounds.

Interview Questions (1)

Q1
Modified Burst Balloons Problem
Data Structures & AlgorithmsHard

The problem was a modified version of the classic LeetCode Burst Balloons problem. Given n balloons, each with a numerical value. If I burst balloon i, the score obtained is calculated as the product of the value of the balloon immediately to its left and the value of the balloon immediately to its right. This differs from the standard problem where the value of the balloon being burst (nums[i]) is also multiplied. When a balloon is burst, its immediate neighbors become adjacent. Virtual balloons with a value of 1 are considered at the ends of the array. The objective is to find the maximum coins I can collect by bursting all balloons wisely.

Samsung Senior Engineer Interview Experience
samsung logo
Samsung
Senior Engineer2 years
July 8, 20258 reads

Summary

I interviewed for a Senior Engineer position at Samsung, undergoing an online test, a technical round focused on data structures, algorithms, and system concepts, and a final HR discussion. I successfully navigated questions about finding triplets with a sum of zero and discussed my experience and career aspirations.

Full Experience

College: Tier-1 NIT
Years of Experience: 2 years

Round 1: Online Test (Medium to Tough Level)

1 question, 4 hours (Dynamic Programming question)

Round 2: Technical Interview (1 hour)

The panel consisted of 2 interviewers. The role was related to Networking Development with a tech stack including C++, Linux, Docker, etc.

The first question was about finding triplets with a sum of 0 in an array. I explained three methods: a brute-force approach, a two-pointer approach, and then they asked me to optimize further, which I did. They seemed very confident in my approach at that point.

Next, they asked questions on threading and multithreading, which I answered well.

They also asked about web development architectural patterns, several small questions on high-level design, optimization, and DSA concepts.

Round 3: HR Discussion & Technical Info (30 minutes)

The HR asked about my previous experience, reasons for switching jobs, why I wanted to change my tech stack, and we discussed salary expectations.

Interview Questions (3)

Q1
Find Triplet Sum Zero
Data Structures & Algorithms

Given an array of integers, find all unique triplets in the array which gives the sum of zero.

Q2
Threading and Multithreading Concepts
Other

Questions related to threading and multithreading concepts were asked.

Q3
Previous Experience and Career Goals (HR Round)
Behavioral

The HR asked about my previous experience, reasons for switching jobs, and why I wanted to change my tech stack.

Samsung R&D Noida Test 2025.
samsung logo
Samsung
Noida
July 6, 20258 reads

Summary

This post describes a coding problem encountered during the Samsung R&D Noida Test 2025, which involves minimizing the sum of an array by removing one element daily and considering daily additions.

Full Experience

Given an array original array say y = [1,2,3,4,5] each day an addition array say x = [2,1,6,7,8] this is added to it. Now we need to find in which min day the total sum will be less than M. At each day we can remove any one element from the array. ex: Day 0 : [1,2,3,4,5] Now sum = 15 if its less than M then 0 is our answer. Note: On day 0 we don't remove any element. Day1: [1,2,3,4,5] + [2,1,6,7,8] = [3,3,9,11,13] Now we can remove any element say 11 . Now the sum is 3+3+9+0+13 = 28 if its less than M, then Day1 is our answer. if we can't achieve this then return -1.

Day2: [3,3,9,0,13] + [2,1,6,7,8] = [5,4,15,7,21] Now we can select any one element to remove say 15. so array becomes : [5,4,0,7,21]

and so on......

Constraints: M<10^6> Size of Array : N<20

Test Case 1: M = 1 original Array = [10,15] Daily Addition Array = [3,2] Ans = -1

Test Case 2: M = 33 original Array = [7,3,5,6,8,0,8] Daily Addition Array = [2,4,1,1,2,3,1] Ans = 6

Test Case 3: M = 92 original Array = [35,58,39] Daily Addition Array = [30,20,10] Ans = 2

Test Case 4: M = 905 original Array = [170,203,171,42,60,111,152] Daily Addition Array = [60,32,63,65,70,50,63] Ans = -1

Interview Questions (1)

Q1
Minimize Array Sum with Daily Additions and One Removal
Data Structures & AlgorithmsMedium

Given an array original array say y = [1,2,3,4,5] each day an addition array say x = [2,1,6,7,8] this is added to it. Now we need to find in which min day the total sum will be less than M. At each day we can remove any one element from the array. ex: Day 0 : [1,2,3,4,5] Now sum = 15 if its less than M then 0 is our answer. Note: On day 0 we don't remove any element. Day1: [1,2,3,4,5] + [2,1,6,7,8] = [3,3,9,11,13] Now we can remove any element say 11 . Now the sum is 3+3+9+0+13 = 28 if its less than M, then Day1 is our answer. if we can't achieve this then return -1.

Day2: [3,3,9,0,13] + [2,1,6,7,8] = [5,4,15,7,21] Now we can select any one element to remove say 15. so array becomes : [5,4,0,7,21]

and so on......

Constraints: M<10^6> Size of Array : N<20

Test Case 1: M = 1 original Array = [10,15] Daily Addition Array = [3,2] Ans = -1

Test Case 2: M = 33 original Array = [7,3,5,6,8,0,8] Daily Addition Array = [2,4,1,1,2,3,1] Ans = 6

Test Case 3: M = 92 original Array = [35,58,39] Daily Addition Array = [30,20,10] Ans = 2

Test Case 4: M = 905 original Array = [170,203,171,42,60,111,152] Daily Addition Array = [60,32,63,65,70,50,63] Ans = -1

Samsung DSA Question
samsung logo
Samsung
June 7, 20257 reads

Summary

I recently took a coding assessment at Samsung and want to share a unique DSA problem involving greedy, two-pointer, and sorting techniques.

Full Experience

I recently took a coding assessment where one of the problems was based on a very interesting twist on greedy + two-pointer + sorting techniques — and I wanted to share the question for the community.


You're on a haunted straight road of length L with N ghosts positioned along it.

Each ghost is described by:

A position A[i] on the road (0 ≤ A[i] ≤ L)

A stamina level B[i]

You are allowed to trap exactly one ghost, and this ghost becomes your trap ghost. Starting from this position, you can move only to the right, hunting more ghosts under the following rules:

Rules for hunting: You may only hunt ghosts whose stamina is greater than or equal to the trap ghost's stamina.

Hunting a ghost costs energy equal to:

(distance from the trap)×(ghost’s stamina)

The total energy used must not exceed a given limit E.

Goal: Determine the maximum number of ghosts you can hunt including the trap ghost, under the above constraints.

Input:
L = 20  
N = 5  
E = 100  

A = [2, 5, 10, 14, 18]  
B = [3, 2, 4, 5, 6]

Output: 3

Explanation:

  • If you trap the ghost at position 10 with stamina 4
  • You can hunt ghosts at positions 14 (stamina 5) and 18 (stamina 6)
    • Cost to hunt at 14: (14 - 10) * 5 = 20
    • Cost to hunt at 18: (18 - 10) * 6 = 48
    • Total cost: 20 + 48 = 68 ≤ 100
  • Total ghosts hunted = 3 (at positions 10, 14, 18)

Interview Questions (1)

Q1
Haunted Road Ghost Hunting (Greedy + Two-Pointer + Sorting)
Data Structures & Algorithms

You're on a haunted straight road of length L with N ghosts positioned along it.

Each ghost is described by:

A position A[i] on the road (0 ≤ A[i] ≤ L)

A stamina level B[i]

You are allowed to trap exactly one ghost, and this ghost becomes your trap ghost. Starting from this position, you can move only to the right, hunting more ghosts under the following rules:

Rules for hunting: You may only hunt ghosts whose stamina is greater than or equal to the trap ghost's stamina.

Hunting a ghost costs energy equal to:

(distance from the trap)×(ghost’s stamina)

The total energy used must not exceed a given limit E.

Goal: Determine the maximum number of ghosts you can hunt including the trap ghost, under the above constraints.

Input:
L = 20  
N = 5  
E = 100  

A = [2, 5, 10, 14, 18]  
B = [3, 2, 4, 5, 6]

Output: 3

Explanation:

  • If you trap the ghost at position 10 with stamina 4
  • You can hunt ghosts at positions 14 (stamina 5) and 18 (stamina 6)
    • Cost to hunt at 14: (14 - 10) * 5 = 20
    • Cost to hunt at 18: (18 - 10) * 6 = 48
    • Total cost: 20 + 48 = 68 ≤ 100
  • Total ghosts hunted = 3 (at positions 10, 14, 18)
Samsung DSA question
samsung logo
Samsung
May 20, 202513 reads

Summary

This post details a complex Data Structures and Algorithms problem, 'Logging Roadside Trees', which was part of a Samsung interview.

Full Experience

🪓 Problem: Logging Roadside Trees

The Korean Expressway Corporation is planning to expand the road where the volume of traffic is high. In order to expand the road, all the roadside trees nearby the road have to be chopped down.

To do this efficiently, they will rent a logging robot. However, the rental fee is high due to the high production cost, so we want to minimize the time taken by the robot.


🧠 The Logging Robot Has the Following Features:

  1. The robot can move forward and backward.
    • Moving 1 unit takes 1 minute.
  2. The roadside trees (left or right side) can be cut and loaded, which takes 1 minutes per tree.
  3. Trees must be loaded in the order of their cut.
    • Only a tree whose length is shorter than or equal to the previously loaded tree can be loaded.
    • (i.e., non-increasing order of tree lengths)
  4. If there are trees on both sides (left and right), without moving, each can be cut and loaded if the above order condition is satisfied.
  5. The robot can load an infinite number of trees.

📐 Road Layout Description:

  • The road is given as a straight line with a length of N.
  • The first point (position 0) is the starting point.
  • The last point (position N) is the ending point.
  • On each side (left and right), there may be one tree at most at every unit length, with varying lengths.
  • It is possible that there are no trees at a particular position.
  • At the starting and ending points, there are no trees planted.

📋 Input Format:

  1. The first line is an integer N — the length of the road.
  2. The next two lines contain the lengths of the trees at each point from 0 to N:
    • First line: L — tree lengths on the left side.
    • Second line: R — tree lengths on the right side.
    • If there is no tree at a position, the length is given as 0.

🧾 Output Format:

Print the shortest time (in minutes) that is required to cut down all the trees, starting from the starting point to the ending point.



🧪 Example:

Example 1:

N = 5
L = 0 3 2 1 0 0
R = 0 3 2 1 0 0
Output: 11 minutes

Example 2:

N = 7
L = 0 5 1 5 9 1 5 0
R = 0 0 0 0 0 0 0 0
Output: 23 minutes

Example 3:

N = 10
L = 0 7 3 5 7 7 1 0 5 8 0
R = 0 7 7 0 1 0 1 1 0 0 0
Output: 51 minutes

Interview Questions (1)

Q1
Logging Roadside Trees
Data Structures & Algorithms

🪓 Problem: Logging Roadside Trees

The Korean Expressway Corporation is planning to expand the road where the volume of traffic is high. In order to expand the road, all the roadside trees nearby the road have to be chopped down.

To do this efficiently, they will rent a logging robot. However, the rental fee is high due to the high production cost, so we want to minimize the time taken by the robot.


🧠 The Logging Robot Has the Following Features:

  1. The robot can move forward and backward.
    • Moving 1 unit takes 1 minute.
  2. The roadside trees (left or right side) can be cut and loaded, which takes 1 minutes per tree.
  3. Trees must be loaded in the order of their cut.
    • Only a tree whose length is shorter than or equal to the previously loaded tree can be loaded.
    • (i.e., non-increasing order of tree lengths)
  4. If there are trees on both sides (left and right), without moving, each can be cut and loaded if the above order condition is satisfied.
  5. The robot can load an infinite number of trees.

📐 Road Layout Description:

  • The road is given as a straight line with a length of N.
  • The first point (position 0) is the starting point.
  • The last point (position N) is the ending point.
  • On each side (left and right), there may be one tree at most at every unit length, with varying lengths.
  • It is possible that there are no trees at a particular position.
  • At the starting and ending points, there are no trees planted.

📋 Input Format:

  1. The first line is an integer N — the length of the road.
  2. The next two lines contain the lengths of the trees at each point from 0 to N:
    • First line: L — tree lengths on the left side.
    • Second line: R — tree lengths on the right side.
    • If there is no tree at a position, the length is given as 0.

🧾 Output Format:

Print the shortest time (in minutes) that is required to cut down all the trees, starting from the starting point to the ending point.



🧪 Example:

Example 1:

N = 5
L = 0 3 2 1 0 0
R = 0 3 2 1 0 0
Output: 11 minutes

Example 2:

N = 7
L = 0 5 1 5 9 1 5 0
R = 0 0 0 0 0 0 0 0
Output: 23 minutes

Example 3:

N = 10
L = 0 7 3 5 7 7 1 0 5 8 0
R = 0 7 7 0 1 0 1 1 0 0 0
Output: 51 minutes
SAMSUNG R&D Noida | On-site OA | April 2025
samsung logo
Samsung
Noida
April 12, 20258 reads

Summary

I encountered a coding problem during my Samsung R&D On-site Online Assessment in April 2025 involving medicine bottle delivery optimization.

Full Experience

Given N medicine bottles and M containers and each container has capacity to carry W[i] bottles. The delivery van can take two containers (only one can also be loaded) to nearby hospital in single trip. Containers can be reused. Find number of trips to deliver minimum N bottles. If not possible, print -1

Contraints 1 <= N,M,W[i] <= 1000 W.length == M

N = 5, M = 2 W[] = {1, 3} Output = 2

N = 6, M = 2 W[] = {4, 5} Output = -1

N = 720, M = 5 W[] = {27, 52, 119, 144, 124} Output = 5

I tried using 2d/3d DP but got TLE.

Interview Questions (1)

Q1
Minimum Trips to Deliver Medicine Bottles
Data Structures & Algorithms

Given N medicine bottles and M containers and each container has capacity to carry W[i] bottles. The delivery van can take two containers (only one can also be loaded) to nearby hospital in single trip. Containers can be reused. Find number of trips to deliver minimum N bottles. If not possible, print -1

Contraints 1 <= N,M,W[i] <= 1000 W.length == M

N = 5, M = 2 W[] = {1, 3} Output = 2

N = 6, M = 2 W[] = {4, 5} Output = -1

N = 720, M = 5 W[] = {27, 52, 119, 144, 124} Output = 5

Samsung Advanced Developer Interview Experience
samsung logo
Samsung
October 17, 202448 reads

Summary

My interview for an Advanced Developer role at Samsung involved a deep dive into my internship project, fundamental Data Structures and Algorithms, two challenging aptitude questions, and discussions on core CS fundamentals, focusing heavily on problem-solving and logical thinking.

Full Experience

My Samsung Advanced Developer Interview Experience

During my interview, the discussion started with an in-depth exploration of my internship project at Samsung R&D, Bangalore. The interviewer probed me about potential single points of failure within the project and asked how I would approach addressing them. We also delved into the significance of 'doChoreographer' frames and how they could be utilized to pinpoint performance bottlenecks.

Following this, the focus shifted to fundamental Data Structures and Algorithms. I was asked about various traversal algorithms for trees and graphs, with an emphasis on their real-world applications and use cases.

The interviewer then presented two aptitude questions that required logical reasoning and problem-solving:

  1. The Scooter and Tires problem.
  2. The Weighing Coins problem.

After these aptitude challenges, we transitioned back to Data Structures and Algorithms. The conversation covered Dijkstra's Algorithm, Bellman-Ford, and Floyd-Warshall, where I discussed their time and space complexities. There was also a brief mention of a dynamic programming problem involving directed graphs that had appeared in the SWC Advanced test.

Finally, the interview concluded with a discussion on core Computer Science fundamentals, including semaphores, threads, locking mechanisms, critical sections, race conditions, and various strategies to handle these concurrency issues. Throughout the entire interview, I felt the emphasis was predominantly on assessing my problem-solving capabilities and logical thinking rather than just theoretical recall.

Interview Questions (2)

Q1
Scooter and Tires Problem
OtherMedium

You have a scooter with two tires and a third spare tire. Each tire can last for 5 km. The task is to find the maximum distance you can travel.

Q2
Weighing Coins Problem
OtherMedium

You are given 10 bags of coins, with one bag weighing differently. The challenge is to determine the minimum number of weighings required to identify the odd bag.

Samsung R&D Bangalore Interview Experience ( New Graduate, Off Campus ) || Software Engineer
samsung logo
Samsung
Software EngineerBangaloreOffer
August 12, 202238 reads

Summary

I interviewed for a Software Engineer New Grad position at Samsung R&D Bangalore, which included two coding rounds, a technical round focusing on DSA, OOPS, OS, and projects, and a brief HR discussion. I successfully received an offer within three working days.

Full Experience

I interviewed for a New Grad Software Engineer position at Samsung R&D Bangalore. My journey started with two coding rounds, followed by a detailed technical interview, and concluded with a brief HR discussion.

Coding Round 1 (Cocubes Round) - July 15, 2022

This round involved solving two medium-difficulty coding questions within 60 minutes.

Coding Round 2 (SWC Advanced Test) - July 21, 2022

This was a more challenging round, requiring me to solve one medium to hard question in 180 minutes. We had only 5 attempts for a successful submission. Clearing this round felt like accomplishing 90% of the interview process.

Technical Round 1 - August 5, 2022

This round lasted about 1 hour 15 minutes. The interviewer started by asking about my favorite data structures, to which I listed vector, Hashmap, Heap, Stack, Binary Tree, and Trie. He then presented two DSA questions, asking me to code them on an online editor while sharing my screen. After coding each, we discussed their time and space complexities.

Following the DSA problems, the discussion moved to OOPS (C++) and Operating Systems. I was asked several conceptual questions, some of which required me to write code examples to illustrate my understanding. The interviewer was very supportive throughout this process. We then discussed my projects, specifically questions related to Android architecture and Flutter.


HR Round - August 8, 2022

This round was very brief, lasting around 7 minutes, and felt more like a discussion as the interviewer was quite busy. He inquired about my reasons for leaving my current organization and my availability to join SRIB. Towards the end, he informed me about the compensation package.

Result: I was selected and received the offer letter within three working days. I considered the difficulty of questions, time allocated, and interviewer support when assessing the difficulty levels.

Interview Questions (17)

Q1
Maximum Difference Between Node and Ancestor
Data Structures & AlgorithmsMedium

Problem found at the provided LeetCode link.

Q2
Wildcard Matching
Data Structures & AlgorithmsMedium

Problem found at the provided LeetCode link.

Q3
Fishermen Problem
Data Structures & AlgorithmsMedium to Hard

Problem similar to the one found at the provided GitHub link.

Q4
Binary Tree Maximum Path Sum
Data Structures & AlgorithmsMedium

Problem found at the provided LeetCode link.

Q5
First Unique Character in a String
Data Structures & AlgorithmsMedium

Problem found at the provided LeetCode link.

Q6
Polymorphism in C++
Other

What is polymorphism in C++ and explain its types?

Q7
Achieving Runtime Polymorphism in C++
Other

How do you achieve runtime polymorphism? I was asked to write the whole code with a real-life example.

Q8
Abstract Class and Pure Virtual Function in C++
Other

What is abstract class and pure virtual function in C++?

Q9
Late Binding and Early Binding
Other

What do you mean by late binding and early binding?

Q10
Semaphore and Mutex
Other

Explain semaphore and mutex in detail with their constructs.

Q11
Paging vs. Segmentation Advantages
Other

Explain paging vs segmentation advantages?

Q12
Virtual Memory
Other

What is Virtual Memory?

Q13
Memory Management Unit (MMU)
Other

What is MMU?

Q14
Android Architecture
Other

What is Android architecture?

Q15
Scaffold vs. Container in Flutter
Other

Difference between scaffold and container in flutter?

Q16
Reason for Leaving Current Organization
Behavioral

Why do you want to leave your current organization?

Q17
Joining Timeframe
Behavioral

How soon can you join SRIB?

Preparation Tips

I had practiced a good number of LeetCode problems, with my count around 800 and a rating of 1823. My preparation focused on standard DSA concepts and problem-solving. For OOPS and OS, I revised key concepts and was ready to explain them with code examples where necessary. For projects, I ensured I understood the underlying architecture and specific components mentioned in my resume.

Samsung R&D India | Offer | SDE - 1
samsung logo
Samsung
sde-1indiaOffer
July 18, 202143 reads

Summary

I successfully interviewed for an SDE-1 position at Samsung R&D India as a 2020 graduate, receiving an offer. The interview process consisted of an online coding exam, two in-depth technical rounds, and a final HR/managerial discussion.

Full Experience

I recently participated in the on-campus recruitment drive for Samsung R&D India, targeting 2020 graduates. The entire process involved four rounds: one online exam, two technical interviews, and one HR/managerial interview.

Round 1: Online Exam

The first round was an online exam conducted on Samsung's internal platform, the Samsung SWC exam platform. It featured just one coding question, but it was to be completed in 3 hours. The difficulty was medium-hard, leaning more towards hard. The crucial aspects were:

  • Clearing almost 50 test cases, with success required for every single one.
  • No autocomplete IDE features were allowed.
  • No standard libraries could be used, other than print statements, which meant creating my own data structures like HashMap.

The questions typically cover DP, Hash, Heap, and Arrays. My specific question was a variation of the Burst Balloons problem.

Round 2: First Technical Round

This was a face-to-face round focused on my projects, technical depth in core subjects, and Data Structures & Algorithms (DSA). Since I worked with Java, I was questioned extensively on topics like Java OOPS, immutability, Garbage Collection (GC) mechanics, and String pool concepts.

For DSA, I had to write code snippets on paper, which emphasized the importance of writing clean, proper, and understandable code without mistakes. The topics covered included:

Self-confidence was key here; the interviewers were friendly and helpful, encouraging me to give my best approach even if I made a mistake.

Round 3: Second Technical Round

This round followed quickly after the first technical one, covering DSA, algorithms, core subject basics, and some puzzles. Again, code was written on paper. Key topics included:

  • Linked List: Re-emphasizing loop detection, but this time requiring a mathematical explanation/proof for why the fast pointer skips two nodes in the 'fast and slow pointers' method. Understanding the depth of answers was crucial.
  • DP, Backtracking, Tree: General discussions and problem-solving.

Core subjects included Security and Encryption (RSA, Symmetric/Asymmetric encryption), Database basics (ACID properties), and Networking basics (subnetting, HTTP request/response). I was also asked 1-2 general puzzles. Staying calm and trying every question, rather than giving up, was essential in this round, which aimed to test patience and resilience.

Round 4: HR/Managerial Round

The final round was with the HR head, lasting about 30-40 minutes. It covered standard HR questions about hobbies, future vision, and discussions based on my resume, including my Java and Machine Learning projects. Some mathematical puzzles were also part of this round.

The results were announced the next day, and I was fortunate to be one of the selected candidates for an Intern + FTE role.

Interview Questions (10)

Q1
Burst Balloons (Variation)
Data Structures & AlgorithmsHard

I was given a coding question which was a variation of the Burst Balloons problem. The exam was conducted on Samsung's internal platform, allowing 3 hours for 1 question with nearly 50 test cases, no autocomplete IDE features, and no standard libraries except print statements. I had to clear every test case.

Q2
Java OOPS, Immutability, GC, Strings & String Pool
Other

In the first technical round, the interviewer asked in-depth questions about Java OOPS, Immutability in Java, how Garbage Collection (GC) works, and a brief discussion on Strings and String pool.

Q3
Reverse Linked List
Data Structures & Algorithms

I was asked to write code for reversing a linked list on paper. This problem is similar to Reverse Linked List on LeetCode.

Q4
Linked List Cycle II (Finding loops and meeting points)
Data Structures & Algorithms

I discussed finding loops and meeting points in a Linked List and was asked to write code on paper. The problem is similar to Linked List Cycle II.

Q5
Symmetric Tree (Mirroring Trees)
Data Structures & Algorithms

I was asked about mirroring trees and had to write code for it on paper. This problem is similar to Symmetric Tree.

Q6
Find Median from Data Stream
Data Structures & Algorithms

I was asked to find the median of a continuous stream of data and write code for it on paper. This problem is similar to Find Median from Data Stream.

Q7
Mathematical Proof for Floyd's Cycle-Finding Algorithm
Data Structures & AlgorithmsHard

In the second technical round, I was asked to provide a mathematical explanation and proof for why the fast pointer skips two nodes in Floyd's Cycle-Finding Algorithm (fast and slow pointers method) to detect a loop in a Linked List.

Q8
Security and Encryption Concepts
Other

I was asked about Security and Encryption topics, specifically RSA algorithm, Symmetric, and Asymmetric encryption.

Q9
Database Basics & ACID Properties
Other

I discussed Database basics, including ACID properties.

Q10
Networking Basics
Other

Questions covered Networking basics, subnetting, and the HTTP request/response mechanism.

Preparation Tips

My preparation involved extensive practice of Data Structures & Algorithms, focusing on common patterns. For the online exam, it was crucial to practice a variety of medium-hard LeetCode problems, especially those involving DP, Hash, Heap, and Arrays, keeping in mind the strict environment of no standard libraries and no autocomplete. For technical rounds, I focused on core Java concepts, in-depth DSA problems like Linked Lists (loops, reversal), Trees (mirroring, paths), and Heaps (median in stream). Practicing writing clean, proper, and understandable code on paper was also vital. Furthermore, I ensured I had a deep understanding of core computer science subjects such as Security, Databases (ACID properties), and Networking, as well as being ready to mathematically explain algorithms. Maintaining self-confidence and a calm demeanor during challenging questions was also a significant part of my approach.

Have a Samsung Interview Experience to Share?

Help other candidates by sharing your interview experience. Your insights could make the difference for someone preparing for their dream job at Samsung.