The main part of software engineering methods, tools and technologies has developed around projects as the central organizational form of software development. A project organization depends on clear bounds regarding scope, participants, development effort and lead-time. What happens when these conditions are not given? As software is increasingly developed, adopted and deployed in the form of customizable and configurable products, software engineering as a discipline needs to take on the challenge to support software ecosystems. The talk highlights a set of common features of product development and evolution despite differences in size, kind of software and business models. Design is distributed and needs to be coordinated across heterogeneous design constituencies that. The technical design has to support the deference of part of the development not only to 3rd-party developers but also to local designers tailoring the software in the use organization. Development takes place as cycles within cycles – overlaying development cycles with different rhythms to accommodate different evolution drivers. The reported practices challenge some of the very core assumptions of traditional software engineering, but make perfect sense, considering that the frame of reference for product development is not a project but continuous innovation across the respective ecosystem.