← Back to blog Bloomberg NG SDE Campus Interview Debrief: Two Back-to-Back Rounds + Four Coding Problems Solved
Bloomberg

Bloomberg NG SDE Campus Interview Debrief: Two Back-to-Back Rounds + Four Coding Problems Solved

2026-06-04

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

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 child pointer besides next; 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

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