AWS SysDE II Virtual Onsite
Preparation Guide
A complete field guide for Praneeth's onsite: the interviewers you will meet, the Leadership Principles matrix with STAR stories anchored to Linq, Visa, and JPMorgan Chase, and deep-dive sections on networking, system design, coding, Linux internals, and incident response - plus a day-by-day plan to the interview.
5
5
16
8
Before anything else: use real numbers only
This guide is only as strong as the facts behind it. Every STAR story and every design number you give must be real and defensible. If you cannot recall an exact figure, give the honest magnitude - never invent one. The bar raiser will follow up, and the follow-up is where a made-up number collapses.
Interview Schedule & Interviewer Profiles
A single onsite loop on Wednesday, August 26, 2026, for System Development Engineer II (SysDE II) on AWS Manufacturing Infrastructure Services. This is how the day is structured and who you will meet.
The loop at a glance
A standard SysDE II onsite runs as five back-to-back interviews: a systems design conversation, a networking deep dive, a live coding session, an OS internals / troubleshooting session, and a Leadership Principles bar raiser. The order below is the typical shape - confirm the exact order with your recruiter the day before, but prepare for all five regardless.
Schedule
| Slot | Focus | What they are looking for |
|---|---|---|
| 1 | Systems Design | Telemetry, device fleets, manufacturing infrastructure at scale |
| 2 | Networking | TCP/IP, BGP, DNS, load balancing, and a real troubleshooting walk |
| 3 | Coding & Tooling | Clean Python / Go / Bash under LiveCode, systems-flav problems |
| 4 | Linux Internals | cgroups, namespaces, procfs, strace, perf, systemd |
| 5 | Leadership Principles | STAR-R stories, ownership, bar raiser |
Interviewer profiles
Paul Bennett
- Expect a broad system-design conversation: telemetry pipelines, device fleet management, and manufacturing infrastructure at AWS scale.
- Drive with a clear framing: requirements, scale, then components. Ask clarifying questions before you commit to numbers.
- Keep the interviewer in the loop: state your assumptions, sketch the data flow, and check in before moving on.
Gaurav Saini
- TCP/IP, BGP, DNS, and load balancing are fair game. Be ready to walk through a real packet path end to end.
- Expect 'why' questions: why does a connection stall, why does a route flap, how a health check fails.
- Have a concrete troubleshooting narrative ready that starts from a symptom and narrows to root cause.
Hudson Airom
- LiveCode-style session. Write clean, working code in your strongest language, then reason about it out loud.
- Expect systems-flavored problems: parsing logs, processing streams, orchestrating processes, idempotent scripts.
- Talk through your approach before typing, and keep the code readable over clever.
Hithesh Sekhar Bathala
- cgroups, namespaces, procfs, strace, perf, and systemd are the vocabulary here.
- Be ready to trace a failing service: what the kernel exposes, what you measure, what you fix.
- Connect each tool to the symptom it answers - not just what the tool is, but when you reach for it.
Charlie Grimsley
- The bar raiser protects the bar. Expect deep STAR questions and follow-ups that probe for ownership and scale.
- Have stories from Linq, Visa, and JPMorgan Chase ready, each with a real number and a real trade-off.
- Answer with the STAR-R shape and be ready to be pushed on the 'Result' and the 'Reflection'.
Leadership Principles Matrix & STAR Stories
The bar raiser is the interview that most often decides the outcome. Map every principle to a real story, and tell each story in the STAR-R shape with a real number and a real trade-off.
Use real numbers only
Every story you tell must carry a real, defensible metric - a real percentage, a real latency, a real count of devices, a real cost. Do not invent numbers on the fly; if you cannot recall the exact figure, say "on the order of" and give the honest magnitude. Fabricated metrics are the fastest way to lose a bar raiser, because the follow-up questions will expose them.
The STAR-R shape
- Situation - one or two sentences. The context, the stake, the constraint. Keep it tight; do not bury the story.
- Task - what you personally owned. Name your responsibility, not the team's.
- Action - the meat. What you did, in order, with the trade-offs you made. Use "I" and concrete verbs.
- Result - the number. A measurable outcome: latency, error rate, devices, cost, revenue, time saved.
- Reflection - what you learned and what you would do differently. This answers "what did you take away" before it is asked.
Principles matrix
The table maps each Leadership Principle to a company to anchor your story. These are starting points - pick the story that is strongest and most real, not the one that looks best on paper.
| Leadership Principle | Anchor | Story angle |
|---|---|---|
| Customer Obsession | Frame the telemetry/observability work as serving the customer of the data. | |
| Ownership | Own the incident end to end - own the page, the fix, and the follow-up. | |
| Invent and Simplify | Show a simpler system replacing a complex one, with a real before/after. | |
| Are Right, A Lot | A decision that was hard and later proven right, with the data to back it. | |
| Learn and Be Curious | A new domain or tool you went deep on to solve a real problem. | |
| Hire and Develop the Best | Raising the bar for the people around you, or growing someone on your team. | |
| Insist on the Highest Standards | A defect you refused to ship, and the standard you held. | |
| Think Big | A solution built for scale, not for the one case in front of you. | |
| Bias for Action | A decision you made fast with imperfect information, and the result. | |
| Frugality | A cost or resource you cut without cutting the outcome. | |
| Earn Trust | A time you were trusted with something sensitive and kept it. | |
| Dive Deep | Going to the root cause when a quick fix would have masked the problem. | |
| Have Backbone; Disagree and Commit | A disagreement you voiced, then committed to once the call was made. | |
| Deliver Results | A hard deliverable that landed, with the number attached. | |
| Strive to be Earth's Best Employer | Making the people around you better, not just the output. | |
| Success and Scale Bring Broad Responsibility | A decision whose blast radius grew with scale, and how you handled it. |
Tailored story banks
Linq is your anchor for data and customer-facing work. Pick stories where you made something observable, cut a cost, or held a standard.
Networking Fundamentals Deep Dive
The networking interview rewards people who can trace a packet from one end of the stack to the other and say exactly where it breaks. Build that muscle here.
TCP/IP
Be able to describe the three-way handshake (SYN, SYN-ACK, ACK), the four-way teardown (FIN, ACK, FIN, ACK), and what each state in ss -t means: SYN-SENT, ESTABLISHED, FIN-WAIT, CLOSE-WAIT.
Know congestion control at the level of an interviewer, not a textbook: slow start, congestion avoidance, and the two signals that trigger retransmission - timeout and duplicate ACKs (fast retransmit). Know that tcpdump shows you the retransmits as TCP Retransmission and that is where a flaky network shows up first.
# See the handshake and any retransmits on port 443
sudo tcpdump -ni eth0 tcp port 443
# Show established sockets and their state
ss -tlnp
# Show retransmits and out-of-order segments specifically
sudo tcpdump -ni eth0 "tcp[13] & 8 != 0"BGP
BGP is how networks exchange reachability. Know the difference between eBGP (between autonomous systems) and iBGP (inside one AS), and the four message types: OPEN, UPDATE, KEEPALIVE, NOTIFICATION.
Know the path selection in order: longest prefix match, then AS-PATH length, then origin type, then MED, then local preference. A route flap is a route that keeps appearing and disappearing - it is a classic cause of flapping connectivity and flapping load balancers.
Interview angle
"Why did the route flap?" is a favorite. The answer is usually: a peer is flapping, a filter changed, or a prefix is being announced and withdrawn. Walk from the symptom to the peer, not the other way.
DNS
Know the resolution path: a recursive resolver asks an authoritative server, which answers from a zone file, and the answer is cached for the TTL. Know the record types that matter: A, AAAA, CNAME, MX, NS, SOA, and TXT.
The classic failure modes: stale cache (TTL too long), split-horizon mismatch (internal vs external answers differ), and negative caching (a failed lookup cached for the negative TTL). Debug with dig and nslookup.
# Full resolution path, shows the TTL and the server that answered
dig +trace example.com
# Ask a specific server directly, bypass the cache
dig @8.8.8.8 example.com
# Show what is cached locally
resolvectl query example.comLoad balancing
Know L4 (TCP/UDP, no content awareness) vs L7 (HTTP-aware, can route on headers and paths). Know the three health-check flavors: TCP, HTTP, and active vs passive checks.
Know connection draining (finish in-flight requests before removing a node), sticky sessions (and why they hide problems), and cross-zone failover (route around a failed zone, not just a failed node).
The troubleshooting arc
When a load balancer misbehaves, the order is: confirm the health check is passing, confirm the target is actually serving, then check whether the LB is routing to a dead or draining node. Most "the LB is broken" calls end at "the target is the problem".
End-to-end troubleshooting
# 1. Does the name resolve?
dig +short example.com
# 2. Can you reach the host at the network layer?
ping -c 3 example.com
# 3. Where does the path stop?
traceroute -n example.com
# 4. Is the port open and serving?
nc -vz example.com 443
# 5. What round-trip time and retransmits are happening?
curl -w "connect: %{time_connect} ttfb: %{time_starttransfer} total: %{time_total}" -o /dev/null https://example.comSystem Design: Telemetry, Device Fleets, Manufacturing Infra
SysDE design questions are about systems that stay alive under load and in the field - telemetry that never drops a sample, fleets that update without breaking, factories that keep running. Design for the failure, not the happy path.
A design skeleton that works for all three
- Clarify - restate the problem, then ask: what is the write rate, the read rate, the durability target, the blast radius of a failure?
- Estimate scale - put real numbers on the table: devices, samples per second, retention, query load. Say the numbers out loud and sanity-check them.
- Draw the data flow - producers, ingestion, storage, consumers. Label each hop and what it buffers or drops.
- Design for failure - what happens when a node dies, a zone goes down, a device goes offline? That is the design, not the afterthought.
- Close the loop - monitoring, alerting, and the feedback that makes the system self-healing.
Telemetry pipeline
A telemetry system is a pipeline: agents on hosts sample and batch, an ingestion layer accepts and buffers, a storage tier holds it, and a query layer serves it out. The hard parts are the batch boundaries and the durability of a sample.
Talk about sampling vs full capture, time-series storage (downsam and compaction), and cardinality - a high-cardinality label is what makes a query slow. And always close with: how do you know the pipeline is healthy? A telemetry system that cannot report its own health is not finished.
agents (batch) -> ingestion (buffer) -> storage (tsdb) -> query
| | |
sample lost? backpressure? downsam + retentionDevice fleet management
A device fleet is the opposite of a server fleet: the devices are the unreliable part. Design for registration (how a device joins), heartbeat (how you know it is alive), config (how you push the right settings), and OTA update (how you change the software without breaking the field).
The key design tension is eventual consistency: devices are offline, so your control plane cannot assume a synchronous round trip. Design idempotent operations, versioned configs, and a rollout that is staged and canary-able - update a few, watch, then widen.
Rollout discipline
Any fleet update should be staged: 1%, then 10%, then 50%, then 100%, with a rollback path at every step. If you cannot answer "how do we undo this update", the design is not done.
Manufacturing infrastructure
Manufacturing infrastructure is where the network meets the physical world: factory network, edge compute, and integration with industrial systems like PLC / SCADA. The constraints are different: latency is physical, uptime is contractual, and a reboot is not an option on a production line.
Design for deterministic behavior over cleverness, graceful degradation (what still works when the uplink drops), and local control - the line keeps running even when the cloud connection is gone, and reconciles later.
| Concern | Design for | Why |
|---|---|---|
| Latency | Edge compute near the line | Physical distance is real; control loops cannot wait for a round trip |
| Uptime | Redundant paths, local control | A line stoppage is a cost, not an inconvenience |
| Reboot | Graceful, staged restarts | A hard reboot on a production line is unacceptable |
| Reconciliation | Idempotent, versioned ops | The field and the cloud must agree after an outage |
Systems & Tooling Coding: Python, Go, Bash
The coding session is systems-flav: parse a log, process a stream, orchestrate a process, make a script idempotent. Write clean code, then talk about it. LiveCode means the interviewer watches you think.
What they are testing
Not algorithm trivia - how you build tools that run in production. They want to see: input handling that does not crash on bad data, a clear structure, idempotency, and error handling that reports instead of silently swallowing.
Python - streaming a log
import sys, re
from collections import Counter
pattern = re.compile(
r"^(?P<ts>\S+) \S+ (?P<level>\w+) (?P<msg>.*)$"
)
def main():
counts = Counter()
for line in sys.stdin:
line = line.rstrip("\n")
m = pattern.match(line)
if not m:
# never crash on a bad line - report and keep going
print(f"skip: {line!r}", file=sys.stderr)
continue
counts[m.group("level")] += 1
for level, n in counts.most_common():
print(f"{level}: {n}")
if __name__ == "__main__":
main()Bash - idempotent orchestration
#!/usr/bin/env bash
set -euo pipefail
# Idempotent: only act if the target is missing
ensure_dir() {
local dir="$1"
if [[ ! -d "$dir" ]]; then
mkdir -p "$dir"
fi
}
# Fail loudly with context
restart_service() {
local svc="$1"
if ! systemctl restart "$svc"; then
echo "failed to restart $svc" >&2
return 1
fi
}
ensure_dir /var/lib/app
restart_service appLiveCode tips
LiveCode is a shared editor - the interviewer watches you type and reason. The tips below are what separates a good session from a frantic one.
Linux Internals & Troubleshooting
The OS session is about knowing what the kernel exposes and reaching for the right tool when a symptom appears. Connect each tool to the question it answers.
cgroups & namespaces
cgroups limit and account resources - CPU, memory, I/O - and are the mechanism behind containers and systemd slices. namespaces isolate what a process can see: PID, network, mount, UTS, IPC, and user. Together they are "what makes a container a container".
Debug with systemd-cgls, systemd-cgtop, and cat /sys/fs/cgroup/.... When a process is throttled or OOM-killed, cgroups are the first place to look.
procfs
/proc is the kernel's view of the system as files. Know the ones that matter: /proc/loadavg, /proc/meminfo, /proc/cpuinfo, and per-process /proc/PID/status, /proc/PID/fd, /proc/PID/io.
# What is the process doing right now?
cat /proc/$(pgrep -f mydaemon)/status
# Where are its file descriptors pointing?
ls -l /proc/$(pgrep -f mydaemon)/fd
# Memory pressure at a glance
cat /proc/meminfo | headstrace & perf
strace answers "what syscalls is it making" - the question for a hanging or misbehaving process. perf answers "where is the CPU actually spending time" - the question for a slow hot path.
# What syscalls, and where is it stuck?
strace -f -p $(pgrep -f mydaemon) -e trace=network
# Where is the CPU going?
perf record -g -p $(pgrep -f mydaemon) -- sleep 10
perf reportsystemd & journalctl
systemd is the unit manager - services, sockets, timers, slices. Debug a failing service with systemctl status, systemctl restart, and read the logs with journalctl -u. Know the difference between a unit that failed and one that is activating (starting) and the common causes: a missing ExecStart, a bad WorkingDirectory, or a dependency that never came up.
# What is the state?
systemctl status app.service
# What did it log, from the last boot?
journalctl -u app.service -b
# Follow it live while you reproduce
journalctl -u app.service -fThe troubleshooting order
- Is the process alive and in the right state? (
ps,systemctl status) - What is it doing right now? (
strace,/proc/PID/status) - Where is the CPU / memory / I/O going? (
perf,systemd-cgtop) - What did it log? (
journalctl) - What changed since it last worked? (deploy, config, network, resource limits)
Operational Excellence & Incident Framework
SysDE is an operational role at heart. The incident framework is how you show you can run a system under fire - detect, respond, mitigate, and learn - without panicking and without blame.
The incident lifecycle
- Detect - the alert fires. What metric, what threshold, what blast radius? Good detection is a question of coverage and signal, not noise.
- Triage & page - who owns it, what is the severity, who is on the bridge. A clean handoff beats a heroic solo.
- Mitigate - stop the bleeding first: roll back, fail over, drain, throttle. Mitigation is not the fix; it is buying time.
- Communicate - status to stakeholders in plain terms: what is down, what is being done, what the ETA is. No jargon, no blame.
- Resolve & verify - confirm the system is actually healthy, not just quiet.
- Postmortem - a blameless write-up: timeline, root cause, contributing factors, and concrete actions. The goal is the next incident is shorter, not who to blame.
Metrics that matter
Scenario cards
Day-by-Day Preparation Plan
Eight days from today to the interview. Each day has one theme and a small, finishable set of tasks. Do the work daily rather than cramming the night before.
Foundation
- Read this guide end to end
- Confirm the interview order and logistics with your recruiter
- Write out your STAR-R story bank for all 16 principles
Networking
- TCP/IP deep dive: handshake, teardown, congestion control
- Run tcpdump and ss on a real connection
- BGP: messages, path selection, route flaps
Networking & DNS
- DNS resolution path and failure modes
- Load balancing: L4 vs L7, health checks, draining
- Practice narrating the end-to-end packet path
System design
- Telemetry pipeline: sketch and scale it
- Device fleet: registration, heartbeat, OTA, staged rollout
- Manufacturing infra: edge, local control, reconciliation
Coding
- Warm up Python: streaming a log, defensive parsing
- Warm up Bash: idempotent orchestration
- Run a timed LiveCode practice session
Linux internals
- cgroups and namespaces
- procfs: read /proc for a real process
- strace, perf, systemd, journalctl on a test service
Incidents & STAR
- Walk the incident framework with a real past incident
- Rehearse the STAR-R stories with real numbers
- Do a mock behavioral interview
Rehearsal & logistics
- Full mock loop: one of each interview type
- Confirm travel, equipment, and quiet space
- Prepare questions to ask, and pack the day-of checklist
Interview day
- Follow the day-of playbook below
- Arrive early, breathe, and answer in the STAR-R shape
- Send a thank-you note to each interviewer
Interview-Day Playbook
The day of the interview is execution, not learning. This is the checklist and the mindset that carries you through all five sessions.
Before you start
During the loop
The closing move
End each session by asking the interviewer what they are looking for in this role and what the team is building next. It is the strongest signal of engagement, and it gives you the information to tailor the next session.
Questions to Ask & Sample Questions
A short list of questions to ask your interviewers, plus the sample technical questions to practice against so nothing on the day is a surprise.
Ask the interviewers
Practice against these
Sources & Further Reading
The authoritative public references behind this guide. Read the ones you are weakest on in the days before the interview.