The process is broken up into several days.
On the first day, you come to the office and are given two programming tasks that you need to finish. You are given two hours for both tasks, and you get a computer with internet access.
When you pass this stage, you will be called in for several one-on-one interviews, where each person asks you different questions. I had three of those interviews.
The first person asked a question about synchronization between different processes on the same machine. The second person asked many questions, many of them about the internal workings of C++, including how I would implement a mutex that would release itself in case the thread that locked it dies, and how I would implement a memory leak detector. The third person asked me questions about how I would implement a reference counter in C++, why it isn't a good way to implement garbage collection, and similar questions.
I've put the questions from the programming test below.
Given a large number, is there any permutation of the number that is divisible by 8?
(A number is divisible by 8 if its last 3 digits divide by 8).
Given a series of strings, print together all the strings that are permutations of one another.
The following metrics were computed from 1 interview experience for the Bloomberg LP S/W Engineer role in Tel Aviv, Israel.
Bloomberg LP's interview process for their S/W Engineer roles in Tel Aviv, Israel is extremely selective, failing the vast majority of engineers.
Candidates reported having very good feelings for Bloomberg LP's S/W Engineer interview process in Tel Aviv, Israel.