Engineering has made leaps and bounds towards a more efficient process of building software since the early waterfall days. Agile methodologies have helped guide the way. As design has become more important to a product's success, designers have earned a seat at the table. Now design too has adapted to similar approaches to building software. What has helped us get to where we are and how we build? What has taken design so long to catch up with engineering?