This document discusses complex systems engineering strategies. It describes properties of complex systems like emergence and self-organization. It outlines different behavior structures in complex systems from loose component collaboration to tight hierarchical control. Engineering strategies are proposed that take bottom-up self-organizing approaches, top-down traditional approaches, as well as middle-out and matchmaking approaches. Top-down, bottom-up, matchmaking and middle-out design methodologies are compared. The document concludes that complex systems require coordination strategies and controlled collaborative interactions to support useful emergent behaviors while avoiding chaos or rigidity.