This post is a recorded interview for a job posting that requires experienced PL/SQL Programmers at a Software Firm, Mastek. The interview candidate is a three year experienced PL/SQL, Cognos developer who works for IT division of financial services giant, Merrill Lynch. He was recruited by the company after successfully clearing all three rounds of interview: A Technical round, a Project Manager Interview round followed by HR discussion.
Technical Interview Round
- Tell me about yourself?
- What is a partition in Oracle?
- What is a trigger in SQL?
- What are the differences between a procedure and function in SQL?
- What is an Explain Plan?
- Write a SQL query to find second maximum salary in each department of a Company.
- Write a SQL query to delete all duplicate records in a table
- What is mutating table?
Project Manager Interview Round
- Tell me about yourself?
- Which technologies have you worked on in your previous companies?
- Would you like to work on Business Objects(BO)?
- Tell me the difference between Business Objects(BO) and Cognos?
HR Discussion
- Why did you want to change your current job?
- Why do you think should you be selected for this position?
- How much salary are you expecting?
Technical Interview Round
- Tell me about yourself?
- What is a partition in Oracle?
- What is a trigger in SQL?
- What are the differences between a procedure and function in SQL?
- What is an Explain Plan?
- Write a SQL query to find second maximum salary in each department of a Company.
- Write a SQL query to delete all duplicate records in a table
- What is mutating table?
Introduces himself, tells about about current project, roles and responsibilities, tells about previous work experiences and tells about his technical strengths.
Decomposing a table into many parts for better performance and manageability. Types of Partition: 1. List, 2. Range, 3. Hash, 4. Composite. Read more about Oracle partition
Trigger is a SQL block executed implicitly when one or more DML event occurs. Read more about triggers.
Procedure may or may not return a value through parameters, where as a function always return a value. There are three types of parameters allowed in procedure: IN, OUT and IN OUT, where as there is only one type of parameter allowed in a function: IN. Read more differences between functions and procedures
Explain Plan on wikipedia, Explain Plan in Oracle
select department, max(salary) from employee where salary < (select max(sal) from employee) group by department_no
delete from employee emp where rowid < (select max(rowid) from employee e1 where emp.column=e1.column)
A table is called mutating table if it is affected by insert, update or delete statement or when it is affected by a delete cascade statement. Read more about mutating tables in Oracle
Project Manager Interview Round:
- Tell me about yourself?
- Which technologies have you worked on in your previous companies?
- Would you like to work on Business Objects(BO)?
- Tell me the difference between Business Objects(BO) and Cognos?
Again, tells his name, previous job experience and current project, roles and responsibilities.
I have worked on Oracle PL/SQL and Cognos. Goes on telling about the technologies he worked on in previous companies.
Yes, I would like to work. Please train me on Cognos, if possible.
Cognos is an IBM tool, it is a MOLAP tool. Business Objects is a SAP tool, it is a ROLAP tool.
HR Discussion Round:
- Why did you want to change your current job?
- Why do you think should you be selected for this position?
- How much salary are you expecting?
Firstly current job location is far from my home. It takes me two hours to go to office and two hours to come home. Secondly, I don’t get enough exposure in Cognos as I work only with List reports. I am looking for a better opportunities. (Rants in his mind, “I want a better pay!!”)
Gives a bombastic textbook answer and impresses the HR.
Six and a half hundred thousand rupees per annum (6,50,000 Rs or 13,380$ USD approx)
HR: Well that is too high, you will have to quote lesser.
How about Six hundred thousand Rupees per annum? (6,00,000 Rs or 12,351$ USD approx)
HR: I’m afraid I can not offer you more than five and half hundred thousand Rupees (11,321$ USD approx) for your profile.
Candidate accepts the quotation and HR gives a joining date to the candidate.
