A design problem is a (non-convex, non-differentiable) optimization problem that involves finding a feasible solution that delivers some required functionality using minimal resources; a (co-)design problem is the composition of many such design problems by three operations: series, parallel, and feedback. In this seminar we will (1) show that there is a category of design problems where the three operations above correspond to the composition, monoidal product, and trace, (2) illustrate the theory with several examples from robotics, and (3) explore some fun extensions suggested by the category theory. This is joint work with Andrea Censi and David Spivak.