American Express visited our campus on 23rd August 2020 for the position of Software Engineer Trainee at Gurgaon/Bangalore Location. There were 3 rounds for selection in the company. The CGPA cutoff was 7 and all the branches were allowed to apply for the test. Around 500-700 students gave the first round -online tests.
Round-1 (Online Test): The first round was an online test conducted on Codility which comprised 3 coding questions that had to be solved in a duration of 1hr 30 min. The disadvantage of this platform is 80% of the test cases are hidden and are run in the background. So you can see your code running on only 2-3 test cases and it is very difficult to figure out whether the program is correct or not. The questions were as follows.
- Find the minimum number of deletions in a string for every letter to have a unique frequency of occurrence.
- Slight Modification of Rank of the graph.
- Number of Subarrays with sum 0
Tips: Try to solve all the coding questions correctly as only those people who are shortlisted solve all questions correctly.
After the first round, 20 students including me were shortlisted for the next round which was an interview round.
Round-2 (Technical Interview Round-1): This round was a technical interview round. The interviewer asked me to give a brief introduction about myself. I started my introduction by telling most of the things that were written on my CV. Then he asked me the following questions:
Database Management System:
- What is the difference between SQL and NoSQL?
- Is MongoDB better than SQL, if yes then why? If no then why?
- Explain the concept of scalability in detail.
- What do you know about database sharding?
- Write an SQL query to find the second highest salary in the database.
- What is database indexing?
- Some mathematics questions based on linear equations. (Since in my resume it was mentioned that I won a maths event on a national level).
- Explain all the features of OOPS.
- What are the 2 types of polymorphism?
- What is function overloading? Explain with an example.
- What is the difference between function overloading and function overriding?
- What are virtual functions?
- What is inheritance and what are the types of inheritance?
- What is the difference between a process and a thread?
- What is a mutex? How it is different from a binary semaphore?
Tips: Be thorough with all the core computer science subjects because the interviewer may test your knowledge in any of the subjects.
After this round, 12 students including me were shortlisted for the next round which was an HR round.
Round-3 (Technical Round 2 + HR round): In this round, the interviewer asked me some common HR questions
- Tell me something about yourself.
- Discuss your projects. He asked many questions related to my projects.
- What are the advantages of Software-defined networks over traditional networks? (since it was my project)
- Then he gave me a problem which was a modified version of the Josephus problem.
- Tower of Hanoi Problem (code and explanation)
- Do you have any location preferences?
Finally, the company selected 8 students from the campus. However, I could not make it to the final list because of the last round.