During the spring of my sophomore year at Williams College I took a project-based distributed systems course. Over the course of the semester in partner projects I worked on server from scratch written in C using a queue-based model to handle requests in a highly resilient manner, a multi-server e-commerce system with an iOS client communicating over XML-RPC, and set up a Hadoop cluster to analyze advertising data, correlating customers to impressions.
For the final project in the class,