Curriculum: "Software Engineering"

Year 2012/2013 courses


Specializations

Semester

Data mining

Virtualization

Systems

1st Semester
(First year, Fall)
С++ programming language
Algorithms
Databases
Mathematical logics
Algebraic structures
Operation systems
Combinatorics
Graph theory
Introduction to Unix
Script languages
Seminar on technologies
Practice Practice Practice
Foreign language (optional)

2nd Semester
(First year, Spring)
Algorithms, part 2
C++ programming language, part 2
Java for C++ developers
Theoretical foundations of programming languages
Functional programming
Software Design
Software Engineering
Seminar on technologies
Introduction to data mining
Machine learning
Linux kernel development
Practice Practice Practice
Foreign language (optional)

3rd Semester
(Second year, Fall)
High-performance computations
Databases, part 2
Software Testing
General and generative programming
UI development
Computational Geometry
Computer Graphics
Networks
Virtualization and Virtual Machines
Seminar on technologies
Machine Learning, part 2
Windows kernel development
Languages for Java VM
Data analysis Algorithms on shared memory Formal verification
Web search
Compilers
Practice Practice Practice
Foreign language (optional)