Akamai Technologies
50+ Indo European Educational Services Interview Questions and Answers
Q1. There are 12 balls which are identical in size and appearance but one is an odd weight (could be light or heavy). Find it in minimum number of weighings using a balance
Find odd weight ball among 12 identical balls using a balance in minimum weighings.
Divide balls into 3 groups of 4 each
Weigh any 2 groups against each other
If both groups weigh the same, the odd ball is in the third group
If one group is heavier, weigh any 2 balls from that group against each other
If they weigh the same, the odd ball is the remaining one
If one ball is heavier, it is the odd ball
Repeat the process with the lighter group if the odd ball is light
Q2. 4. Which traversal would I prefer for finding a cycle in a graph?
I would prefer Depth First Search (DFS) traversal for finding a cycle in a graph.
DFS is better suited for finding cycles in a graph as it explores deeper into the graph before backtracking.
DFS can detect a cycle in a graph in O(V+E) time complexity.
DFS can be implemented using recursion or a stack.
Breadth First Search (BFS) can also be used to find cycles but it is less efficient than DFS.
In DFS, we can keep track of visited nodes and parent nodes to detect a cycle.
Q3. Implementation of all linked list operations from scratch and reverse it.
Implementing all linked list operations from scratch and reversing it.
Start by creating a Node class with data and next pointer
Implement insert, delete, search, and traverse operations
To reverse the linked list, use three pointers to reverse the direction of the links
Make sure to handle edge cases such as empty list and single node list
Q4. Given a String find the lexicographically lowest substring containing k number of 1s
Find the lexicographically lowest substring with k 1s in a given string.
Iterate through the string and maintain a sliding window of size k.
Keep track of the count of 1s in the window and update the result if a valid substring is found.
Return the lexicographically lowest substring with k 1s.
Q5. Program to swap kth and kth to last element of a singly linked list in one pass. You are not given the length of the linked list before hand
Swap kth and kth to last element of a singly linked list in one pass without knowing the length of the list.
Traverse the linked list using two pointers, one starting from the head and the other starting from kth node.
When the second pointer reaches the end of the list, the first pointer will be pointing to the kth to last node.
Swap the values of kth and kth to last node.
Handle edge cases such as k being out of bounds or kth and kth to last node being the same.
Return the modif...read more
Q6. You are given two cubes. Represent the date of a month (01 31) using both the cubes by placing numbers on the given cubes
Representing date of a month using two cubes with numbers 0-9 on each face
Assign numbers 0-9 on each face of both cubes
Use one cube to represent tens digit and other for ones digit
Rotate cubes to display desired date
Example: Cube 1 - 0, 1, 2, 3, 4, 5; Cube 2 - 0, 1, 2, 6, 7, 8; To represent 23, Cube 1 shows 2 and Cube 2 shows 3
Q7. Find unique and duplicate elements in an array.
To find unique and duplicate elements in an array.
Create two empty arrays, one for unique elements and one for duplicates.
Loop through the array and check if the element is already in the unique array.
If it is, add it to the duplicates array. If not, add it to the unique array.
Return both arrays.
Q8. Program to find the length of the longest substring without repeating characters in a string
Program to find length of longest substring without repeating characters in a string.
Use a sliding window approach to traverse the string
Use a hash set to keep track of unique characters in the current substring
Update the length of longest substring without repeating characters as you traverse the string
Q9. SQL question to find third highest salary.
SQL query to find third highest salary.
Use ORDER BY and LIMIT to get the third highest salary.
Use subquery to avoid duplicates in case of multiple employees having same salary.
Example: SELECT salary FROM employees ORDER BY salary DESC LIMIT 2,1;
Q10. Given an array containing repeated characters, find the character repeated most number of times
Find the character repeated most number of times in an array of strings.
Create a dictionary to store character count
Iterate through each string and character
Return the character with highest count
Q11. Program to find the intersection point of two singly linked lists in O(n)
Program to find intersection point of two singly linked lists in O(n)
Traverse both lists and find their lengths
Move the head of the longer list by the difference in lengths
Traverse both lists in parallel until intersection point is found
Return the intersection point
Q12. Program to reverse a singly linked list both recursively and iteratively
Program to reverse a singly linked list both recursively and iteratively
Iteratively: Use three pointers to reverse the links between nodes
Recursively: Use a recursive function to reverse the links between nodes
In both approaches, update the head and tail pointers accordingly
Q13. Program to reverse a singly linked list in groups of k recursively
A program to reverse a singly linked list in groups of k using recursion.
Create a recursive function that takes the head of the linked list and the group size as parameters.
If the remaining list has less than k nodes, return the head as it is.
Reverse the first k nodes by recursively calling the function for the next group.
Connect the reversed group to the remaining list.
Return the new head of the reversed list.
Q14. Program to reverse the ordering of words in a sentence
Program to reverse the ordering of words in a sentence
Split the sentence into an array of words
Reverse the array
Join the array into a sentence
Q15. Trace the output of a C/C++ code snippet containing extensive pointers and references
Answering a question on tracing output of C/C++ code snippet with pointers and references
Understand the code and identify all pointers and references
Trace the values of each pointer and reference at each step
Follow the flow of the code to determine the final output
Q16. Design the underlying data structure behind a login page
The data structure behind a login page should store user credentials securely.
Use a database to store user information
Hash and salt passwords for security
Include fields for username, email, password, and possibly additional information
Consider implementing two-factor authentication
Q17. Difference between Abstract class and interface
Abstract class can have both abstract and non-abstract methods, while interface can only have abstract methods.
Abstract class can have constructors, fields, and methods, while interface cannot have any implementation.
A class can only extend one abstract class, but can implement multiple interfaces.
Abstract classes are used to define a common behavior for subclasses, while interfaces are used to define a contract for classes to implement.
Example: Abstract class 'Animal' with a...read more
Q18. Explain time and space complexities of hashmap
Hashmap has constant time complexity for insertion, deletion, and retrieval, but requires additional space.
Hashmap provides constant time complexity O(1) for insertion, deletion, and retrieval operations on average.
The space complexity of a hashmap is proportional to the number of elements stored in it.
Hashmap uses a hash function to map keys to indices in an underlying array, which allows for efficient lookup.
In case of collisions, where multiple keys map to the same index, ...read more
Q19. Types of inter process communication.
Inter process communication (IPC) allows processes to communicate with each other and share resources.
Shared memory
Pipes
Sockets
Message queues
Signals
Q20. PUZZLE : one circle (radius r) is drawn.You are throwing a stone in it than what is the probability that stone lies near the center?...
read moreProbability of a stone thrown in a circle with radius r lying near the center.
The probability of the stone lying near the center is directly proportional to the area of the circle near the center.
The area of the circle near the center is proportional to the square of the radius.
Therefore, the probability of the stone lying near the center is proportional to the square of the radius.
The probability can be calculated by dividing the area of the circle near the center by the tot...read more
Q21. Suppose in an abstract class a function called x(), AND there is another function with the same name in its derived class.Now create pointer for the abstract class, point it to the derived class object...
read moreCreating a pointer for an abstract class and pointing it to a derived class object with a function name conflict.
Use virtual keyword for the function in the abstract class.
Use override keyword for the function in the derived class.
Access the function using the pointer with the derived class object.
Q22. 1. Challenging tasks worked 2. Shift concerns 3. How to approach a problem 4. Mistakes and lessons learned 5. Greatest achievement
As a System Support Engineer, I have worked on challenging tasks, handled shift concerns, approach problems systematically, learned from mistakes, and achieved great results.
I have worked on complex server migrations and upgrades, which required extensive planning and coordination with different teams.
I have handled shift concerns by ensuring proper handover and documentation of ongoing tasks to the next shift.
I approach problems by first identifying the root cause and then d...read more
Q23. Explain segmentation fault
Segmentation fault is a type of error that occurs when a program tries to access a memory location that it is not allowed to access.
Segmentation fault is also known as a segfault.
It is a common error in C and C++ programming languages.
It occurs when a program tries to read or write to a memory location that it does not have permission to access.
This can happen when a program tries to access an uninitialized pointer or when it tries to access memory that has already been freed...read more
Q24. Explain BFS and DFS
BFS and DFS are graph traversal algorithms used to search for nodes in a graph.
BFS stands for Breadth First Search and explores all the nodes at the current depth before moving to the next level.
DFS stands for Depth First Search and explores as far as possible along each branch before backtracking.
BFS uses a queue data structure while DFS uses a stack or recursion.
BFS is useful for finding the shortest path in an unweighted graph while DFS is useful for topological sorting an...read more
Q25. Validity of a string as a password , testing concepts
Validating a string as a password involves testing its strength against various criteria.
Check if the password meets the minimum length requirement
Verify if the password contains a mix of uppercase and lowercase letters, numbers, and special characters
Test the password against a list of commonly used passwords or dictionary words
Ensure that the password is not easily guessable based on personal information
Test the password for its resistance to brute force attacks
Q26. How to delete nth node in linked list
To delete nth node in a linked list, we need to traverse to the (n-1)th node and change its next pointer to (n+1)th node.
Traverse to (n-1)th node and change its next pointer to (n+1)th node
Handle edge cases like deleting the first node or deleting the last node
Free the memory of the deleted node
Q27. What is CDN and what does akamai providing to its customer
CDN stands for Content Delivery Network. Akamai provides CDN services to its customers for faster and more reliable content delivery.
CDN helps distribute content closer to end users for faster loading times
Akamai offers services like caching, load balancing, and DDoS protection
Customers benefit from improved website performance and reliability
Q28. Few differences between HTTP 1.0 and 1.1. You may want to check HTTP2 as well.
HTTP 1.1 introduced persistent connections, chunked transfer encoding, and improved caching.
HTTP 1.1 allows multiple requests over a single connection
HTTP 1.1 supports chunked transfer encoding for better handling of large data
HTTP 1.1 introduced improved caching mechanisms
HTTP 2.0 uses binary framing instead of text-based framing in HTTP 1.x
Q29. Difference b/w UDP, TCP Linux commands Python basics in dict,tuple
UDP is connectionless, faster but less reliable. TCP is connection-oriented, slower but more reliable. Linux commands are used for system management. Python basics include dict and tuple data structures.
UDP is connectionless and does not guarantee delivery of data packets.
TCP is connection-oriented and ensures reliable delivery of data packets.
Linux commands like ls, cd, mkdir are used for system management.
Python dict is a key-value pair data structure, while tuple is an imm...read more
Q30. Observability Tools - how do they work, how the data gets queried and be able to visualize the traffic. Load balancing
Observability tools help visualize traffic and query data for load balancing.
Observability tools collect data from various sources such as logs, metrics, and traces.
This data is then queried and analyzed to provide insights into the system's performance.
Load balancing can be visualized through these tools by monitoring traffic and distributing it evenly across servers.
Examples of observability tools include Prometheus, Grafana, and Datadog.
Q31. What is DNS ? Explain indetail
DNS stands for Domain Name System, which translates domain names to IP addresses.
DNS is like a phone book for the internet, translating human-readable domain names (like google.com) to IP addresses (like 172.217.3.206).
It helps users access websites and other online services by resolving domain names to their corresponding IP addresses.
DNS also helps in load balancing, security, and email delivery by providing various types of records like A, CNAME, MX, etc.
Q32. Design data structure for Excel sheet
Design data structure for Excel sheet
Use a 2D array to represent rows and columns
Each cell can contain a string or a formula
Include metadata such as cell formatting and data validation rules
Q33. Reporting structure and performance metrics from my previous organization
In my previous organization, I reported to the Director of Operations and was evaluated based on sales targets and customer satisfaction.
Reported to Director of Operations
Evaluated based on sales targets and customer satisfaction
Received regular feedback and coaching sessions
Metrics were tracked and reviewed on a monthly basis
Q34. Port number and different protocols detailed
Port numbers are used to identify specific processes or services running on a computer. Different protocols use different port numbers.
Port numbers range from 0 to 65535
Common protocols and their port numbers include: HTTP (80), HTTPS (443), FTP (21), SSH (22), SMTP (25), and DNS (53)
Well-known port numbers (0-1023) are reserved for specific protocols, while registered port numbers (1024-49151) are assigned by IANA
Dynamic or private port numbers (49152-65535) are used for tem...read more
Q35. Simple DSA question- cycle in linked list, sorting algos
Detect cycle in a linked list and sorting algorithms
To detect a cycle in a linked list, you can use Floyd's Tortoise and Hare algorithm
Common sorting algorithms include Bubble Sort, Selection Sort, Insertion Sort, Merge Sort, Quick Sort, etc.
Q36. System design for URL shortener - HLD only
High-level design for a URL shortener system
Use a database to store original URLs and their corresponding short URLs
Implement a service to generate unique short URLs and redirect to original URLs
Consider scalability and performance by using caching and load balancing
Ensure security by validating input URLs and preventing malicious redirects
Q37. How to deal with difficult stakeholders?
To deal with difficult stakeholders, it is important to communicate effectively, build trust, manage expectations, and find common ground.
Communicate openly and regularly with stakeholders to address concerns and keep them informed
Build trust by delivering on promises and being transparent in your actions
Manage expectations by setting clear goals and timelines, and being realistic about what can be achieved
Find common ground by understanding stakeholders' perspectives and wor...read more
Q38. What layer does ping work on?
Ping works on the network layer of the OSI model.
Ping is a network utility used to test connectivity between two devices.
It sends ICMP (Internet Control Message Protocol) packets to the destination device.
ICMP is a protocol that operates at the network layer of the OSI model.
Ping can be used to troubleshoot network issues such as high latency or packet loss.
Q39. Implement monitors in OS
Monitors are implemented in OS to synchronize access to shared resources.
Monitors are used to ensure mutual exclusion and synchronization of shared resources.
They are implemented using locks and condition variables.
Monitors provide a higher level of abstraction than locks and semaphores.
Examples of monitors in OS include Java's synchronized keyword and C#'s lock statement.
Q40. How does internet work
The internet is a global network of interconnected computers that communicate using standardized protocols.
The internet is made up of a vast network of computers connected through physical cables, wireless signals, or satellite links.
Data is transmitted across the internet in the form of packets, which are small units of data that travel through routers and switches to reach their destination.
Protocols like TCP/IP govern how data is transmitted and received on the internet.
We...read more
Q41. What happens when you enter a URL
When you enter a URL, your browser sends a request to the server hosting the website, which then responds by sending back the requested webpage.
1. Browser sends a request to the server hosting the website
2. Server processes the request and sends back the requested webpage
3. The webpage is displayed in the browser for the user to interact with
Q42. Reporting metrics within the team
Reporting metrics is crucial for team success.
Regularly track and analyze key performance indicators (KPIs)
Communicate metrics clearly and effectively to team members
Use data to identify areas for improvement and set goals
Ensure metrics align with overall business objectives
Q43. Tls handshake explain examples
TLS handshake is a process where a client and server establish a secure connection.
TLS handshake involves multiple steps like client hello, server hello, key exchange, etc.
During TLS handshake, client and server exchange cryptographic keys to establish a secure connection.
Examples of TLS handshake protocols include TLS 1.2 and TLS 1.3.
Q44. Http version with benefits
HTTP/2 is the latest version with improved performance and security features.
HTTP/2 is the latest version of the Hypertext Transfer Protocol.
It offers benefits such as multiplexing, header compression, and server push.
HTTP/2 is binary, instead of textual like HTTP/1.1, which helps in reducing errors and improving efficiency.
Q45. SQL query for database automation .
SQL query for database automation involves writing scripts to automate tasks such as data extraction, transformation, and loading.
Use SQL scripts to automate repetitive tasks like data extraction, transformation, and loading.
Utilize stored procedures and functions to automate complex database operations.
Leverage triggers to automate actions based on specific database events.
Consider using SQL Agent jobs to schedule and automate routine maintenance tasks.
Implement error handli...read more
Q46. Software development About nationalism Coding
The question is unclear and seems to be a combination of unrelated topics.
It is unclear what the interviewer is asking for
Nationalism and software development are unrelated topics
Coding is a broad topic, more specific information is needed
Q47. what is class inheritance
Class inheritance is a concept in object-oriented programming where a class inherits attributes and methods from another class.
Allows a class to inherit properties and behaviors from another class
Promotes code reusability and reduces redundancy
Derived class can add new features or override existing ones
Example: Class 'Car' can inherit from class 'Vehicle' and inherit properties like 'color' and methods like 'drive'
Q48. why pytest fixtures are used
Pytest fixtures are used to set up preconditions for tests, share resources, and reduce code duplication.
Fixtures help in setting up preconditions for tests, such as creating test data or initializing objects.
They allow for sharing resources across multiple tests, reducing code duplication.
Fixtures can be used to simulate real-world scenarios, like setting up a database connection or mocking external services.
They provide a way to organize and manage test setup and teardown l...read more
Q49. How do manage risks?
I manage risks by identifying potential risks, assessing their impact, developing mitigation strategies, and monitoring them throughout the project.
Identify potential risks by conducting risk assessments
Assess the impact of each risk on the project's objectives
Develop mitigation strategies to address high-priority risks
Monitor risks throughout the project lifecycle and adjust strategies as needed
Q50. Osi model in depth
The OSI model is a conceptual framework that standardizes the functions of a telecommunication or computing system into seven different layers.
The OSI model stands for Open Systems Interconnection model.
It consists of seven layers: Physical, Data Link, Network, Transport, Session, Presentation, and Application.
Each layer has specific functions and communicates with the adjacent layers.
Example: The Physical layer deals with the physical connection between devices, while the Ap...read more
Q51. What is vary header?
Vary header is used to indicate to caches that the response may vary based on the request headers.
Vary header is used in HTTP responses.
It specifies which request headers a cache should take into account when considering a response.
For example, if a response varies based on the 'Accept-Encoding' header, the server should include 'Vary: Accept-Encoding' in the response.
This helps prevent caching of responses that are not appropriate for a particular request.
Q52. Cycle in a circular linked list
A cycle in a circular linked list occurs when a node points to a previously visited node, creating a loop.
Check for a cycle using Floyd's Tortoise and Hare algorithm
Use two pointers, one moving twice as fast as the other
If they meet at some point, there is a cycle
Q53. Why is CDN needed
CDN is needed to improve website performance by reducing latency, increasing content availability, and offloading origin servers.
Reduces latency by serving content from servers closer to the user
Increases content availability by caching content on multiple servers worldwide
Offloads origin servers by distributing traffic to CDN servers
Improves website performance and user experience
Q54. explain whole DNS flow
DNS flow involves multiple steps to resolve domain names to IP addresses.
1. User enters a domain name in the browser (e.g. www.google.com)
2. Local DNS resolver checks its cache for the IP address corresponding to the domain name
3. If not found, the resolver queries the root DNS servers
4. Root DNS servers direct the resolver to the appropriate Top-Level Domain (TLD) server
5. TLD server directs the resolver to the authoritative DNS server for the domain
6. Authoritative DNS serv...read more
Q55. what is tdd in it
TDD stands for Test-Driven Development, a software development process where tests are written before the code.
Tests are written before the actual code implementation
Code is then written to pass the tests
Helps in ensuring code quality and functionality
Promotes writing modular and testable code
Q56. Duplicates count in an array
Count duplicates in an array of strings
Iterate through the array and use a HashMap to store the count of each string
Check if the count of a string is greater than 1, then it is a duplicate
Return the total count of duplicates found in the array
More about working at Akamai Technologies
Top HR Questions asked in Indo European Educational Services
Interview Process at Indo European Educational Services
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month