I made it through to the 5th stage, with two further stages if I passed this. As I was applying from outside France, all the stages were done remotely via Skype. The 5 stages were:
The process was pleasant until I reached the second technical interview, where I was given a very inexperienced interviewer. First, he wasn't sure how to use the code collaboration website, so we had to use a different one. Then, he didn't seem to know how the List interface in Java works. Towards the end of the interview, on the last problem, I was a little unsure what to do. Instead of offering me any hints or guidance, he just let me follow my own path, which turned out not to be quite right. Unfortunately, I ran out of time, so I didn't have time to attempt an alternative solution.
While I understand that interviewers need to start somewhere, I don't think they should be interviewing on their own, particularly for someone who has gotten so far in the process already.
Write a program to determine if a string is a palindrome.
Write a program which, given a list of numbers and a parameter k, returns the top k numbers which appear most frequently.
Given a sorted list of numbers which has had k numbers moved from the front of the list to the end of the list, write a program to find k (in O(log n) time).
The following metrics were computed from 2 interview experiences for the C3.ai Software Engineer role in Paris, France.
C3.ai's interview process for their Software Engineer roles in Paris, France is extremely selective, failing the vast majority of engineers.
Candidates reported having mixed feelings for C3.ai's Software Engineer interview process in Paris, France.