Experience from industry shows that graduates in computer science generally lack many of the skills required in software development projects. This presents a challenge to academic institutions. This paper describes our experiences in implementing a course in software engineering at a Swedish university. A set of challenges is presented and it is described how these were met using a combination of lectures and project work. The results of the projects, the lessons we have learned, and the feedback from the students are discussed. Keywords Software engineering, Education.