Open In App

KPMG Interview Questions and Answers for Technical Profiles

Last Updated : 20 Oct, 2023
Improve
Improve
Like Article
Like
Save
Share
Report

KPMG is one of the Big Four accounting firms, and it offers a variety of technical roles in areas such as auditing, tax, consulting, and technology. KPMG interviews for technical profiles can be challenging, but with the right preparation, you can increase your chances of success.

This article provides a comprehensive list of common technical interview questions and answers. By reviewing this information, you can gain a better understanding of what to expect and be well-prepared to answer any questions that the interviewer may ask.

1. Difference between Primary Key and Foreign Key

  • A primary key is used to ensure that data in the specific column is unique. A column cannot have NULL values. It is either an existing table column or a column that is specifically generated by the database according to a defined sequence.
  • A foreign key is a column or group of columns in a relational database table that provides a link between data in two tables. It is a column (or columns) that references a column (most often the primary key) of another table.

PRIMARY KEY

FOREIGN KEY

Primary key is used to ensure data in the specific column is unique. Foreign key is a column or group of columns in a relational database table that provides a link between data in two tables.
It uniquely identifies a record in the relational database table. It refers to the field in a table which is the primary key of another table.
Only one primary key is allowed in a table. Whereas more than one foreign key is allowed in a table.
It is a combination of UNIQUE and Not Null constraints. It can contain duplicate values and a table in a relational database.
It does not allow NULL values. It can also contain NULL values.
Its value cannot be deleted from the parent table. Its value can be deleted from the child table.

2. Difference between 3NF and BCNF in DBMS

  • Third Normal Form (3NF): A relation is said to be in Third Normal Form (3NF), if it is in 2NF and when no non-key attribute is transitively dependent on the primary key.
  • Boyce-Codd Normal Form (BCNF): BCNF stands for Boyce-Codd normal form and was made by R.F Boyce and E.F Codd in 1974.A functional dependency is said to be in BCNF if these properties hold.

3NF

BCNF

3NF stands for Third Normal Form. BCNF stands for Boyce Codd Normal Form.
In 3NF there should be no transitive dependency that is no nonprime attribute should be transitively dependent on the candidate key. In BCNF for any relation, A->B, A should be a super key of the relation.
It is less strong than BCNF. It is comparatively more stronger than 3NF.
In 3NF the functional dependencies are already in 1NF and 2NF. In BCNF the functional dependencies are already in 1NF, 2NF, and 3NF.
The redundancy is high in 3NF. The redundancy is comparatively low in BCNF.

3. What is RDBMS?
RDBMS stands for Relational Database Management Systems. It is basically a program that allows us to create, delete, and update a relational database. A Relational Database is a database system that stores and retrieves data in a tabular format organized in the form of rows and columns.

4. What are the differences between DDL, DML, and DCL in SQL?
DDL stands for Data Definition Language. SQL queries like CREATE, ALTER, DROP, TRUNCATE, and RENAME come under this. 
DML stands for Data Manipulation Language. SQL queries like SELECT, INSERT, DELETE, and UPDATE come under this. 
DCL stands for Data Control Language. SQL queries like GRANT and REVOKE come under this. 

5. What is Denormalization?
Denormalization is a database optimization technique in which we add redundant data to one or more tables.

6. Explain the concept of ACID properties in DBMS
ACID properties are the four key characteristics that define the reliability and consistency of a transaction in a Database Management System (DBMS). The acronym ACID stands for Atomicity, Consistency, Isolation, and Durability. Here is a brief description of each of these properties:

  1. Atomicity: Atomicity ensures that a transaction is treated as a single, indivisible unit of work. Either all the operations within the transaction are completed successfully, or none of them are. If any part of the transaction fails, the entire transaction is rolled back to its original state, ensuring data consistency and integrity.
  2. Consistency: Consistency ensures that a transaction takes the database from one consistent state to another consistent state. The database is in a consistent state both before and after the transaction is executed. Constraints, such as unique keys and foreign keys, must be maintained to ensure data consistency.
  3. Isolation: Isolation ensures that multiple transactions can execute concurrently without interfering with each other. Each transaction must be isolated from other transactions until it is completed. This isolation prevents dirty reads, non-repeatable reads, and phantom reads.
  4. Durability: Durability ensures that once a transaction is committed, its changes are permanent and will survive any subsequent system failures. The transaction’s changes are saved to the database permanently, and even if the system crashes, the changes remain intact and can be recovered.

7. What is the E-R model in the DBMS?
The Entity Relational Model is a model for identifying entities to be represented in the database and representation of how those entities are related. The ER data model specifies enterprise schema that represents the overall logical structure of a database graphically. 

8. What is a Trigger?
A trigger is a stored procedure in a database that automatically invokes whenever a special event in the database occurs. For example, a trigger can be invoked when a row is inserted into a specified table or when specific table columns are updated in simple words a trigger is a collection of SQL statements with particular names that are stored in system memory. It belongs to a specific class of stored procedures that are automatically invoked in response to database server events. Every trigger has a table attached to it.

9. Difference between DELETE, DROP, and TRUNCATE

DELETE : 

Basically, it is a Data Manipulation Language Command (DML). It is used to delete one or more tuples of a table. With the help of the “DELETE” command, we can either delete all the rows in one go or can delete rows one by one.

  • Syntax: 
    If we want to delete all the rows of the table:
DELETE from;

  • Syntax: 
    If we want to delete the row of the table as per the condition then we use the WHERE clause,
DELETE FROM table_name WHERE condition; 

Note: Here we can use the “ROLLBACK” command to restore the tuple because it does not auto-commit.
 

DROP:

It is a Data Definition Language Command (DDL). It is used to drop the whole table. With the help of the “DROP” command we can drop (delete) the whole structure in one go i.e. it removes the named elements of the schema.

  • Syntax: 
    If we want to drop the table:
DROP table <table_name>;

Note: Here we can’t restore the table by using the “ROLLBACK” command because it auto-commits.

TRUNCATE:

It is also a Data Definition Language Command (DDL). It is used to delete all the rows of a relation (table) in one go. With the help of the “TRUNCATE” command, we can’t delete the single row as here WHERE clause is not used. 

  • Syntax: 
    If we want to use truncate :
TRUNCATE table <table_name>;

Note: Here we can’t restore the tuples of the table by using the “ROLLBACK” command.

10. What is Data Warehousing?
A Data Warehouse is separate from DBMS, it stores a huge amount of data, which is typically collected from multiple heterogeneous sources like files, DBMS, etc. The goal is to produce statistical results that may help in decision-making. For example, a college might want to see quick different results, like how the placement of CS students has improved over the last 10 years, in terms of salaries, counts, etc. 

11. What is Inheritance? What is its purpose?
The idea of inheritance is simple, a class is derived from another class and uses data and implementation of that other class. The class which is derived is called child or derived or subclass and the class from which the child class is derived is called parent or base or superclass.

12. What are the advantages and disadvantages of OOPs?

Advantages of OOPs

Disadvantages of OOPs

OOPs provides enhanced code reusability.  The programmer should be well-skilled and should have excellent thinking in terms of objects as everything is treated as an object in OOPs.
The code is easier to maintain and update. Proper planning is required because OOPs is a little bit tricky.
It provides better data security by restricting data access and avoiding unnecessary exposure. OOPs concept is not suitable for all kinds of problems.
Fast to implement and easy to redesign resulting in minimizing the complexity of an overall program. The length of the programs is much larger in comparison to the procedural approach.

13. What are the different types of Polymorphism?
Polymorphism can be classified into two types based on the time when the call to the object or function is resolved. They are as follows:

  1. Compile Time Polymorphism
  2. Runtime Polymorphism
  • Compile-Time PolymorphismCompile time polymorphism, also known as static polymorphism or early binding is the type of polymorphism where the binding of the call to its code is done at the compile time. Method overloading or operator overloading are examples of compile-time polymorphism.
  • Runtime PolymorphismAlso known as dynamic polymorphism or late binding, runtime polymorphism is the type of polymorphism where the actual implementation of the function is determined during the runtime or execution. Method overriding is an example of this method.

14. What is a Constructor?
A constructor is a block of code that initializes the newly created object. A constructor resembles an instance method but it’s not a method as it doesn’t have a return type. It generally is the method having the same name as the class but in some languages, it might differ. For example:

In Python, a constructor is named __init__. 

In C++ and Java, the constructor is named the same as the class name.

15. Difference between virtual function and pure virtual function in C++

  • Virtual Function in C++: A virtual function is a member function which is declared within a base class and is re-defined(Overridden) by a derived class. When you refer to a derived class object using a pointer or a reference to the base class, you can call a virtual function for that object and execute the derived class’s version of the function.
  • Pure Virtual Functions in C++</span>: A pure virtual function (or abstract function) in C++ is a virtual function for which we don’t have an implementation, we only declare it. A pure virtual function is declared by assigning 0 in the declaration.

16. What is a copy constructor?
A copy constructor is a member function that initializes an object using another object of the same class. In simple terms, a constructor which creates an object by initializing it with an object of the same class, which has been created previously is known as a copy constructor.  

17 What are access specifiers?

There are 3 types of access modifiers available in C++:

  • Public
  • Private
  • Protected

Public: All the class members declared under the public specifier will be available to everyone.
Private: The class members declared as private can be accessed only by the member functions inside the class.
Protected: The protected access modifier is similar to the private access modifier in the sense that it can’t be accessed outside of its class unless with the help of a friend class.

18. What is a kernel?
The kernel is a central component of an operating system that manages the operations of a computer and hardware. It basically manages operations of memory and CPU time. It is a core component of an operating system. Kernel acts as a bridge between applications and data processing performed at the hardware level using inter-process communication and system calls.

19. Difference between Multitasking and Multiprocessing

Multi-tasking

Multiprocessing

The execution of more than one task simultaneously is known as multitasking. The availability of more than one processor per system, that can execute several set of instructions in parallel is known as multiprocessing.
The number of CPUs is one. The number of CPUs is more than one.
It takes a moderate amount of time. It takes a moderate amount of time.
In this, one by one job is being executed at a time. In this, more than one process can be executed at a time.
It is economical. It is less economical.

20. What is the difference between process and thread?

Process

Thread

Process means any program is in execution. Thread means a segment of a process.
The process is less efficient in terms of communication. Thread is more efficient in terms of communication.
The process is isolated. Threads share memory.
The process is called heavyweight the process. Thread is called lightweight process.
Process switching uses, another process interface in the operating system. Thread switching does not require to call an operating system and cause an interrupt to the kernel.

21. What is a Banker’s algorithm?
The banker’s algorithm is a resource allocation and deadlock avoidance algorithm that tests for safety by simulating the allocation for the predetermined maximum possible amounts of all resources, then makes an “s-state” check to test for possible activities, before deciding whether allocation should be allowed to continue.

22. What is a deadlock?
Deadlock is a situation when two or more processes wait for each other to finish and none of them ever finish.  Consider an example when two trains are coming toward each other on the same track and there is only one track, none of the trains can move once they are in front of each other.

23. Write a difference between paging and segmentation.

Paging

Segmentation

In paging, the program is divided into fixed or mounted-size pages. In segmentation, the program is divided into variable-size sections.
The paging operating system is accountable. For segmentation compiler is accountable.
Page size is determined by hardware. Here, the section size is given by the user.
It is faster in comparison of segmentation. Segmentation is slow.
Paging could result in internal fragmentation. Segmentation could result in external fragmentation.

24. What is spooling?
Spooling refers to simultaneous peripheral operations online, spooling refers to putting jobs in a buffer, a special area in memory, or on a disk where a device can access them when it is ready. Spooling is useful because devices access data at different rates.

25. What is Thrashing? 
Thrashing is a situation when the performance of a computer degrades or collapses. Thrashing occurs when a system spends more time processing page faults than executing transactions. While processing page faults is necessary in order to appreciate the benefits of virtual memory, thrashing has a negative effect on the system.

26. Program for array left rotation by d positions.
After rotating d positions to the left, the first d elements become the last d elements of the array

 
  • First store the elements from index d to N-1 into the temp array.
  • Then store the first d elements of the original array into the temp array.
  • Copy back the elements of the temp array into the original array

27. Merge two sorted linked lists
The idea is to use a temporary dummy node as the start of the result list. The pointer Tail always points to the last node in the result list, so appending new nodes is easy.

28. What is a VPN?
VPN stands for the virtual private network. A virtual private network (VPN) is a technology that creates a safe and encrypted connection over a less secure network, such as the Internet. A Virtual Private Network is a way to extend a private network using a public network such as the Internet.

29. What is IP Spoofing?
IP Spoofing is essentially a technique used by hackers to gain unauthorized access to Computers. Concepts of IP Spoofing were initially discussed in academic circles as early as 1980. IP Spoofing types of attacks have been known to Security experts on the theoretical level. It was primarily theoretical until Robert Morris discovered a security weakness in the TCP protocol known as sequence prediction.

30. What is the difference between Bluetooth and wifi? 

Bluetooth

Wifi

Bluetooth has no full form. While Wifi stands for Wireless Fidelity.
It requires a Bluetooth adapter on all devices for connectivity. Whereas it requires a wireless adapter Bluetooth for all devices and a wireless router for connectivity.
Bluetooth consumes low power. while it consumes high power.
The security of BlueTooth is less in comparison to the number of wifi. While it provides better security than BlueTooth.
Bluetooth is less flexible means these limited users are supported. Whereas wifi supports a large number of users.

31. Differences between IPv4 and IPv6

IPv4

IPv6

IPv4 has a 32-bit address length IPv6 has a 128-bit address length
It Supports Manual and DHCP address configuration It supports Auto and renumbering address configuration
In IPv4 end to end, connection integrity is Unachievable In IPv6 end-to-end, connection integrity is Achievable
It can generate 4.29×109 address space The address space of IPv6 is quite large it can produce 3.4×1038 address space
The Security feature is dependent on the application IPSEC is an inbuilt security feature in the IPv6 protocol
Address representation of IPv4 is in decimal Address Representation of IPv6 is in hexadecimal

32. What is LAN? Local Area Network
Local Area Network (LAN) is a collection of computers and other devices that are connected together over a network and are all in the same location within a building like an office or home.

33. What are Firewalls?
A firewall is a network security device, either hardware or software-based, which monitors all incoming and outgoing traffic and based on a defined set of security rules it accepts, rejects or drops that specific traffic. Accept: allow the traffic Reject: block the traffic but reply with an “unreachable error” Drop: block the traffic with no reply A firewall establishes a barrier between secured internal networks and outside untrusted networks, such as the Internet

34. What is Ping?
Ping (Packet Internet Groper) is a method for determining communication latency between two networks. Simply put, ping is a method of determining latency or the amount of time it takes for data to travel between two devices or across a network. As communication latency decreases, communication effectiveness improves.

35. What is the OSI Model? – Layers of OSI Model
The OSI model, created in 1984 by ISO, is a reference framework that explains the process of transmitting data between computers. It is divided into seven layers that work together to carry out specialised network functions, allowing for a more systematic approach to networking.
What are the 7 layers of the OSI Model?

The OSI model consists of seven abstraction layers arranged in a top-down order:

  1. Physical Layer
  2. Data Link Layer
  3. Network Layer
  4. Transport Layer
  5. Session Layer
  6. Presentation Layer
  7. Application Layer

     

P.S: To check the KPMG Experiences and other asked question go through the attached link.



Like Article
Suggest improvement
Previous
Next
Share your thoughts in the comments

Similar Reads