Interview Questions
Interview Questions
Notes :
1. Before adding a question / category / software house, make sure your question / category
/ a software house does NOT already exist. And the questions also DO NOT exist
already.
2. Use the outline on the left to see if a company already exists.
3. Add question / category / software house according to the format (numbers etc)
4. When adding a new company, go to Styles and use “Heading 1” so that it appears in
outline on the left
Tintash
Interview Type:
Technical
Questions:
Analytical Skills:
• Given an N by N array, how would you iterate through all the elements using only one
loop and one variable.
• If you have to give grades like [80-100] = A, [70-80] = B, [50-70] = C, [30-50] = D, and
[<30] = F, what is the shortest possible program would you write using only a Switch
Statement (with as few cases as possible).
• Given a string of fractions separated by spaces, how would you return their sum in
fraction but with datatype of string. If input is “1 1/2 2/5“, then the output must be
“19/10”. Program must be clean and its complexity must be optimized.
• 25 Horses Problem. Details: https://mindyourdecisions.com/blog/2017/05/11/can-you-
solve-the-25-horses-puzzle-google-interview-question/
Data Structures:
• Can you find the middle node in a singly linked-list in single traversal only? Without
knowing size.
• How would you delete a node in linked-list if node pointer is given. Show working of
both singly and doubly linked-lists. Trick is to do it in O(1).
• How many stacks would you need to reverse content of a stack (answer must be in the
same stack)?
• Write code for expression validation. For example (1+3)*4.
Algorithms:
• Explain how you would choose between MergeSort and QuickSort when given dataset
with specific parameters (such as low memory, high processing power etc), which one is
efficient in what case.
• When you have a dataset that is almost sorted, meaning that most of its content is already
in order, which algorithm would work best to completely sort the data? (The answer was
surprisingly Bubble Sort and it would take O(n)).
• If we could find minimum and maximum from an array in O(1), can you devise a sorting
algorithm based on this approach. What will be its time complexity?
• Find the duplicates in an array in O(n) time complexity and O(1) space complexity.
Object Oriented Programming:
• What is inheritance, composition and aggregation, give real life examples of each.
• What is the difference between Encapsulation and Abstraction?
• How do constructors work? If I inherit a class A from B and C, which constructor will be
called first (and second) when I create an object of class A.
• How do copy constructors work? Why do we need them
• What are constant objects and can you change its attribute values?
• What is private inheritance?
Databases:
• If you are in charge of a grocery store, and you have to manage shares and profit of
suppliers while buying items (different for each category), and each item could belong to
multiple categories and each category could have multiple items, how would you design a
schema where we can easily calculate the shares/profits depending on categories. If
multiple categories overlap, then assume that the maximum share/profit will be
calculated.
• If you have a huge drawing board, how would you save all the drawings on it? You have
to store pixel values but the databases have limited storage in an entry (i.e varchar max
stores 256kb). Design schema and the approach you'd have to implement this.
• Find the number of occurrences of character ‘t’ from “Tintash”.
Web Related:
• What is the life-cycle of ReactJs components? What is Virtual-Dom? What are higher-
order components?
• What is the purpose of Redux? Try to explain how it makes State Management easier?
Does it affect speed? And what are its components?
• What are No-SQL databases? How many have you worked with and why are they
becoming popular?
• Javascript variables are immutable, meaning that if we copy a variable to another one,
then changing content of one updates the other. How do we avoid that?
Frag Games
Interview No.
1
Interview Type:
Technical
Questions:
1. In a game, there are two types of enemies, one who spits water and one who spits fire.
Implement both of their attack functions using the concepts of abstraction and demonstrate them
using polymorphism.
2. Write a function to see if two binary trees are mirrors of each other.
3. Write a function to reverse a binary tree.
4. Write a function which takes a string as parameter and returns the longest palindrome
from that string. You can use a helper function isPalindrome which you can assume is already
implemented that takes a string type as argument and returns Boolean.
5. Write FindAndReplace(int Number, int Find, int Replace). In the number e.g. 12345, you
have to first find a given number, e.g. 4 and then replace it with e.g. 6. The catch is that you are
NOT Allowed to use any data structure or typecasting.
6. Write a function to reverse a graph.
7. Write a function to check if a graph is a Tree or not.
8. Give examples of Composition and Aggregation.
9. Diamond Problem.
I2c Inc.
Interview No.
0
Interview Type:
Recruitment Drive
Questions:
o OOP concepts
o SQL query dry run (mostly with EXISTS, ANY, IN, UNIQUE, DISTINCT)
o SQL concepts (views etc)
o Queries with operators SQL supports like mod etc
o SE/ST related questions
o Basic terms and their full forms like XML, HTML etc
o About Java language (how machine code is converted to byte code), JVM etc
Interview No.
1
Interview Type:
HR assessment
Questions:
• Essay Writing
o What is your biggest goal in life? What is your biggest career goal? Are they
somehow related?
o What is your favorite personality trait?
o What is the biggest factor in your personality you are most proud of?
• IQ (26 MCQs) / EQ (2 sections ~15-20 MCQs)
Interview No.
2
Interview
Type:
Technical
Questions:
Code:
1. Get Second Max Number in array
2. Explain your understanding of Design Pattern, polymorphism and other OOP and OOAD
related concepts via code
Note: see VP interview for a few more
Conceptual Questions:
o Introduction
Ans: "Hi, I am ----. I am from lahore. I am doing bachelors in computer science from Punjab
university college of information technology.”it's a pleasure to meet you.
2nd ans: Hi, this is ----. I am basically from ---. We are 4 siblings. I am about a CS graduate from
FAST while turning 22 being a keen badminton player.
o FYP
o Difference between Soap and RESTful API
Answer: REST API has no has no official standard at all because it is an architectural style. SOAP
API, on the other hand, has an official standard because it is a protocol. REST APIs use multiple
standards like HTTP, JSON, URL, and XML while SOAP APIs are largely based on HTTP and
XML.
o What are some compile languages?
• C
• C++
• C# (to bytecode)
• COBOL
• Cobra
• Crystal
• Fortran
• Go
• Java (to bytecode)
o Kotlin
• JavaScript (to bytecode JIT)
• Mercury
o What is prototyping?
Prototypes help designers and developers build partial product implementations, which
potential end-users or customers use to provide feedback to the development team before
full-scale development begins.
comparison
nature
Structure Template class, C++ only Contiguous memory
construct location
o Anomalies in db.
Ans: Anomalies are problems that can occur in poorly planned, unnormalized databases where all
the data is stored in one table.
There are three types of Data Anomalies: Update Anomalies, Insertion Anomalies, and Deletion
Anomalies.
o SOLID principles
Ans: SOLID is an acronym for the five object-oriented design principles. These principles enable
developers to develop software that is easily extendable and maintainable. SOLID principles also
ensure that software can easily adapt to changing requirements.
Check this website:
S.O.L.I.D: The First 5 Principles of Object Oriented Design
Agile Waterfall
Ans: ACID (atomicity, consistency, isolation, durability) is a set of properties of database transactions
intended to guarantee validity even in the event of errors, power failures, etc.
o Familiarity with terminal instruction in Linux.
Ans: Launch a terminal from your desktop's application menu and you will see the bash
shell. There are other shells, but most Linux distributions use bash by default.
o How can you see running processes through a instruction in terminal? How can you quit a
process using a terminal instruction?
Ans: killall is a tool for terminating running processes on your system based on
name. In contrast, kill terminates processes based on Process ID number (PID).
kill and killall can also send specific system signals to processes.
In Unix and Unix-like operating systems, chmod is the command and system call which
is used to change the access permissions of file system objects (files and directories). It
is also used to change special mode flags. The request is filtered by the umask. The
name is an abbreviation of change mode.
o what is sprint?
Ans: Sprint is one timeboxed iteration of a continuous development cycle.
Interview No.
3
Interview Type:
HR
Questions:
• Intro?
• Fyp?
• Your role? If team leader what was the biggest challenge you faced?
• What you did in fyp 1 and then fyp 2?
• Your Hobbies? Question related to your hobbies?
• required pay?
• What companies have you applied at?
• What will you consider before joining a company?
• questions about family
• Introduction
• GPA
• Do you know what i2c does?
• Plans for further studies or moving abroad
Interview No.
4
Interview Type:
VP interview
Interview Type:
AI department
Questions:
• What are support vectors in SVMs
• Box plot, scatter plot, correlation, overfitting, imbalanced data, outlier detection, anomaly
detection, interquartile range, non-functional requirements of data science, fill missing
values, activation functions, loss function, why sigmoid is not good activation function
• Delete column in DB, SQL questions
• Software engineering questions like name software processes - agile etc.
Xavor
Interview No.
1
Interview Type:
Technical
Questions:
• Concepts of oop (Abstraction, encapsulation, polymorphism)
• Difference between interface and abstract class
• Dry running polymorphism code
• Static objects, methods
• Check if string is a palindrome
• Reverse a singly linked list
• Write singleton class code
• Imagine you start a company, what would be most important for you
• 8 balls problem, 1 is heavy; find in least number of tries
• 3 cups problem (https://www.glassdoor.com/Interview/There-are-three-boxes-one-
contains-only-apples-one-contains-only-oranges-and-one-contains-both-apples-and-
oranges-The-b-QTN_114922.htm)
• Database query with joins and aggregate functions
• Definition of join
• what is oop
• 4 pillars of oop
• tell about your fyp
• What is encapsulation? Do private and other identifiers play a role in encapsulation?
• What is polymorphism? Its types?
• What is inheritance? how is it different from encapsulation?
• What is a friend function?
• Give some examples of polymorphism from your surroundings.
• What is the interface?
• What is abstract class?What is pure abstract class?
• Difference between abstract and pure abstract class and interface?
• How to create only 1 instance of a class (singleton design pattern)
• About different design patterns.
• What is a singleton pattern? How is it different from a static function?
• Difference between shallow and deep copy.
• Difference between clustered and non-clustered index.
• Difference between drop and truncate.
• Difference between unique vs unique all query.
• What is stack? how do you remove and insert in stack ?
• What is queue ? how do you insert and remove from queue?
• Algorithm of removal of nodes from doubly linked list
• Normalization and its types
• Joins and its types
• What sort of animal are you?
• Would you prefer to work in a team or on a project which requires an individual only?
• Any chance of further studies?
• Missing Dollar Riddle : https://en.wikipedia.org/wiki/Missing_dollar_riddle
Interview No.
2
Interview Type:
VP interview
Questions:
• Introduce yourself
• prior experience details?
• Languages you are most comfortable with?
• What is life?
• Tell about your FYP
• your passion in CS?
• Witch, wand and broom puzzle
Interview No.
2
Interview Type:
AI team interview
Questions:
• Introduce your FYP
• Role of ML/DL in your FYP
• Which models are you using?
• What is GAN?
• Explain purpose of activation function?
• Explain convolutional process
• Parts of autoencoders
• Why are you using Deep Learning and not machine learning?
• Difference b/w random Forest and decision tree?
• How do you decide the top node in the decision tree?
• What is information gain?
• Several questions about CNN
SSI
Interview No.
1
Interview Type:
hr/managerial
Questions:
• Explain fyp
• Role in fyp
• Why is it not hot at the top of a mountain?
• What does ton in AC mean?
• Difference between coronavirus and Covid-19
• Your passions except for CS?
• Introduce yourself?
• What should be the end of PSL-V? (give trophy to table-toppers Multan or not and why)
• questions related to hobbies
• How and where you would invest 50,000 rupees to get maximum profit.
• Last book you read?
• If you have 100 Rupees how much amount would you have after 10 years with interest
of 10% per year
• Any field that gained advantage due to Corona outbreak (other than Medical)
• How much maximum score can be made in 10 Overs by a single player?
Ans: 9 (6*6*6*6*6*3) + 1 (6*6*6*6*6*6) = 333
Interview No.
2&3
Interview Type:
Technical
Questions:
• Explain fyp
• Role in fyp
• Technologies you are comfortable with
• Technologies you want to work in
• CV specific questions (want to work in front end frameworks? They will check what you
already know?)
• Polymorphism related examples
• How polymorphism works?
• What is Inheritance
• Write pseudo code to find sum of remaining items except current in O(n)
• What is indexing in db?
• Types of indexes?
• Which language are you more comfortable in? Language specific questions like if it is
python then they will ask how you manage OOP related concepts in python and how they
differ from C++ and Java
• Why use a hashmap / dictionary ?
• What databases have you worked with?
• What frameworks have you worked in?
• What algos do you know?
• Have you ever used binary search in real life?
• Check for balanced parentheses.
• How to reverse an Integer?
• Left/Right Outer Join.
• Difference between Stack and Queue.
• How will we make a Queue class? (vars and methods required)
Arbisoft
Interview No.
0
Questions:
(Next pages have images)
Interview No.
1
Interview Type:
Technical
Questions:
• What is Function overloading?
• What is inheritance, Polymorphism.
• Explain composition with example
• What is Function overriding?
• What Data Structure will you use to save images such that same images are close
together? Ans=> Hash map
• Is the address size of memory same?
• Copy constructor concept
• Deep copy and shallow copy difference?
• Quick sort vs merge sort
• Joins in database (diff. b/w inner join and outer join)
• Find out ball with diff. Weight out of 8 balls in max 3 tries. (8 or 9 balls, i don’t
remember the exact fig)
Uworx
Interview No.
1
Interview Type:
Technical
Questions:
• Asked questions about your test in their recruitment drive at FAST
• What is inheritance, Polymorphism. Abstraction?
• A lot of Question about Prototype Design pattern
• Singleton Design pattern along with Prototype. How would the structure be changed
now?
• Explain your FYP and your roll
Afiniti
Data Analyst
Questions which Senior Data Analyst (My interviewer) asked me were (1st Interview):
• What do I know about the role of a data analyst?
• How important is data analytics?
• What are my interests?
• Which tools do I use (including all the fields whether data analytics or others like web
designing, software development ky tools etc)
• My area of motivation in computer science and why it motivates me ?
• What I opt to learn and why? Like I told him I want to be better at pandas although I have
worked on it a little bit. The answer was very long but you get the gist of it.
• He told me about three domains which are of data visualization (communicating directly
with the client and dealing with graphical data), Data analytics and fundamentals of data
and asked me which one I will prefer or be comfortable working in?
• What do you know about Afiniti?
• Why did you choose Afiniti?
• What motivates you and why?
• Do you ever want to start your own startup?
• What did I learn from the university life I had and how it helped me?
• Most helpful course teacher
• Most helpful mentor
• Questions from my resume like some skills I had mentioned he asked me to justify
those.
• And the societies I took part in, how that helped?
• If I would want to travel abroad for my masters or for the sake of job
• Asked me if I have ever done freelance work. If yes what was it if no then why not?
• And I had uploaded some projects on GitHub and provided their links on my CV, he
asked to tell him the details of the most interesting project I have uploaded among all.
What makes it interesting, my effort towards it and how it helped my learning?
Interview with Head of Analytics Department (Mr. Yasir Zamir Ahmad). This was the
second technical interview I had.
Pentaloop
First Technical Interview
Coding Questions:
NOTE: stacks, queues, and hashmaps, etc are not allowed
1. Check if a character is in the string.
2. Check if the array contains anything other than the integers.
3. Insert an element in the middle of the Linked List (LL).
4. Find the 3rd last element in a LL.
5. Find the first non-repeating character in a string.
6. Merge 2 arrays, sorted in ascending order, in a descending order.
7. Find if the string contains balanced parentheses.
8. Find the 2nd largest integer in an array.
Questions on Analytical / CS concepts:
1. How will you code: Calculation of the angle between hour hand and minute hand?
2. How will you check if a given number is in the power of 2 in programming without using
maths' log function?
3. Swap two variables without using the third.
4. Types of Polymorphism.
5. Types of Association in OOAD.
6. An array of million integers are given, integers are in the range of 0-9, can it be sorted in
O(n)?
Others
1. About FYP?
2. Fields interested in / Preferences?
3. Any job offers yet?
Here are some pointers those will help you prepare for the Zameen tech interview.
Screening
For screening, we use HackerRank or a similar platform. Here are some quick tips to clear this
phase.
• Practice, practice, practice. If you can solve medium level problems on HackerRank,
then you should clear our screening.
• The primary objective is to solve a problem(s) efficiently. It need not be the most efficient
solution. However, where an O(n log n) solution is possible with a \\bit of thinking, don’t
settle on O(n2 ).
• The secondary objective is code readability and maintainability. Once you have solved a
problem, take some time to clean it up and make it concise.
Our recommendation is to use the same language at the screening that you intend to use in the
main interview later. Use the language that you have the best mastery of. Be aware of general
good practices associated with your favorite programming language.
Main Interview
Our colleagues in SectorLabs will conduct the main technical interview. It has three parts.
Problem Solving
First, there will be a live coding session to solve a problem on your local IDE with screen
sharing. Try thinking out loud to engage the interviewers, and explain your thought process and
reasoning.
If you can think of multiple solutions, talk about them before jumping in. Work your way up from
trivial to an optimal solution, and don’t forget to address time and space complexities at each
level.
Code Review
You’ll be given a piece of code to review. You may not clear this phase if you have an ad hoc
approach to code reviews.
System Design
You are being interviewed for a team that is working on a database driven business app which
can potentially have a few thousand concurrent users. Your system design skills should be
reasonable for such a level of scale.
You should be able to work through a system design problem progressively, as more
constraints are being added. You’ll be required to talk about design tradeoffs as well as pros
and cons of different approaches about a specific design problem
FYP
semester projects(CV)
Inheritance
Polymorphism
Class vs object
diff bt hiding and abstraction
types of DSA
factorial using recursion
palindrome all methods and solve using optimized method
tree traversal(a diagram was given)
Class vs struct
why normalization
advantages of normalization
what is indexing and disadvantages
which sorting algorithm is best suited for integers array
TrimusLabs
Balancing Parentheses:
(on next pages)
Fibonacci:
(on next page)
Filtering Strings:
CUREMD
Rolustech
Technical Test:
Duration: 2 hours
Notes:
· Don’t spend too much time on non-technical questions or you will run out of time
· For coding preparation, solve HackerRank’s SQL and DSA questions. (All ‘Easy’
ones and few ‘Medium’ ones)
· While preparation, don’t just read solutions, practice and solve problems yourself!
Technical Interview #1
Interviewer: Mr. Abdul Rauf
· Don’t stay too quiet in front of the interviewer. Keep sharing your thoughts about
the problem, while also taking reasonable pauses to think clearly
· A significant portion of this interview was based on the tech stack mentioned on
my resume (e.g. Javascript in my case), therefore, be prepared for what you have
written on your resumes
· If nothing comes in mind, don’t feel shy from asking for a hint/suggestion from the
interviewer
Technical Interview #2
Interviewer: Mr. Adnan Nasir
Answer:
· This question can have multiple answers, however, some accepted
answers from my long discussion with the interviewer are: Overall,
MVC could be used. There will be two views (mobile and tablet). Each
users’ data will be stored in their own objects offline. Upon the device
getting online, a trigger would send all the objects’ data to server in the
correct order. Hence, data will remain consistent. This step could be
done at the layer that implements the backend that is the interface
between Controller and Model. Different interfaces would handle the
data sending to different databases. There shouldn’t be any change in
Controller code if database is changed.
· I also explained how data will flow through MVC in this case (2
views, 1 controller, N interfaces, N models)
5. There is a meeting scheduler system. A meeting has multiple
attributes: datetime, person, location etc. One meeting can be
repeated. It can also be set to forever (every day/week/year). The
meeting data is stored in a table ‘Meeting’.
a. How would you handle the repeated occurrences of the
same meeting?
b. How would you handle infinite occurrences of the same
meeting?
Answer:
· Again, this has no fixed answer. My accepted answers were:
Meeting data would be stored in the ‘Meeting’ table. However, if same
meeting is repeated, that meeting reference would be stored in other
table ‘Repeated Meetings’ via Foreign Key with 1:1 relation. The
reference record will store also occurrences as a field/attribute. If same
meeting is scheduled 3 times, the occurrences value will be 3 and so
on (With logic, we can determine the next days). If a meeting is
scheduled for forever, the occurrences value will be ‘-1’ (or any other
that can act as a flag for infinite)
6. You have to develop an app for nurses that have to cater multiple
patients. The main feature should be to allow nurses to get
notification when a patient be checked by another nurse, so other
nurses don’t attend to that patient.
a. Who should have the patient’s data? The doctor? The
nurses? The patient?
b. How would the stack of patient records be maintained
in different branches of the hospital? How would a doctor
receive the latest patient’s info from the nurses?
c. How would you design the DB for this app?
d. How would you implement the notification system?
e. How would a device receive notification if its offline?
Answer:
· This one took the longest time. Multiple examples and scenarios
were given with the same problem/system. Some accepted answers:
In real life, the patient’s data shouldn’t be with nurses as it can cause
consistency issues if multiple nurses cater the same patient. The data
should be with patient himself (e.g. a patient brings his own medical
report during checkup). In DB, there will be multiple tables. e.g.
Patient, Nurses, etc. The Patient data will get updated upon having
checked with a nurses. The other nurses will receive notification of
patient’s change of data
Final Interview
Interviewer: Mr. Hammad Hassan
2. What is polymorphism and why do we need it? (“The reason why you
use polymorphism is when you build generic frameworks that take a whole
bunch of different objects with the same interface. When you create a new
type of object, you don't need to change the framework to accommodate
the new object type, as long as it follows the "rules" of the object.” -
Source)
4. Write a code to delete a node from linked list in constant time given the
node’s reference.
5. Your team has been working for nine months for a client. On last
month, a team member forgets to commit the three weeks’ worth of code
and loses that code as well.
a. Whose fault is this? (Team’s fault. The team should have
kept the commits of each other in check. And should have
given reminder to the team member who wasn’t committing.)
b. How would you deal with client? Would you lie to him? (No
fixed answer. Accepted answers and suggestions by
interviewer: Don’t blame anyone. Have a discussion with client
right away about impact of loss, recovery time, extended
deadline etc. Be honest with client but don’t share too much
about the mistake. If he is reasonable he would understand, if
he is not – truth or not, nothing would work. Have a team
discussion, devise a plan for recoding, and don’t repeat the
same mistake again.)
Notes:
· Always ask questions from the interviewer. It gives you insight about
the company and the people you will potentially work with/under. It also
shows your interest in the company and tells about your personality.
Coding Challenge:
Duration: 30 mins
It was a database related challenge. A database of songs was given in PhpMyAdmin
and a single MySQL query had to be written to obtain data from multiple tables. The
query involved multiple joins and a subquery. The data required was Song Title,
Uploaded By, Latest Comment, Upload Date and Average Rating. The data also
needed to be ordered by multiple fields.
Notes:
· Practice SQL Join and Group By questions on HackerRank (Easy and
few Medium) and SQLZOO (or others)
· Understand the given database properly before attempting the query
· Do handle the empty fields in the result!