Preparation: Index

First created Jul 8, 2026 Last edited Aug 7, 2026

I’m starting an infrastructure internship at Neuralink in South San Francisco this fall, and in this folder I’m working through the concepts I’ll be using on the job. Some of them I already have a solid understanding of from previous work. Others are quite new to me.

The stack is Rust and Python, Terraform, Bazel and Nix, Kubernetes, GitLab CI, AWS, Ubuntu and Fedora. Beyond the tools, there’s cryptographic protocols and authentication (TLS, x509, 802.1x, U2F, SAML), the Linux boot process (UEFI, Secure Boot, TPM measured boot, systemd), networking, and hardware-in-the-loop testing.

Nine pages on that, then three on brain-computer interfaces themselves. I start August 31, 2026, so nothing here comes from inside the company.

The stack

  1. Build Systems and Reproducibility. Bazel and Nix. What “the same inputs give the same output” means in practice, why an organization pays for it, and what it costs.
  2. Provisioning Machines. Terraform, Packer, Ansible, Cloud-Init, Kickstart. How a machine comes into existence, and the difference between describing the machine you want and mutating one you have.
  3. Orchestration and the On-Prem Split. Kubernetes and AWS. What the scheduler does, and what changes when the hardware is in a building you own.
  4. CI as Infrastructure. GitLab CI. The pipeline as a system with its own runners, caches, artifacts and failure modes.
  5. Systems Languages. Rust, Go, C. Why infrastructure tooling gets written in a compiled language, and what Rust’s model buys and costs.
  6. The Linux Boot Chain. UEFI, Secure Boot, TPM measured boot, systemd. What runs between power-on and a login prompt, and what each link prevents.
  7. Identity and Cryptographic Protocols. TLS, x509, 802.1x, U2F, SAML. How a machine or a person proves who they are, on the wire and at the network port.
  8. Networking. What a packet crosses to get where it is going, and the protocols worth being able to read.
  9. Hardware in the Loop. Testing where the thing under test is a physical device, and what that breaks about ordinary CI.

The domain

  1. The Problem Space. What a brain-computer interface is and what it lets a person do.
  2. Signal Path and Decoding. From electrode to decoded intent.
  3. Infrastructure and Data Path. Where the neural data goes, and which parts of that are an infrastructure problem.

Pages fill in as I write them. The ones I haven’t gotten to say so.

Index

  • Build Systems and Reproducibility. Bazel and Nix: what a reproducible build guarantees, how each one gets there, and why an organization eventually pays for it.
  • Provisioning Machines. Terraform, Packer, Ansible, Cloud-Init and Kickstart: how a machine comes into existence, and declaring one versus mutating one.
  • Orchestration and the On-Prem Split. Kubernetes and AWS: what the scheduler is for, and what changes when the hardware sits in a building you own.
  • CI as Infrastructure. GitLab CI as a system with runners, caches, artifacts and failure modes, rather than a configuration file.
  • Systems Languages. Rust, Go and C in infrastructure tooling: what a compiled language buys, and what Rust's ownership model costs.
  • The Linux Boot Chain. UEFI, Secure Boot, TPM measured boot and systemd: what runs between power-on and a login prompt, and what each link prevents.
  • Identity and Cryptographic Protocols. TLS, x509, 802.1x, U2F and SAML: how a machine or a person proves who they are, on the wire and at the network port.
  • Networking. What a packet crosses to get where it is going, and the protocols an infrastructure engineer is expected to read fluently.
  • Hardware in the Loop. Testing where the thing under test is a physical device, and what that breaks about the ordinary CI model.
  • The Problem Space. What a BCI is, what problem it solves, and the shape of the field.
  • Signal Path and Decoding. From electrode to decoded intent: spikes, sampling, and the decode model.
  • Infrastructure and Data Path. Where the infra job lives: data volume, pipelines, retraining, and tooling around the decode.