Software engineering (SE) is concerned with developing and maintaining software systems that behave reliably and efficiently, are affordable to develop and maintain, and satisfy all the requirements that customers have defined for them. It is important because of the impact of large, expensive software systems and the role of software in safety-critical applications. It integrates significant mathematics, computer science and practices whose origins are in engineering.
Software engineering focuses on software development and goes beyond programming to include such things as eliciting customers’ requirements, and designing and testing software. SE students learn how to assess customer needs and develop usable software that meets those needs.
SE programs generally expect students to focus on a range of topics that are essential to the SE agenda (problem modeling and analysis, software design, software verification and validation, software quality, software process, software management, etc.).
Software engineer: job description
Software engineers are responsible for the complete life cycle of a new or modified software product, from research and design to implementation, training and support.
Typical employers of software engineers
• Software companies
• IT consultancies
• Electronics, IT and telecommunications companies
• Research and Academia