In a group of 4 we wrote and progressively optimised a social force crowd simulation in C, tuning it for vectorisation, cache locality and raw throughput.
In a group of 5 we designed and implemented a capability-based microkernel operating system from (more or less) scratch for a multi-core microcontroller.