Applied online and received a phone call, which I missed. Since i missed the phone call, they immediately emailed me to schedule a phone interview where they simply ask what I knew about the company, my future plans were and then booked me for the assessment day. This part was very easy.
Assessment day was 9 am to 3 pm. It started with the IT aptitude test. This was 50 minutes long and the questions are very easy if you know how to follow code, regular expressions and decision trees. It will also help if you know some mathematical logic (I believe there were a couple basic logic puzzles here).
The aptitude test was followed by rounds of interviews. They would take 2 people at a time and each person had 2 interviews (one behavioural and one technical, both are 1 on 1 interviews). The behavioural interview was mostly standard questions. Things like tell me about yourself, why did you choose your degree and what are your future career plans? The technical interview was definitely more difficult (but not by much). Just understand that anything you put on your resume is fair game. So if you say you have experience in Java, then be prepared to be asked about Java. Overall, just be nice, be confident, and don't be afraid to admit that you don't know (just follow it up by explaining why you really want to learn). The interviewers are all very nice so there is nothing to worry about.
While the interviews are going on, if you are waiting for your interview or have already done your interview, then you are given a list of questions and you are asked to solve them with the rest of the applicants there. They claim it is to gauge everyone's teamwork, but in truth, it is just there for everyone to really get to know each other (they do not actually see you until they come back to call for the next 2 people being interviewed). The questions are mostly famous logic puzzles and pattern recognition (these questions are definitely the hardest ones you will see all day). They will ask for some of the answers at the end of the day, so it's best to hopefully solve some of them.
After lunch (which they provide), you have the last two tests: Math (20 minutes) and Set theory (50 minutes). The math test was very very easy, but if you haven't done math recently, you should definitely brush up a bit. It was mostly high school level math: arithmetic, percentages, system of linear equations (which they call simultaneous equations), and exponentials.
The set theory test can be very difficult if you have never encountered sets and cardinality before. The questions were along the lines of: shade the Venn diagram that corresponds to this set; given these sets with these elements, what is the union/intersection/complements; how many elements are in this set? They do give you a booklet which explains sets to you, but in all honesty, you really do not have time to learn it all on the spot and finish the test. Definitely prepare for this one.
Overall, good experience. Try to make connections with the other people there, show that you have personality and smile.
TL;DR
If you are good at math (i.e done some math in university and still remember it), then everything here will be easy. Be prepared to answer anything on your resume. If you can't prepare for all of them, then prepare for the most relevant skills or don't put it on your resume in the first place. Be confident, show you want to succeed, and be nice.