Interview Prep
Materials for technical interview preparation — interactive deep-dives and theory across protocols, architecture, and operations. Each opens in a new tab.
Network Part
51 materials across 6 topics
Fundamentals & Packet Flow
How a packet actually moves, layer by layer
The OSI Model — Layer by Layer
The 7 layers with PDUs & protocols, encapsulation, OSI vs TCP/IP, what-layer-is-X (ARP/MPLS/VXLAN/TLS/LBs), and layered troubleshooting.
Administrative Distance
How a router picks between routing sources for the same prefix — after longest-prefix match. Canonical Cisco defaults + a Cisco/Arista/Junos/Nokia/Huawei comparison.
NAT — Theory
Static/dynamic NAT & PAT, SNAT vs DNAT, how PAT rewrites & tracks flows, checksum recompute, what breaks (ALGs/IPsec/hairpin), NAT types & traversal (STUN/TURN/ICE), CGNAT.
IP Addressing & CIDR
Subnetting & planning: CIDR/masks, host & block-size math, the prefix table, RFC 1918 & special ranges, VLSM, route summarization, wildcard masks, and planning principles.
Protocol Headers — Field Reference
The wire format of every header worth sketching: Ethernet/VLAN, ARP, IPv4/IPv6, ICMP, TCP, UDP, MPLS, VXLAN/GRE, and OSPF/BGP/IS-IS.
TCP — Theory & Mechanisms
Handshake, teardown & TIME_WAIT, flow vs congestion control, retransmission, Nagle, MSS/PMTUD.
IPv6 — Theory
Address types & notation, EUI-64/privacy, the 40-byte header & extension headers, ICMPv6/NDP (no ARP), SLAAC vs DHCPv6, /64s, dual-stack & NAT64.
Packet Life: google.com
What happens when you type google.com — a full walkthrough across the OSI layers (L1–L7).
Life of a Packet — Fundamentals
Three scenarios field by field: one L2 segment, multi-hop routing, Internet via NAT.
Life of a Packet — Advanced
Overlays and multicast field by field: MPLS L3VPN, IPv6, EVPN/VXLAN, and PIM.
EVPN — Life of a Packet
A frame through a VXLAN-EVPN fabric in five cases: L2 simple, L2 multihoming (aliasing/DF), L3 simple (symmetric IRB), L3 multihoming, and multicast/BUM.
Multicast — Life of a Packet
A multicast packet hop by hop: L2 (IGMP snooping), PIM-SM (shared tree → Register → SPT switchover), and PIM-SSM (IGMPv3 → (S,G) join).
L2 Forwarding & the 64-Byte Minimum
Can you send a frame under 64 bytes? Runts, padding, CSMA/CD slot time, and the line-rate PPS math.
VLAN & VXLAN — Theory
802.1Q VLANs (access/trunk/native, QinQ, inter-VLAN routing, the 4094 limit) and VXLAN (VTEP/VNI, BUM, flood-and-learn vs BGP EVPN, anycast GW).
STP / RSTP / MSTP
Why Ethernet needs a spanning tree: root/port election, states & timers, RSTP fast convergence, MSTP regions & instances, and BPDU/Root/Loop Guard.
Ping & Traceroute
ICMP mechanics, the Cisco .!!!! / ..!!! output (and why the first packet drops), traceroute internals.
Routing Protocols
IGPs, BGP, and multicast
OSPF — Theory
Link-state IGP: areas, LSA types, DR/BDR, SPF, stub/NSSA, redistribution, OSPFv3.
OSPF Mechanisms — Interactive
Session establishment, LSA types, areas, and route redistribution — step by step.
IS-IS — Theory
Levels, NET/NSAP, DIS, TLV extensibility, narrow/wide metrics, and IS-IS vs OSPF.
BGP — Theory
eBGP/iBGP, route reflectors, path attributes, the best-path algorithm, policy, RPKI.
BGP Mechanisms — Interactive
Route election, ECMP, damping, communities, aggregation, MED, inter-AS MPLS VPN.
MP-BGP — Theory
AFI/SAFI, VPNv4/v6, EVPN route types, RD vs RT, next-hop, route reflection.
BGP/MPLS Inter-AS VPN — A / B / C
Inter-AS L3VPN (RFC 4364): Option A (back-to-back VRF), B (MP-eBGP VPNv4 at ASBRs), C (RR-to-RR + labeled-IPv4 loopbacks), plus Option AB and the "Option D" question.
BGP Traffic Engineering — Ingress/Egress
Steering a multihomed AS: the egress-vs-ingress asymmetry, outbound via weight/local-pref, inbound via AS-prepend/MED/communities/more-specifics, and multihoming recipes.
BGP Session — Interactive
The step-by-step process of bringing up a BGP session between two routers.
Multicast & PIM — Theory
Group addressing & L2 mapping, IGMP/MLD, RPF, PIM-SM (RP/register/SPT switchover), Anycast-RP/MSDP, SSM, Bidir.
PIM-SM Session — Interactive
Protocol Independent Multicast, Sparse Mode (RFC 7761) — step by step with the RP.
MPLS & Segment Routing
Transport, label distribution, and traffic engineering
MPLS — Theory
Label stack, LSR/LER, push/swap/pop, PHP, TTL modes, and the services MPLS enables.
MPLS · LDP · RSVP-TE — Interactive
Label switching, distribution, traffic engineering, VPN, and fast reroute — visualized.
LDP — Theory
Discovery/sessions, DU vs DoD, retention modes, LDP-IGP sync, tLDP, LDP vs SR.
RSVP-TE — Theory
Path/Resv signaling, CSPF constraints, FRR link/node protection, make-before-break.
Segment Routing — Theory
SIDs, SRGB, prefix/node/adjacency SIDs, SR-MPLS vs SRv6, TI-LFA, Flex-Algo.
SR-TE — Theory
SR policies, candidate paths, binding SID, PCEP/controllers, ODN & automated steering.
L2VPN — Pseudowire, VPLS & EVPN
Carrying L2 over MPLS/IP: pseudowires (VC label, tLDP, E-Line), VPLS (split-horizon, flood-and-learn) and EVPN (BGP MAC learning, all-active ESI multihoming).
MPLS L3VPN — Theory
CE/PE/P roles, VRFs, RD vs RT, the MP-BGP VPNv4 control plane, the two-label (transport + VPN) data plane, hub-and-spoke via RT policy, VRF-lite, 6VPE.
EVPN — Theory
The BGP control plane for L2+L3 VPNs: route types 1–5, EVI/ES/ESI, all-active multihoming (DF/split-horizon/aliasing), MAC mobility, symmetric IRB & anycast GW, VXLAN/MPLS/SRv6.
Network Architecture
How real networks are built
ISP Architecture
Access/aggregation/core/edge, MPLS+IS-IS+RR, peering vs transit, provider services.
DC IPv6 Architecture
Leaf-spine Clos, BGP as the DC IGP, unnumbered links & RFC 5549, overlays vs pure L3.
DC IPv6 + Host-Based Firewalling
East-west microsegmentation, zero-trust, policy distribution, DPU/eBPF offload, ICMPv6.
DC — WAN — DC
Data-center interconnect: L3 vs L2 stretch, EVPN over WAN, SR-TE, active-active.
Office Network Architecture
Access/distribution/core, VLANs, STP/MLAG, FHRP, Wi-Fi, dual-ISP edge, segmentation.
Ops, Performance & Trading
Low latency, physical layer, Linux, and the traps
Low-Latency & Trading Networks
Cut-through switching, latency components, small packets, HFT network optimization.
PTP & Time Synchronization
IEEE 1588 sub-µs sync: why NTP falls short, clock roles (GM/boundary/transparent), BMCA, the message exchange & offset math, one/two-step, asymmetry & holdover, SyncE, MiFID II.
Transceiver Power & dBm
dBm meaning, dB vs dBm, per-optic power tables, RX overload, link budgets, DDM/DOM.
Linux Basics & Troubleshooting
ip/ss/ethtool/tcpdump, routing & namespaces, counters, perf/latency tuning, methodology.
Gotchas & Trick Questions
~30 counter-intuitive interview traps with the mechanism and the correct answer.
Reliability, QoS & Hardware
Fast convergence, quality of service, and the silicon underneath
BFD, HA & Fast Convergence
The convergence budget, BFD (async/echo/micro-BFD), LFA/TI-LFA, BGP PIC, graceful restart vs NSF/SSO, MPLS FRR.
QoS — Theory
IntServ vs DiffServ, DSCP/802.1p/MPLS TC marking, PHBs (EF/AF/CS), LLQ/CBWFQ, WRED/ECN, policing vs shaping.
Data-Plane Hardware — ASICs & NOS
Control vs data plane, merchant silicon (Tomahawk/Jericho/Silicon One/Trio), buffers & VOQ, SONiC/SAI, InfiniBand vs RoCE.
VRRP & FHRP — Gateway Redundancy
Shared virtual IP/MAC, master election & the address owner, advertisements, preemption, object tracking; VRRP vs HSRP vs GLBP, and the EVPN anycast-gateway alternative.
MC-LAG — Multi-Chassis LAG
Dual-home to two switches as one active LAG (no STP block): peer-link/ICL, keepalive, common LACP ID, vPC loop-avoidance, split-brain, vs stacking/VSS vs EVPN ESI.
Coding Part
9 pages · network-automation-themed problems with statements, reference solutions & pitfalls (Python & Go)
Approach
How to perform in a live-coding interview
Python
Algorithms & tooling, network-automation themed
Python — Ranges & Parsing
VLAN ranges, MAC normalization, counter deltas & wrap, subnets, key=value, interval merge.
Python — Graphs & Routing
LLDP graph + BFS, config tree, longest-prefix match, config diff, aggregation, Dijkstra.
Python — Automation Workflows
Build-style mocks: gNMI notifications + bps, Ansible var precedence, Nornir SoT→deploy.
Python Mock — Live Tasks
Config parser, IP tools, flatten YANG/gNMI, idempotent diff, and an asyncio collector.
Go
Fundamentals & concurrency (run with -race)
Go — Fundamentals
Ranges, MAC, counter deltas with errors.Is, and an LLDP BFS with deterministic map order.
Go — Concurrency
Worker pool, fan-in merge, RWMutex registry, errgroup cancel-on-error, semaphore.
Go — Concurrency (Advanced)
Bounded ctx-aware connection pool, single-flight dedup, and streaming.
Go Mock — Live Tasks
Config parser, IP tools, a worker pool, and flatten + path diff.
SRE / DevOps Part
23 materials · Linux internals, performance triage, and practical operations for reliability interviews
Linux, Performance & Ops
The SRE/DevOps screen: fundamentals, triage methodology, and hands-on tasks
Linux Fundamentals — SRE Q&A
Processes/threads/syscalls, signals, /proc/meminfo, load average, page faults, fds, ss backlog, namespaces & cgroups, containers vs VMs.
Performance Triage — USE Method
The 60-second checklist (vmstat/mpstat/pidstat/iostat/sar) and the USE method per resource, plus perf/strace/eBPF.
Practical Bash & Ops Tasks
Reference solutions + gotchas: backups, cron, disk alerts, Nginx, SSH hardening, kill-by-port, logrotate, patching, iptables.
SRE Prep Guide — Roadmap ↗
The broader study roadmap (Containers, Kubernetes, IaC, CI/CD, Clouds, System design, Monitoring) — curated links on GitHub.
Kernel Internals · Memory
How the kernel maps, allocates, caches and reclaims memory — original deep-dives
Memory Addressing
Virtual→physical: segmentation vs paging, the 4-level page-table walk & PTE flags, per-process isolation, the TLB (shootdowns, huge pages), the user/kernel split & KPTI, NUMA zones.
Memory Management
The buddy allocator (orders/zones/compaction), slab/SLUB object caches, kmalloc vs vmalloc, GFP flags (KERNEL vs ATOMIC), watermarks, kswapd vs direct reclaim, overcommit & OOM.
Process Address Space
mm_struct & VMAs, the regions (text/data/heap/mmap/stack), mmap/brk/stack growth, demand paging & page faults (minor/major, anon vs file, COW, SIGSEGV), ASLR.
The Page Cache
Caching file data: the address_space/xarray index, readahead, dirty pages & writeback (dirty_ratio, fsync durability), O_DIRECT vs mmap, drop_caches, clean vs dirty under reclaim.
Page Frame Reclaiming
Reclaim under pressure: clean file first vs dirty writeback vs anon/swap, active/inactive LRU & second-chance, watermarks (kswapd vs direct reclaim), swappiness/thrashing, the OOM killer.
Kernel Internals · Processes & Execution
The task model, scheduling and signals — original deep-dives
Processes & Threads
task_struct (pid/tgid, state, mm), states → ps letters, fork with Copy-On-Write, clone flags (threads = CLONE_VM), kernel threads, reparenting, exit/zombies.
Process Scheduling
Scheduling classes (deadline/RT/CFS/idle), CFS/EEVDF fairness via vruntime + nice, preemption & the context-switch cost, per-CPU run queues, load balancing, affinity/isolation.
Signals
Generation/pending/blocked/delivery, uncatchable SIGKILL/SIGSTOP, standard vs real-time (queued) signals, sigaction/SA_RESTART/EINTR, async-signal-safety (self-pipe/signalfd), signals vs threads.
Program Execution
fork+exec, what execve does (binfmt/ELF, rebuild the address space, argv/envp/auxv on the stack), static vs dynamic linking & ld.so with PLT/GOT lazy binding, shebang, O_CLOEXEC, setuid, ASLR/PIE.
Process Communication (IPC)
Pipes/FIFOs, Unix sockets (fd passing), shared memory (fastest — you own the locking), message queues, semaphores, signals, eventfd; System V vs POSIX, the futex, and choosing the right one.
Kernel Internals · CPU, Interrupts & Sync
System calls, interrupts, locking and time — original deep-dives
System Calls
The user→kernel boundary: the syscall instruction & mode switch, number/table/handler, copy_from/to_user, negative-errno, why it's costly (KPTI, io_uring), the vDSO, strace/seccomp.
Interrupts & Exceptions
IDT & vectors (APIC/MSI-X/IPIs), interrupt vs fault vs trap, top/bottom halves (softirq/tasklet/workqueue), NAPI, the can't-sleep rule, spin_lock_irqsave, IRQ affinity.
Synchronization
Atomics, spinlocks (& the interrupt-deadlock trap), mutexes/semaphores, RCU & grace periods, seqlocks, memory barriers, per-CPU data, lockdep — and which primitives may sleep.
Timing Measurements
Clock sources (TSC/HPET) vs event devices, HZ/jiffies & the tick, tickless (NOHZ_FULL), timer wheel vs hrtimers, REALTIME vs MONOTONIC clocks, fast clock_gettime via the vDSO.
Kernel Internals · Storage & I/O
Filesystems, file access and the block/device layers — original deep-dives
The Virtual Filesystem
The common file model (superblock/inode/dentry/file) & ops tables, the dentry/inode caches, path lookup, mount namespaces, pseudo-filesystems (proc/sys/tmpfs), FUSE.
Accessing Files
The fd→file→inode→address_space chain & the shared offset, buffered read/write via the page cache (readahead, writeback, fsync), and O_DIRECT/mmap/O_SYNC/sendfile.
I/O Architecture & Drivers
Char/block/network devices, major/minor & /dev, the device model (bus→device→driver/probe, sysfs/udev), and moving data — MMIO, interrupts, DMA — plus file_operations/ioctl.
Block Device Drivers
bio → request → queue (merge/sort/plug), single-queue vs blk-mq, I/O schedulers (none/mq-deadline/bfq/kyber) & why NVMe prefers none, /sys/block knobs, stacked LVM/RAID/dm-crypt.
Ext2 / Ext3 / Ext4
On-disk layout (superblock/block groups/inode table/bitmaps), indirect blocks vs extents & delayed allocation, directories as name→inode files, journaling modes (journal/ordered/writeback).
Network Automation Part
13 materials · config as code across Ansible, Nornir, and Annet — theory, playbooks, labs & CI/CD
Choosing an Approach
Compare the stacks before you commit — Ansible+NAPALM vs Nornir vs Annet+gnetcli
Ansible
Agentless config-as-code — theory, real playbooks, and a Python-driven lab
Ansible — Theory
Agentless/idempotent architecture, inventory, playbooks/roles/handlers, variable precedence, Jinja2, network connection plugins, resource modules, Vault.
Ansible — Cases & Usage
Runnable playbooks: facts, config push with backup/check/diff, templating, resource modules, safe rolling changes, NetBox inventory, CI/CD pipeline.
Ansible Lab — Python-Driven
Compose Ansible with Python: custom filter plugins, a check-mode-aware module, dynamic inventory, an end-to-end SoT→diff→deploy flow, and pytest/molecule.
Nornir
Network automation as pure Python — the framework and hands-on flows
Nornir — Theory
Automation as pure Python: inventory → filter → task → runner → results, inheritance, connection plugins (netmiko/napalm/scrapli), and Nornir vs Ansible.
Nornir — Practice
InitNornir + inventory, fleet-wide show commands, F-object filtering, config backup, Jinja2 render + NAPALM dry-run/commit, retries, and pytest.
Annet
Generator-based config generation with a vendor-aware diff and deploy
Model-Driven & Telemetry
The programmable interfaces underneath — YANG-modeled config and streaming telemetry
NETCONF & YANG
Model-driven config: YANG data modeling (config vs state, augment/deviation), NETCONF XML/SSH RPCs, datastores & commit/confirmed-commit (NMDA), and RESTCONF.
gNMI, OpenConfig & Telemetry
gRPC-native management: gNMI Get/Set/Subscribe, streaming-telemetry modes (SAMPLE/ON_CHANGE), dial-in vs dial-out, OpenConfig models & the config/state split, gNOI.
Source of Truth & Testing
The data and the safety net — a trustworthy SoT and a pipeline that tests before it deploys
Source of Truth & NetBox
Why the device isn't the truth: modeling in NetBox (site→device→interface→IP), data validation (pydantic/JSON Schema), config drift & conflicts, and the SoT→intended→diff→deploy loop.
Network Testing & CI/CD
Config as code: the test pyramid (pytest/Batfish/containerlab), golden config & drift, pre/post-checks, canary deploy and automatic rollback.
AI & LLMs
Applying LLMs to network operations — assistive, grounded, and guardrailed
System Design
Designing the platforms — architecture, data flow, scale and failure modes
Troubleshooting Part
4 materials · reproducible failures worked symptom → diagnosis → fix, across Linux, network, and Junos
Linux & Systems
Reproducible failures worked symptom → diagnosis → fix → prevent
Network & Vendor
Physical/L1–L2 faults and Junos routing/switching troubleshooting
Troubleshooting Scenarios
Port discards, CRC & physical issues, duplex mismatch, optics, microbursts, methodology.
Junos — Routing Troubleshooting
RE/PFE architecture, the toolbox (show route, traceoptions, monitor traffic), a layered method, and OSPF/IS-IS/BGP failure modes, policy & ECMP.
Junos — Switching Troubleshooting
Ethernet-switching table, VLANs/trunks/IRB, MAC loops, spanning tree (STP/RSTP/MSTP/VSTP), LAG/LACP, Virtual Chassis, and L2 security.
A topic worth breaking down?
Read the blog