AMD (August 2026) | EDA tools | all same day scheduled |
Summary
I interviewed for an EDA tools position at AMD in August 2026, completing three rounds that included theoretical questions, an LRU‑cache implementation, and several coding problems.
Full Experience
EDA tools development team,
Round 1 |Stupid interviewer| :
- Introduction , asked about Devops team experience,
- const variable vs static variable,
- what is databases how to fetch quickly from large set of data,
- RB tree,
- Trie,
- Jenkins and its plugin ,
- how to fetch large log,
- sharding vs indexing,
- if we delete a base class without using virtual destructor what will happen.
- Stack memory vs heap memory,
Randomly jumping on different topics, with only theory.
-
Round 2: LRU cache with follow ups, while writing code.
-
Round 3: Output based 3 coding questions:
-
Around Linked list code of addafter(var) function, had missing pointer.
-
Gave code with concept of overriding and predict output, if yes why if not why. And follow ups.
-
void insertAfter(int afterVal, int val) { Node* temp = head;
// Traverse to find the node with afterVal while (temp != nullptr && temp->data != afterVal) { temp = temp->next; }
// If temp is nullptr, afterVal was not found if (temp == nullptr) { std::cout << "Value " << afterVal << " not found in list." << std::endl; return; }
// Insert the new node Node* newNode = new Node(val); newNode->next = temp->next; temp->next = newNode; //this was removed. }
-
Where do you use AI in work and how much.
Interview Questions (5)
Implement LRU Cache
Design and implement an LRU (Least Recently Used) cache that supports get(key) and put(key, value) operations, both in O(1) time complexity. The cache should evict the least recently used item when it reaches capacity.
Linked List Insert After
Given a singly linked list, implement a function insertAfter(int afterVal, int val) that inserts a new node with value val immediately after the node containing afterVal. If afterVal is not found, output an appropriate message.
Predict Output of Overriding Example
Given a base class and a derived class where the derived class overrides a method (virtual or non‑virtual), determine the program's output and explain why the output occurs.
Effect of Deleting Base Class without Virtual Destructor
Explain what happens when a derived class object is deleted through a base class pointer that does not have a virtual destructor.
AI Usage in Work (Behavioral)
Discuss where and how you use AI in your work and the extent of its usage.