Nokia interview questions

173 questions from 22 interviews · updated from reports 2017-2024

Practise Nokia-style

About

Nokia is a Finnish telecommunications company that provides network equipment, software, and services for mobile, fixed, and cloud networks. In India, it is known to hire interns, Graduate Engineer Trainees, Grade-6 Engineer GETs, and engineers in software, testing, network, and R&D roles.

The roles that come up most are Intern, Graduate Engineer Trainee and Grade-6 Engineer GET. This covers 22 candidate interviews reported from 2017 to 2024. Most sat it at entry level (14 of 22 that recorded a level), with 8 internship interviews alongside. Among the 16 that recorded either route, arrivals split between campus drives (13, 81%) and off-campus applications (3, 19%). Most questions fall under CS fundamentals and DSA.

Category
Difficulty
Round

Interview questions

Q. Explain the memory layout of a C program

asked 2xmediumMemory layoutTechnical2021

Ans. C++ program memory is commonly divided into code, static data, heap and stack areas. Code stores instructions, static data stores globals and static variables, including zero-initialised data. The stack holds function calls and local automatic variables. The heap holds dynamically allocated objects. The key detail is lifetime: stack objects end automatically, heap objects must be managed.

Q. Explain Object-Oriented Programming (OOP) concepts

asked 2xeasyOOPTechnical2021-2023

Ans. Object-Oriented Programming models software as objects that combine data and behaviour. The main concepts are encapsulation, which hides internal state; abstraction, which exposes only needed details; inheritance, which reuses and extends existing classes; and polymorphism, which lets different objects respond to the same interface in their own way.

Q. Find the diameter of a binary tree.

asked 1xmediumTreesTechnical2020

Ans. Use a postorder DFS that returns the height of each subtree and updates a global maximum diameter at every node. For each node, the longest path through it is left height plus right height, measured in edges. Visit each node once, so the time complexity is O(n), with O(h) recursion stack space.

Q. What is the diamond problem in C++?

asked 1xmediumOOPTechnical2021

Ans. The diamond problem in C++ happens when a class inherits from two classes that both inherit from the same base class. The final derived class can contain two separate copies of the base, causing ambiguity when accessing base members. The usual fix is virtual inheritance, which shares one common base subobject.

Q. Explain all the normal forms in DBMS.

asked 1xmediumDBMSManagerial2020

Ans. Normal forms are rules for reducing redundancy and update anomalies in relational tables. 1NF requires atomic values; 2NF removes partial dependency on part of a composite key; 3NF removes transitive dependency; BCNF makes every determinant a candidate key; 4NF removes independent multivalued dependencies; 5NF removes join dependencies so decompositions are lossless.

Q. Explain deadlock in operating systems.

asked 1xmediumOperating systemsTechnical2020

Ans. Deadlock is a state where two or more processes are permanently blocked because each is waiting for a resource held by another process. The key point is that none can continue without external intervention. It typically requires mutual exclusion, hold and wait, no preemption, and circular wait to occur.

Q. Implement a linked list using C or C++.

asked 1xmediumLinked listsTechnical2024

Ans. Use a node structure with data and a pointer to the next node, and keep a head pointer to the first node. Insert by relinking pointers, delete by finding the previous node and bypassing the target, and traverse by following next pointers. Search, traversal, and deletion by value are linear time; head insertion is constant time.

Q. What is the Spanning Tree Protocol (STP)?

asked 1xmediumNetworkingTechnical2020

Ans. Spanning Tree Protocol is a Layer 2 protocol that prevents switching loops by creating a loop-free logical topology over a network with redundant links. Switches exchange BPDUs, elect a root bridge, choose the best paths towards it, and place some ports into blocking state so backups exist without forwarding loops.

Q. How do routers route packets in a network?

asked 1xmediumNetworkingTechnical2020

Ans. Routers route packets by reading the destination IP address and choosing the best matching entry in their routing table. The key detail is longest prefix match, which selects the most specific route. The router then forwards the packet to the next hop or outgoing interface, decrementing TTL and dropping it if no route exists.

Q. Write code to detect a loop in a linked list.

asked 1xmediumLinked listsTechnical2019

Ans. Use Floyd’s cycle detection with two pointers, slow and fast, starting at the head. Move slow one node at a time and fast two nodes at a time. If they ever meet, there is a loop. If fast reaches null, there is no loop. This runs in O(n) time and O(1) space.

Q. Answer in-depth questions on computer networks

asked 1xmediumNetworkingTechnical2021

Ans. I explain networks by tracing what happens when a client contacts a server: DNS resolves the name, TCP or UDP carries data, TLS may secure it, and routers forward packets using IP. The key detail is separating layers: application protocols define meaning, transport handles delivery behaviour, and network links move packets hop by hop.

Q. Print output without using the println function

asked 1xmediumOOPTechnical2020

Ans. Use the standard output stream’s print, printf, or write method instead of println. The key difference is that println appends a newline automatically, while print does not, so add a newline character manually if needed. In Java, this still writes to console output through System.out.

Q. Explain process scheduling in an operating system.

asked 1xmediumOperating systemsTechnical2019

Ans. Process scheduling is how an operating system chooses which ready process gets the CPU next and for how long. The scheduler maintains queues of runnable processes and applies a policy such as priority, round robin, or shortest job first. Its key goal is to balance CPU utilisation, responsiveness, fairness, and throughput while minimising context-switch overhead.

Q. Give an example of inheritance in C++ (write code)

asked 1xmediumOOPTechnical2021

Ans. A simple example is a Dog class inheriting from an Animal class, where Animal defines shared behaviour like eat, and Dog adds specific behaviour like bark. In C++, this is usually public inheritance. The object layout stores the base part inside the derived object. Calling methods is constant time, apart from virtual dispatch overhead.

Q. Design a simple database schema for a given use case

asked 1xmediumDBMSTechnical2024

Ans. I would identify the main entities, their attributes, and relationships, then create normalised tables with primary keys, foreign keys, constraints, and indexes. For example, in an ordering system I would use Customers, Orders, OrderItems, and Products, where OrderItems links orders to products and stores quantity and price at purchase time.

Q. Minimize the maximum difference between the heights.

asked 1xmediumGreedyOnline test2020

Ans. Sort the heights, then consider each adjacent split where smaller elements are increased by k and larger elements are decreased by k. Keep the minimum possible difference between the current maximum and minimum. The key detail is to ignore negative adjusted heights if heights cannot be negative. Use sorting only. Time complexity is O(n log n).

Q. Explain the OSI model and the function of each layer.

asked 1xmediumNetworkingTechnical2024

Ans. The OSI model is a seven-layer framework for network communication: physical sends bits, data link frames local traffic, network routes packets, transport provides end-to-end delivery, session manages connections, presentation formats and encrypts data, and application supports user-facing protocols. The key idea is separation of responsibilities, making networks easier to design, debug, and standardise.

Q. Explain deadlock in an operating system with examples.

asked 1xmediumOperating systemsTechnical2019

Ans. Deadlock is a state where two or more processes are blocked forever because each is waiting for a resource held by another. For example, process A holds a printer and waits for a file lock, while process B holds the file lock and waits for the printer. It requires circular waiting and no forced release.

Q. Find the intersection point of two singly linked lists.

asked 1xmediumLinked listsTechnical2024

Ans. Use two pointers, one starting at each list head, and advance both one node at a time. When a pointer reaches the end, redirect it to the other list’s head. If the lists intersect, the pointers meet at the shared node; otherwise both become null. This takes O(m+n) time and O(1) space.

Q. What is normalization? Explain Second Normal Form (2NF).

asked 1xmediumDBMSTechnical2019

Ans. Normalization is the process of organising database tables to reduce redundancy and avoid update, insert, and delete anomalies. Second Normal Form means a table is in First Normal Form and every non-key attribute depends on the whole primary key, not just part of a composite key. This mainly matters for tables with composite keys.

Q. Explain dynamic memory allocation in C and how it is done

asked 1xmediumMemory managementTechnical2021

Ans. Dynamic memory allocation in C means requesting memory at run time from the heap, rather than using fixed-size stack variables. It is done with malloc, calloc, and realloc from stdlib.h, which return a pointer to the allocated block. Always check for NULL, use sizeof correctly, and release memory with free.

Q. Sort the elements of an array by frequency of occurrence.

asked 1xmediumSortingOnline test2019

Ans. Count each element using a hash map, then sort the array elements using a comparator based on their frequency. The key detail is tie handling: if frequencies match, keep original order or sort by value, depending on the requirement. Counting takes O(n), sorting takes O(n log n), with O(n) extra space.

Q. Explain how memory management works in an operating system.

asked 1xmediumOperating systemsTechnical2023

Ans. An operating system manages memory by giving each process its own virtual address space and mapping it to physical RAM. It tracks free and used memory, allocates pages to processes, enforces protection between them, and moves less-used pages to disk when RAM is full. The key idea is virtual memory through paging.

Q. Explain DBMS transaction management and concurrency control.

asked 1xmediumDBMSTechnical2020

Ans. DBMS transaction management ensures a group of database operations is executed reliably as one unit, following ACID properties: atomicity, consistency, isolation and durability. Concurrency control ensures multiple transactions can run at the same time without corrupting data, using mechanisms such as locks, timestamps or MVCC to prevent conflicts like dirty reads and lost updates.

Q. How do you count the number of objects created in a program?

asked 1xmediumOOPTechnical2020

Ans. Use a static or class-level counter shared by all instances, and increment it whenever a new object is constructed. The key detail is to update it from every creation path, including overloaded constructors or factory methods. In a multithreaded program, make the counter atomic or protect it with a lock.

Q. Explain the coding approach for the Snake and Ladder problem.

asked 1xmediumGraphsTechnical2020

Ans. Model the board as a graph and use BFS to find the minimum dice throws from square 1 to the last square. Keep a queue of squares with throw count and a visited array. For each square, try moves 1 to 6, then apply any snake or ladder jump. Time complexity is O(N), where N is board size.

Q. How do you calculate the memory size of a structure in C/C++?

asked 1xmediumOOPTechnical2024

Ans. Use sizeof(struct_type) or sizeof(variable) to get the actual memory size of a structure. It is not usually just the sum of member sizes, because the compiler adds padding between members and at the end to satisfy alignment rules. The result can vary by compiler, platform, packing settings, and member order.

Q. Minimum Number of Platforms Required for a Railway/Bus Station

asked 1xmediumGreedyOnline test2020

Ans. The minimum number of platforms is the maximum number of trains or buses present at the station at the same time. Sort arrival and departure times separately, then scan them with two pointers, increasing the count on an arrival and decreasing it on a departure. Track the maximum count. Time complexity is O(n log n), space is O(1) besides sorting.

Q. Explain the OSI model and the importance of the Data Link Layer

asked 1xmediumNetworkingTechnical2021

Ans. The OSI model is a seven-layer framework for understanding network communication, from physical signalling up to applications. The Data Link Layer is important because it provides reliable node-to-node transfer on the same local network, using MAC addresses, framing, error detection, and media access control before data is passed to the Network Layer.

Q. Sort elements of an array based on the frequency of occurrence.

asked 1xmediumSortingOnline test2020

Ans. Count each value with a hash map, then sort the array elements using their frequency as the primary key. Usually, higher frequency comes first, and ties are broken by value or original order, depending on the requirement. This takes O(n log n) time for sorting and O(n) extra space for the frequency map.

Q. Find the first and last position of an element in a sorted array.

asked 1xmediumBinary searchOnline test2020

Ans. Use two binary searches: one to find the leftmost occurrence and one to find the rightmost occurrence. In the first, move left when the target is found; in the second, move right when it is found. No extra data structure is needed. Time complexity is O(log n), space is O(1).

Q. Explain in detail how one network is connected to another network.

asked 1xmediumNetworkingTechnical2024

Ans. One network is connected to another network through a router, also called a gateway, which has an interface in each network. Devices send packets for outside addresses to their default gateway. The router examines the destination IP address, uses its routing table to choose the next hop, and forwards the packet between networks.

Q. Implement the Least Recently Used (LRU) Page Replacement algorithm

asked 1xmediumOperating systemsTechnical2020

Ans. Implement LRU by evicting the page that has not been used for the longest time when a page fault occurs and memory is full. Use a hash map from page to node plus a doubly linked list ordered by recent use. Access, insert, move-to-front, and eviction are all O(1).

Q. How does data switching happen between different layers in a network?

asked 1xmediumNetworkingTechnical2020

Ans. Data moves between network layers by encapsulation on the sender side and decapsulation on the receiver side. Each layer adds its own control information, such as headers, before passing data down to the next layer. At the destination, each layer reads and removes its header, then passes the remaining data upward.

Q. Minimum number of jumps to reach the end of the array (O(n) solution)

asked 1xmediumGreedyOnline test2020

Ans. Use a greedy scan, keeping the farthest index reachable in the current jump range and the farthest index reachable for the next range. Each time the scan reaches the end of the current range, take one jump and extend the range. If the current range cannot move further, the end is unreachable. This is O(n) time and O(1) space.

Q. What are the differences between Machine Learning and Data Analytics?

asked 1xmediumData analyticsTechnical2019

Ans. Machine Learning builds models that learn patterns from data to make predictions or decisions, while Data Analytics examines data to understand what happened, why it happened, and what actions to take. The key difference is purpose: analytics focuses on insight and reporting, whereas machine learning focuses on automated prediction and adaptation from data.

Q. Measure exactly 4 liters of water using only 3-liter and 5-liter jugs.

asked 1xmediumLogical reasoningTechnical2021

Ans. Fill the 5-litre jug and pour into the 3-litre jug, leaving 2 litres in the 5-litre jug. Empty the 3-litre jug. Pour the 2 litres into it. Fill the 5-litre jug again, then pour into the 3-litre jug until full. Exactly 4 litres remain in the 5-litre jug.

Q. Describe how a voice call connection is established between two phones.

asked 1xmediumNetworkingTechnical2019

Ans. A voice call is established by signalling between the caller’s phone, the network, and the receiver’s phone. The caller’s network recognises the number, finds the receiving network and handset, checks availability, and sends a ringing signal. When the receiver answers, the network connects a voice path, either as a circuit or packet stream.

Q. How would you manage work in a situation where there is no team leader?

asked 1xmediumLeadershipHR2020

Ans. Choose a real example where leadership was absent or unclear and you helped create structure without taking over. Emphasise agreeing priorities, clarifying ownership, setting communication routines, and keeping progress visible. Interviewers listen for initiative, collaboration, respect for peers, decision-making under ambiguity, and evidence that the work was delivered, not just coordinated.

Q. Explain the difference between TCP/IP model layers and OSI model layers.

asked 1xmediumNetworkingTechnical2019

Ans. The TCP/IP model has four practical layers, while the OSI model has seven conceptual layers. TCP/IP combines OSI’s application, presentation and session layers into one application layer, and maps transport, internet, and link layers roughly to OSI transport, network, and data link plus physical layers. TCP/IP is used in real networks.

Q. Create a custom exception class and catch all exceptions using that class

asked 1xmediumOOPTechnical2020

Ans. Create a custom exception by defining a class that extends Exception for checked errors or RuntimeException for unchecked errors. Throw this type from your code, and catch it using a catch block for that custom class. To handle different failures through it, wrap the original exception as the cause so details are not lost.

Q. Explain the evolution of mobile communication technologies from 2G to 5G.

asked 1xmediumNetworkingHR2020

Ans. Mobile communication evolved from 2G digital voice and SMS, to 3G mobile internet, to 4G high speed IP data, and then to 5G ultra fast, low latency, high capacity networks. The key shift is from voice-centric circuit switching towards packet-based broadband supporting streaming, cloud services, IoT, automation, and real-time applications.

Q. What is a static variable? Difference between static and global variables

asked 1xmediumStorage classesTechnical2021

Ans. A static variable is stored for the whole lifetime of the program, so its value persists between function calls or object uses. A global variable is declared outside functions and is usually accessible across the file or program. The key difference is scope and linkage: static can limit visibility, while global is broadly visible.

Q. Print the reverse of a string such that alternate characters are capitalized

asked 1xmediumStringsTechnical2020

Ans. Traverse the string from right to left and build the output, capitalising every alternate character in the reversed order. Use a counter to decide whether the current output position should be uppercase, usually starting with uppercase at position zero. A StringBuilder is suitable. Time complexity is O(n), space complexity is O(n).

Q. Given a situation, which programming language would be most suitable and why?

asked 1xmediumProgramming languagesTechnical2020

Ans. The most suitable language is the one that best matches the problem’s constraints, ecosystem and team skills. For example, Python suits data analysis because of its libraries, Java suits large backend systems because of tooling and portability, and C++ suits performance-critical code because it gives low-level control.

Q. Write pseudocode to find the middle element of a linked list in one iteration

asked 1xmediumLinked listsManagerial2021

Ans. Use two pointers, slow and fast, both starting at the head. Move slow one node at a time and fast two nodes at a time until fast reaches the end. Slow then points to the middle element. This uses only linked list pointers, runs in O(n) time and O(1) space.

Q. Explain the detailed process of how one network is connected to another network.

asked 1xmediumNetworkingTechnical2020

Ans. One network connects to another through a router or gateway that forwards packets between different IP networks. A device sends traffic to its default gateway, the router checks the destination IP against its routing table, chooses the next hop, rewrites link-layer details, and forwards the packet until it reaches the target network.

Q. What is a static function? How can we call a function without creating an object?

asked 1xmediumOOPTechnical2021

Ans. A static function is a function that belongs to a class rather than to an object of that class. We can call it using the class name, without creating an instance. For example, utility methods are often static. The key point is that it can access only static data directly, not instance fields.

Q. Explain real-time applications of data structures like trees, graphs, and hashmaps

asked 1xmediumTreesTechnical2021

Ans. Trees are used for hierarchical data like file systems, DOM parsing, and database indexes. Graphs model networks such as maps, social connections, and dependency systems. Hashmaps provide fast lookups in caches, dictionaries, and frequency counters. The key benefit is choosing structures that match access patterns, improving search, traversal, and update efficiency.

Q. Explain Object-Oriented Programming (OOP) concepts and their real-world applications

asked 1xmediumOOPTechnical2020

Ans. Object-Oriented Programming organises software around objects that combine data and behaviour. Its main concepts are encapsulation, abstraction, inheritance and polymorphism. In practice, a banking app might model accounts, customers and transactions as objects, making code easier to reuse, extend, test and maintain as requirements change.

Q. Explain pointers in C, including const pointers, void pointers, and function pointers.

asked 1xmediumOOPTechnical2020

Ans. Pointers in C are variables that store memory addresses, usually of typed objects, enabling indirect access and dynamic data structures. A pointer to const cannot modify the pointed value, while a const pointer cannot be reassigned. A void pointer holds any object address but must be cast before dereferencing. Function pointers store callable function addresses.

Q. Explain the Physical layer in detail and list networking devices that work at this layer.

asked 1xmediumNetworkingTechnical2020

Ans. The Physical layer is OSI layer 1, responsible for sending raw bits over a physical medium as electrical, optical, or radio signals. It defines cables, connectors, voltages, frequencies, timing, data rates, and modulation. Devices at this layer include hubs, repeaters, cables, connectors, network interface transceivers, modems, and media converters.

Q. Given a linked list, rotate it starting from index n so that the nth node becomes the head

asked 1xmediumLinked listsTechnical2021

Ans. Find the node at index n and make it the new head by reconnecting the list around that point. Keep a pointer to the node before it, find the tail, set tail.next to the old head, then set previous.next to null. This runs in O length time and O1 space.

Q. What would you do if you are asked to develop a feature but you believe it is not a good idea?

asked 1xmediumDecision makingManagerial2020

Ans. Pick a situation where you challenged a feature respectfully using evidence, not personal opinion. Emphasise understanding the goal, raising risks early, offering alternatives, and accepting the final decision once stakeholders decide. Interviewers listen for judgement, collaboration, customer focus, and whether you can disagree constructively without blocking delivery.

Q. Given 7 balls of identical weight and 1 ball with a different weight, find the minimum number of weighings needed to identify the different ball

asked 1xmediumLogical reasoningTechnical2020

Ans. Three weighings are needed if the odd ball may be heavier or lighter. Two weighings give only 3² = 9 outcomes, but there are 8 × 2 possible cases. Weigh 123 against 456. If balanced, compare 7 with a known good ball. If not, use the remaining two weighings to test the suspect heavy side and light side.

Q. Generate a 4-digit number such that the sum of the squares of the first half and second half equals the number itself (e.g., 1233 since 12^2 + 33^2 = 1233)

asked 1xmediumLogical reasoningTechnical2020

Ans. Let the first half be x and the second half be y. The condition is 100x + y = x² + y², so y = (1 + √(1 + 400x - 4x²)) / 2. Checking x from 10 to 99, the square root is integral only for x = 12 or 88, giving y = 33. Hence 1233 and 8833.

Q. Suppose you face a critical problem at the eleventh hour before a major project submission. How will you manage the situation and communicate it to your mentor?

asked 1xmediumConflict resolutionHR2021

Ans. Choose a real situation where you stayed calm, assessed impact quickly, and acted with priorities. Emphasise informing your mentor early, explaining facts, risks, options, and the support needed. Show ownership, not panic or blame. Interviewers listen for judgement, transparency, problem solving, time management, and willingness to escalate before damage increases.

Q. Solve aptitude and logical reasoning problems within a fixed time limit

asked 1xeasyLogical reasoningOnline test2021

Ans. Use a structured approach: read the question carefully, identify the type, note key data, and choose the fastest method. Eliminate impossible options first in multiple-choice questions. For calculations, estimate before solving fully. Manage time by skipping difficult questions initially and returning later if time remains.

Q. Quantitative aptitude problems

asked 1xunknownQuantitativeOnline test2021

Ans. Identify what is being asked, list the given values, and choose the right formula or concept, such as percentage, ratio, time and work, speed, profit, or probability. Convert units if needed, form a simple equation, solve step by step, and check whether the answer is reasonable.

Q. Logical and reasoning ability questions

asked 1xunknownLogical reasoningOnline test2021

Ans. Identify the type of pattern first, such as sequence, analogy, coding, direction, seating, syllogism, or arrangement. Write down the given facts clearly, convert words into symbols or diagrams, and test each option against the rules. Eliminate impossible answers quickly, but check the remaining choice for every condition before selecting it.

Showing 60 of 173 questions. Ranked by how often the same question came back across interviews.

Practise a Nokia-style interview

A spoken interview built from these questions, scored when you finish; the feedback is yours.

Start practising

When you are ready, record The One: a single interview hiring teams watch, so you stop repeating first rounds.

Common questions

What questions does Nokia ask?

Candidate interviews most often cover CS fundamentals (61%) and DSA (25%).

How many rounds does Nokia interview have?

Candidate interviews show an average of 3.6 rounds per experience, with a typical sequence of Online test → Technical → Technical → HR. Individual interview paths can vary.

Is the Nokia interview hard?

Among questions with a recorded difficulty, the mix is easy 52%, medium 47%, hard 1%.