After completion of English-preparatory program, students of the Department of Software Engineering first pass through the engineering core program and then learn basic engineering concepts and then the fundamentals of Software and Computer engineering in theoretical and applied departmental courses. While students also specialize in certain areas of Software Engineering through elective courses they choose, they also have a broader vision and alternative perspectives through elective courses outside the department.
Students who successfully complete the TEDU Software Engineering Department graduate with competence in the following subjects:
- Popular programming languages and basic programming techniques.
- Advanced Object Oriented Programming
- Data Structures and Algorithms: How to store and use the data that form the basis of Software Engineering research and the operation of the algorithms used to process data.
- Relational Databases: Techniques necessary for storing huge amounts of data on a regular basis and accessing them quickly and efficiently when necessary.
- Software design templates, software validation and verification techniques.
- Software projects planning, management and development processes.
- Software requirement analysis, modeling and agile software development techniques.
- Software quality and assurance
- Artificial intelligence and machine learning techniques
- Social media studies, web programming
- Mobile programming, game programming
- Operating Systems: The basic structures and operation of operating systems, which is the main program that enables computers to operate.
- Information security