cswork / libraryOpen practice workspace

Interview experiences · Palantir

Palantir Software Engineer Interview Experience — Graph Code Review, Dijkstra, and a Multithreaded System Monitor

OnsiteInterviewed 2026-03

This company isn't that hard — it's basically all repeat questions from previous write-ups on this forum. If you go through the compiled experiences here, you'll run into the exact same problems. Phone screen. Onsite 1 had three technical rounds. Each one also asked some behavioral questions and asked about the projects on my resume. Coding round: a stock question from this forum, exactly the sam…

This company isn't that hard — it's basically all repeat questions from previous write-ups on this forum. If you go through the compiled experiences here, you'll run into the exact same problems.

Phone screen.

Onsite 1 had three technical rounds. Each one also asked some behavioral questions and asked about the projects on my resume.

Coding round: a stock question from this forum, exactly the same as one that had already been posted.

Code review round: a "city roads" problem. Defining the graph used a bunch of classes and it looked pretty confusing — be careful doing it with BFS so you don't get yourself tangled up. From memory, here's roughly what the graph-related classes looked like:

class Location {
    String name;
    public Location(String name) {
        this.name = name;
    }
}

class Road {
    Location from;
    Location to;
    int distance;
    public Road(Location from, Location to, int distance) {
        this.from = from;
        this.to = to;
        this.distance = distance;
        // weight=1 now
    }
}

class RoadConnection {
    Location destination;
    int distance;
    public RoadConnection(Location destination, int distance) {
        this.destination = destination;
        this.distance = distance;
    }
}

The first bug is the one mentioned in earlier write-ups — roads are bidirectional but the code treats them as one-directional.

The second question asks for the shortest distance between two cities when weight is 1 — that's just plain BFS.

The third question is the shortest distance when weight isn't 1 — use Dijkstra.

System design round: none of the traditional system design stuff about designing components — they didn't even give a whiteboard. The question was to design a system monitor that needs to collect metrics from 1000 other servers every ten minutes. They focused a lot on how to design the worker that executes the collect-metrics operation, and had me write the multithreaded code for that part.

Comments

Nothing here yet.

Join in on CSWork →