This time we share a student who just passed the Bloomberg New Grad SDE campus interview, going from application to two technical rounds in just over a week—very efficient. The problems were all LeetCode Medium level, but the pace was fast and the interviewers highly interactive, making the overall experience surprisingly relaxed.
1. Timeline Overview
| Day | Event |
|---|---|
| Day 0 | Submitted resume through the school channel |
| Day 0 | Received an HR interview invite the same day |
| Day 7 | Confirmed campus interview (on-site mode) |
| Day 9 | Round 1 (technical + behavioral) |
| Day 10 | Round 2 (technical + deep dive) |
Two rounds in just over a week—Bloomberg's campus pace really is fast.
2. Round 1: Behavioral + Two Coding Problems
The first interviewer was a very gentle woman and the atmosphere was relaxed. After some pleasantries, she moved into Bloomberg's standard behavioral flow.
Behavioral questions
- Self-introduction
- Describe one of your most representative project experiences
- Tell us about the project you found most challenging
- Describe a time you faced an ambiguous task requirement
Bloomberg especially values "logic and communication under ambiguity," asking detailed follow-ups like "How did you communicate with the team to clarify requirements?" "Did the final result meet expectations?"
Coding 1: count valid triangles
Given an array, count how many valid triangles can be formed (the sum of any two sides exceeds the third).
def triangleNumber(nums):
nums.sort()
n, count = len(nums), 0
# Fix the longest side k, two pointers for the other two
for k in range(n - 1, 1, -1):
i, j = 0, k - 1
while i < j:
if nums[i] + nums[j] > nums[k]:
# i..j-1 with j all form a triangle with nums[k]
count += j - i
j -= 1
else:
i += 1
return count
Approach: sort, fix the longest side, two pointers. Complexity: time O(n^2), space O(1). AC in a few minutes.
Coding 2: flatten a multilevel linked list
List nodes have a
childpointer besidesnext; flatten into a single-level list.
def flatten(head):
if not head:
return head
stack, curr = [], head
prev = None
while curr or stack:
if not curr:
curr = stack.pop() # done with a child branch, back to main chain
if prev:
prev.next = curr
curr.prev = prev
if curr.child:
if curr.next:
stack.append(curr.next) # stash the main-chain continuation
curr.next = curr.child
curr.child = None
prev, curr = curr, curr.next
return head
Approach: stack-simulated DFS—on a child, descend first and push next. Complexity: time O(n), space O(n).
3. Round 2: Resume Deep Dive + Two Coding Problems
The second round had two interviewers, more technical and deeper in style.
Resume and project follow-ups
- "If you redid your previous project, how would you improve it?"
- "You mentioned smart pointers—can you explain the principle in detail?"
The smart-pointer part of the project was long ago, so the student could only recall the concept on the spot, but a calm tone showed no fear. Reminder: every technical point on your resume must be defensible one layer deeper.
Coding 1: level with the most nodes
Given a binary tree, find the level with the most nodes and return its level number.
from collections import deque
def maxLevel(root):
if not root:
return 0
q = deque([root])
best_level, best_count, level = 1, 0, 0
while q:
level += 1
size = len(q)
if size > best_count:
best_count, best_level = size, level
for _ in range(size):
node = q.popleft()
if node.left: q.append(node.left)
if node.right: q.append(node.right)
return best_level
Approach: BFS level-order, track per-level counts. Complexity: time O(n), space O(n). Done in five minutes.
Coding 2: trapping rain water
Bloomberg's favorite. Given bar heights, compute how much water is trapped.
def trap(height):
if not height:
return 0
left, right = 0, len(height) - 1
left_max = right_max = water = 0
while left < right:
if height[left] < height[right]:
# left side is shorter, the result is bounded by left_max
left_max = max(left_max, height[left])
water += left_max - height[left]
left += 1
else:
right_max = max(right_max, height[right])
water += right_max - height[right]
right -= 1
return water
Approach: two pointers + running max on each side. Complexity: time O(n), space O(1).
4. Prep Points
| Dimension | Tip |
|---|---|
| Behavioral | Prepare "ambiguous requirement + communication" stories; Bloomberg loves follow-ups |
| Coding | Mostly Medium; two pointers/BFS/linked lists are frequent; be fast |
| Resume | Every technical term (e.g. smart pointers) must be explainable |
| Pace | Highly interactive; narrate as you code—communication matters |
FAQ
Q1: Is Bloomberg's campus loop really this fast?
This student finished two rounds in just over a week—genuinely fast. But the pace varies by school; the key is to get into gear the moment you get the invite, with behavioral and high-frequency coding both pre-prepared.
Q2: How hard is the coding?
Mostly LeetCode Medium: valid triangles, linked-list flatten, BFS level-order, trapping rain water. The skeletons are not hard, but the pace is fast and you must narrate as you write—solving alone is not enough; expression must keep up.
Q3: Why is trapping rain water Bloomberg's favorite?
It tests two pointers, space optimization, and boundary handling at once, and the O(1)-space solution discriminates well between candidates. Practice the two-pointer version until you can write it from memory and explain the principle.
Q4: How do I prepare for resume follow-ups like smart pointers?
If it is on your resume, you must explain the principle. For smart pointers, be ready to explain shared_ptr reference counting, unique_ptr ownership, and cyclic references with weak_ptr. Do not list tech you have not used deeply.
Preparing for a Bloomberg campus interview?
Bloomberg's campus loop is fast, interactive, with mostly Medium coding that must be fast and accurate. If you want timed practice on the two rounds, focused work on "ambiguous requirement" behavioral stories, or high-frequency coding practice, reach out—send the role's JD and we will predict the question types first, then plan a practice schedule.
Add WeChat Coding0201 now to get Bloomberg campus interview questions and practice.
Contact
- WeChat: Coding0201
- Email: [email protected]
- Telegram: @OAVOProxy