Inmobi : Online Technical Coding Interview Experience
1.) InMobi Interview Experience:
Round 1 (3rdApril 2022):
Anonymous Interviewer from 3rd party company bar raiser
First some theory question
- No of island standard one: Production ready code
- Which Pattern you have used in your code ?
- Explain Factory Pattern (Since I mentioned the same above)
- OOPS concept (Encapsulation , Abstraction difference)
- Difference between RDBMS n NOSQL
- ACID property of RDBMS
- Is php has multiple inheritence ?
Mysql Question :
+-------------+---------+ | Column Name | Type | +-------------+---------+ | id | int | | score | decimal | +-------------+---------+ id is the primary key for this table. Each row of this table contains the score of a game. Score is a floating point value with two decimal places. Write an SQL query to rank the scores. The ranking should be calculated according to the following rules: The scores should be ranked from the highest to the lowest. If there is a tie between two scores, both should have the same ranking. After a tie, the next ranking number should be the next consecutive integer value. In other words, there should be no holes between ranks. Return the result table ordered by score in descending order. The query result format is in the following example. Example 1: Input: Scores table: +----+-------+ | id | score | +----+-------+ | 1 | 3.50 | | 2 | 3.65 | | 3 | 4.00 | | 4 | 3.85 | | 5 | 4.00 | | 6 | 3.65 | +----+-------+ Output: +-------+------+ | score | rank | +-------+------+ | 4.00 | 1 | | 4.00 | 1 | | 3.85 | 2 | | 3.65 | 3 | | 3.65 | 3 | | 3.50 | 4 | +-------+------+ select score , cnt as rank from Scores order by score desc ;
Round 2 (17th April 2022) : Face to Face , team outside the India
- Small basic php code test on TestGorilla (get the average of top 3 subject among the 5 subject) Piece of Cake ! . Just handle the basic edge case unlike me who blown up by not thinking clearly & handling every basic edge case.
45 min Discussion on below points:
- current role & what you do ,
- Php tech stack & which framework we are using.
- How you write Unit test case ?
- when you will not use any Doctrine or any ORM (was blank on this)
Round 3 : online Assingment
FOR ALL TASKS --------------------- You have to do 2 out of 3 tasks: TASK 1 plus one more to choose between TASK 2 or 3 Should you have any questions, you should assume the product owner is on holiday (unfortunately we cannot accept any questions). We are looking for your understanding and your coding ability, do not worry if you make incorrect assumptions, although during the interview you will be asked why certain assumptions were made, as a means to understanding your thought process. We are not looking to catch you out! We are looking at your ability and how you interpret requirements. Extra features are not needed, but we DO encourage you to push yourself for your best and most complete solution (cleaning, design patterns, error handling, etc). TASK 1 (mandatory) --------------------- Architect skeleton classes, interfaces and unit tests for a logging system with multiple input structures and output formats. Consider using the following design concepts: interfaces, traits, namespaces, factories, adapters, exceptions and type hinting. Use any other design patterns you consider appropriate. You must produce PHP code but the methods of all classes must be empty. Ensure docblocks are present for each class, interface and method, documenting the purpose of the class or interface and the inputs and outputs of each method. TASK 2 (to choose) --------------------- Using the Laravel or Lumen framework, create a widget to display weather forecasts from, at least 2, different cities: 1. You will use an API to retrieve the forecasts from a weather forecast provider of your choice 2. You will provide a method for the user to select a city that they wish to have a forecast for 3. The widget will retrieve the forecast via a live api request and display the data TASK 3 (to choose) --------------------- Using the latest Laravel framework, we would like you to code a simple form. The form should be made up of the following: 1. A textbox 2. A send button The code should include: 1. A simple PHP class 2. Validation and error handling when the form is submitted a. The textbox should not be empty b. The text box should contain numbers only 3. A function to:a. Catch the data submitted b. Store the data in array format c. Save the array into a session
verdict : Not selected