Knowledge management is one of the key enabling technologies of distributed engineering enterprises. It encompasses a wide range of organizational, management and technologically orientated approaches that promote the exploitation of an organizations' intellectual assets. Knowledge management approaches may be divided into personalization approaches that emphasize human resources and communication, and codification approaches that emphasize the collection and organization of knowledge. This distinction is used to explore the application of knowledge management in engineering design, after first outlining the engineering circumstances that have led to the current emphasis on the application. The paper then gives an overview of approaches to knowledge management through personalization, including human and organizational approaches, concentrating on the establishment of communities of practice. The role of information technology is explained both in terms of personalization (communication and team support through computer-supported cooperative work) and of codification through information management, knowledge structuring and knowledge-based engineering. The paper concludes with a discussion of the match of knowledge management approach to engineering circumstance, and of the current challenges of knowledge management.