Interview questions for Infosys
1. What is SDLC?
Software Development Life Cycle (SDLC) is an end to end process that defines the flow of the development of a project from requirements stage to the maintenance and support stage. The stages in SDLC are requirements analysis, planning, definition, design, development, testing, deployment, and support (maintenance).
Do you know what is waterfall model? (experienced candidates)
Just like waterfalls from top to bottom, this approach follows breaking down of project activities into different phases. Once a stage is completed, the next stage in the sequence is followed. Each stage is dependent on the result of the previous stage.
2. Which is the most popular SDLC model? (experienced candidates)
One of them is the waterfall model. The other is AGILE which is gaining more popularity now because of its continuous iteration methodology that is less prone to errors during production environment.
The interviewer may ask you differences between agile and waterfall models,
Give examples of data structures in C++.
Answer: There are two types of data structures in C++ ? linear and nonlinear.
• Linear – data elements are stored in sequence. Example, stack, queue and linked list.
• Non-linear – tree and graph that are not stored in sequential manner.
Tell me one disadvantage of using C++.
There is no built-in support for threads. If they ask more, you can say it doesn’t support garbage collection.
What is friend function/class?
• Friend function – if a function is marked as a ‘friend’ of a particular class, it can access the protected and private members of the class.
• Friend class – same as function, if a class is marked as friend of another class, it can access the protected and private members of that class.
3. What you mean by Object Relational DBMS?
An object-relational database (ORD),or object-relational database management system (ORDBMS),is a database management system (DBMS) similar to a relational database, but with an object-oriented database model: objects, classes and inheritance are directly supported in database schemas and in the query language. In addition, just as with proper relational systems, it supports extension of the data model with custom data-types and methods.
4. What is the difference between stack and heap memory?
• JRE uses it to allocate memory for objects and JRE classes.
• Garbage collection is done on heap memory
• Objects created on heap are accessible globally.
• Short term references like the current thread of execution
• References to heap objects are stored in stack
• When a method is called, a new memory block is created. Once the method gets executed, the block is used by the next program.
Stack memory size is smaller compared to heap memory.
5. Structural difference between bitmap and b-tree index ?
It is made of branch nodes and leaf nodes. Branch nodes holds prefix key value along with the link to the leaf node. The leaf node in turn contains the indexed value and rowed.
It simply consists of bits for every single distinct value. It uses a string of bits to quickly locate rows in a table. Used to index low cardinality columns.
6.what is database Schema?
The formal definition of database schema is a set of formulas (sentences) called integrity constraints imposed on a database.
7.what are the different levels of database schema?
Conceptual schema- a map of concepts and their relationships.
Logical schema- a map of entities and their attributes and relations
Physical schema- a particular implementation of a logical schema
Schema object- Oracle database object
8. What are your career options right now?
Right now, my career option is to get placed in a reputed company like yours where I would enrich my professional skills and contribute myself to the growth of the company.
9. Explain how would be an asset to this organization?
Sir, with all respect, I am not going to present myself as being the perfect candidate for your organization, because we are all human beings and we are not expressions of perfection, but what I am going to tell you is that I am a passionate person who works hard to make his presence worth. I am sure there might be things that I don’t know how to accomplish, but I am eager to learn and do my best.
10. What are your outside interests?
My outside interest is playing outdoor games and reading novels.
What was the toughest decision you ever had to make?
Sir, taking decisions are not tough, the tough is to move with that decision and in the same way once we take the decision even though it’s tough. It seems like an easy decision only.
11. Have you considered starting your own business?
No. I haven’t. But don’t you think this is also a kind of business venture. I am willing to sell my skills through service and will be paid.
12. How do you define success and how do you measure up to your own definition?
For me, success is making an improvement in all field compared to the past. Whether that field is my parent’s happiness, my skill, knowledge or my satisfaction in life. Because for me success is a journey and not a destination.
13.What is the difference between an EXE and a DLL?
The term EXE is a shortened version of the word executable as it identifies the file as a program. On the other hand, DLL stands for Dynamic Link Library, which commonly contains functions and procedures that can be used by other programs.
14. How can u increase the heap size in the memory?
If heap size set too low then you will get “out of memory” errors. If you set it too high then your system will hang or you will suffer poor performance because parts of the jvm will be swapped in and out of memory. A rule of thumb is that you should not set this parameter larger than about 80% of your free physical memory. On Windows XP machines you can determine your free physical memory from the Performance tab of the Task Manager application.
Boosting the heap size parameter will allow you to read in larger file-based projects. It will also improve the performance of the database back-end since more memory is available for caching.In Java Set the maximum heap size, using the -Xmx command-line option, to a value that allows the application to run with 70% occupancy of the Java heap.The Java heap occupancy often varies over time as the load applied to the application varies. For applications where occupancy varies, set the maximum Java heap size so that there is 70% occupancy at the highest point, and set the minimum heap size, using the -Xms command line option, so that the Java heap is 40% occupied at its lowest memory usage. If these values are set, the Java memory management algortihms can modify the heap size over time according to the application load, while maintaining usage in the optimal area of between 40% and 70% occupancy.