Cisco SDE2 | Bangalore | Interview Experience
Summary
I interviewed for an SDE2 role at Cisco in Bangalore, which involved an online assessment covering coding and CS fundamentals, two technical rounds focusing on Data Structures & Algorithms, System Design, and LLD, followed by a managerial and HR discussion. I was ultimately selected.
Full Experience
Online Assessment (90 Mins)
The assessment was hosted on HackerRank. It consisted of two coding questions and 10 MCQs focusing on Networking fundamentals (TCP/IP, OSI Layers), OS, and Java/C++ basics.
- Coding Q1 (Easy/Medium): Array manipulation involving a sliding window. Similar to "Grumpy Bookstore Owner."
- Coding Q2 (Medium): Graph traversal. Given a network of routers, find the minimum time to broadcast a message to all nodes (Dijkstra’s variant).
Technical Round 1 (60 Mins)
This round focused heavily on Data Structures and Problem Solving.
- Problem 1: Find the Lowest Common Ancestor (LCA) in a Binary Tree. We discussed both the recursive approach and an iterative approach using parent pointers.
- Problem 2: "Longest Palindromic Substring." I started with the O(n3) approach and eventually optimized it to O(n2) using the "expand around center" method.
- CS Fundamentals: Deep dive into how a Traceroute works and the difference between TCP and UDP headers.
Technical Round 2 (60 Mins)
This was a System Design and Low-Level Design (LLD) round.
- System Design: Design a simplified "Network Monitoring System" that can handle logs from 10,000+ devices.
- Keywords: Kafka for ingestion, Time-series DB (InfluxDB), and Load Balancing.
- LLD: Design a "Rate Limiter" as a library. I implemented the Token Bucket algorithm.
- Concurrency: Questions on Thread Pools, Deadlocks, and how
ConcurrentHashMapworks internally in Java.
Managerial + HR Round (45 Mins)
A mix of behavioral questions and "Why Cisco?"
- Describe a situation where you had a conflict with a teammate.
- What is your experience with CI/CD pipelines (Jenkins/GitLab CI)?
- Discussion on Cisco’s shift toward "Software-Defined Networking" (SDN).
- Standard HR stuff: Salary expectations, notice period, and location preference.
Verdict: Selected!
Interview Questions (14)
Sliding Window Array Manipulation
Array manipulation involving a sliding window. The problem was similar to "Grumpy Bookstore Owner."
Minimum Time to Broadcast Message in Network
Given a network of routers, find the minimum time to broadcast a message to all nodes (Dijkstra’s variant).
Lowest Common Ancestor (LCA) in a Binary Tree
Find the Lowest Common Ancestor (LCA) in a Binary Tree. I discussed both the recursive approach and an iterative approach using parent pointers.
Longest Palindromic Substring
Find the "Longest Palindromic Substring."
How Traceroute Works
Deep dive into how a Traceroute works.
Difference between TCP and UDP Headers
Explain the difference between TCP and UDP headers.
Design a Network Monitoring System
Design a simplified "Network Monitoring System" that can handle logs from 10,000+ devices. Keywords discussed: Kafka for ingestion, Time-series DB (InfluxDB), and Load Balancing.
Design a Rate Limiter Library
Design a "Rate Limiter" as a library.
Explain Thread Pools
Questions on Thread Pools.
Explain Deadlocks
Questions on Deadlocks.
How ConcurrentHashMap Works Internally
Explain how ConcurrentHashMap works internally in Java.
Conflict with a Teammate
Describe a situation where you had a conflict with a teammate.
Experience with CI/CD Pipelines
What is your experience with CI/CD pipelines (Jenkins/GitLab CI)?
Cisco's Shift to Software-Defined Networking (SDN)
Discussion on Cisco’s shift toward "Software-Defined Networking" (SDN).
Preparation Tips
Key Takeaways:
- Master Networking: Since it's Cisco, don't ignore your CCNA-level basics. They will ask about the 4th and 7th layers of the OSI model.
- Be Clear on LLD: They value clean code and design patterns Singleton, Factory, and Strategy were touched upon. (I took guidance on this via a quick chat, and it really helped)
- Stay Calm: The interviewers were very collaborative and more interested in my thought process than the final syntax.