Software / systems / curiosity San Jose, California

RYAN
CHOU.

I build software.
I get curious about
everything underneath.

Computer science at UC Santa Cruz.
Hands-on with code, infrastructure, and hardware.

Scroll to explore
01 / Experience Currently

Fremont, California · Aug 2026 — present

Closer to
the hardware.

Understanding a system means knowing what happens when it doesn’t work.

Quanta Manufacturing Fremont

Test Technician

Working in the testing department with switches, compute trays, and the connections that keep them running.

  • Created an SOP for OSFP-board replacement.
  • Work with RJ45 and DAC cables, BMC, switches, and compute trays.
  • Apply systematic debugging to investigate hardware issues.
Hardware testingDocumentationDebugging
Inside the debugging process

From rack to resolution.

Skip walkthrough ↓

Scroll through the debugging walkthrough.

GB300 / Engineering workflowIllustrative system · Sanitized data
Rack / System context
00 / System context

GB300 system debugging.

One system. Several fault domains.

NetworkComputeComponentsSystem state

Follow the fault from rack to component, then turn the findings into a repeatable procedure.

01 / Configure

Bring-up starts here.

Is the environment ready for testing?

CONSOLE-01 / Serial console
console > connect
switch > configure
interface > status
network > verify
IP 10.x.x.x
MAC XX:XX:XX:XX:XX:XX
Shop floor configurationCONFIGURED
02 / Isolate

Change one variable.

Where does the failure follow?

CT ACable BPort A
PASSSame CT. Same port. Known-good cable.
CT? · less likelyCable A · suspectPort? · less likely
01 · Cable A TEST FAIL
02 · Cable B PASS
03 · Cable A TEST FAIL

Reintroduce Cable A to confirm the failure follows it. Hold the compute tray and port constant.

03 / Physical path

Inspect the connection.

Does the physical path match the test result?

LINK UPInspect → Reseat → Verify
Cable seatingConnector damagePowerPort state
04 / Verify

Read the system state.

Does the observed state confirm the reported failure?

CT A / System verification
sensor_01     OK
sensor_02     OK
temperature   42 C
power         OK
nic_state     UP
device_state  READY
firmware      CHECKED
logs          REVIEWED
sensor_03     WARN ↗

Trace the abnormal observation back to the related hardware region before deciding what needs service.

05 / Repair

Service. Then retest.

What needs physical investigation?

LocateInspectRemoveReplace / ReseatRetest
RETEST PASSComponent seated. System state verified.

OSFP board shown as a representative service component. A warning guides investigation; it does not establish the cause by itself.

06 / Document

Make the next diagnosis easier.

How does a repair become shared knowledge?

SOP / Generalized debugging flow
Failure detectedVerify sensor / stateInspect / ReseatRetest
PASS ↓
Document / Close
FAIL ↓
Escalate

Turning repeated failures into repeatable debugging procedures.

Read the debugging workflow
  1. Configure. Connect to the serial console, verify network state, and use sanitized device values to complete bring-up.
  2. Isolate. CT A + Cable A + Port A fails. Change only to known-good Cable B: pass. Reintroduce Cable A: fail. The original cable is implicated; CT and port are less likely.
  3. Inspect the physical path. Check connector damage, cable seating, power, and port state. Reseat the RJ45 connector and verify the link.
  4. Verify. Check sensors, temperatures, power, NIC, devices, firmware, and logs. Map an abnormal sensor observation back to the related hardware region.
  5. Repair. Locate and inspect the representative OSFP board, remove and replace or reseat it, then retest. A sensor warning alone is not a component diagnosis.
  6. Document. Convert the component view into a technical diagram and a generalized SOP. After retesting, document a pass or escalate a failure.
Two internships / Two perspectives

A little further
from home.

Different places. New ways to solve a problem.

01 / Osaka, Japan

July 2025

Teaching a travel
assistant where to look.

AI Engineering Intern Nanobase

Built a Mastra AI travel assistant that turns Japan travel blogs into a searchable, vector-backed knowledge base.

Implemented retrieval of relevant chunks instead of full documents, improving answer relevance and context efficiency. Presented the prototype using RAG, embeddings, and MCP concepts.

MastraRAGEmbeddingsMCP
02 / Toronto, Canada

September 2025

Turning past fixes
into shared knowledge.

RMA & Documentation Intern Lanner Electronics Canada

Investigated historical RMA email threads to find recurring issues and confirmed fixes, then turned that knowledge into internal wiki documentation.

Built a Python and local-LLM workflow to convert email files into structured Markdown, with guardrails for issue summaries and resolution steps.

4 20

Wiki entries per day

PythonLocal LLMsAutomation
Across the Pacific
Osaka JPToronto CA

Explore the internship stories below.

Internship locations · City-level positions

02 / Selected projectsGitHub ↗

Built. Broken.
Figured out.

A few ways I put what I learn into practice.

DNSPROXYSERVICES
CONTAINERSDATANETWORKS
A small corner of the internet, self-hosted.
01 / InfrastructureOngoing

My own piece
of the internet.

Own and administer a VPS-based stack: containerized services, isolated networks, reverse proxies, databases, and email. Keeping it running is part of the project.

Write automation for backups, batch renaming, symlink-based organization, and recurring maintenance. Keep services clean and deployments recoverable.

LinuxDocker · GluetunNGINX · CaddyPostgreSQL · MariaDB · RedisCloudflare DNS
02 / SoftwareContributor

Stats in Term.

A terminal statistics application built in C with a Scrum-based team. Contributed through feature branches, frequent commits, and dev-to-main merges.

Wrote Unity-based unit tests and used Makefile-driven CI/CD workflows to validate changes before merging.

CUnity testsMakefileCI/CDGit
03 / Foundation

Always
learning.

2024 — 2026

UC Santa Cruz

B.S. in Computer Science

Regents Scholarship

2022 — 2024

De Anza College

Computer Science for Transfer

3.69 GPA · Dean’s List · Full IGETC/UC Certification

01 Languages

Python / Java / C / C++ / JavaScript / TypeScript / Bash / SQL / R / HTML & CSS

02 Systems & infrastructure

Linux / Git / Docker / VPS administration / VPN networking / PostgreSQL / MariaDB / Redis / NGINX / Caddy / Cloudflare DNS / SPF, DKIM & DMARC

03 Foundations & tools

Data structures & algorithms / Computer systems / Functional programming / x86 assembly / Discrete mathematics / Figma / Canva / Google Workspace / Microsoft Office

04 Human languages

Conversational Mandarin Chinese

04 / Beyond the screenA few other things about me

Not always
at a keyboard.

The same curiosity.
A different change of scenery.

Cattle grazing beside a dry hillside hiking trail overlooking the bay
01 / Taking the long wayGood company on the trail.
Three friends standing on a rocky summit beneath a clear blue sky
02 / Worth the climbA little less screen time.
Off the clock, still curious

Open it up.
Make it my own.

I like technology I can get my hands on: a modded ASUS ROG, an Xteink X4 Mini e-reader, and a digital camera whose screen I replaced.