rdiaz.dev
ricardo díaz·software engineer·machine learning
← back to posts

Ten years shipping Rails, then NYU

2025-09-10 · What a decade of production software teaches you about machine learning, and vice versa.

I spent ten years as a software engineer building things that worked in production — web apps, APIs, mobile clients. When I decided to go back to school for machine learning, I expected to feel like a beginner again. I did, but not in the ways I expected.

What transferred

  • Systems thinking. An ML pipeline is just a data pipeline with math in the middle. The failure modes are the same: bad data in, bad output out.
  • Debugging instinct. When a loss curve looks wrong, the first question is the same as when a test is failing: what changed?
  • Skepticism about benchmarks. I've seen too many A/B tests show lift that didn't survive production to trust eval numbers uncritically.

What didn't transfer

The math. I knew enough linear algebra to get through interviews, but understanding why attention works, or what CUDA memory hierarchy means for throughput, required going back to first principles. That's been the most humbling and most interesting part.

I'm writing this after one semester. Ask me again in a year.

bufposts·themedark