Mathematical foundations of information technology
Algorithms, data structures and programming
Educational practice
Object-oriented programming I
Software development tools
Web programming
Operating systems
Production practice
System programming
Database management systemspre
Architecture and organization of computer systems
Computer networks
Information security and information protection
Software tools and methods of information protection
Cryptography
Predgraduation/professional practice
Fundamentals of scientific research
Introduction to Inclusion: Foundations and Practices
Artificial Intelligence and Neural Network Techno
logiesAdvanced artificial intelligence techniques
Neural Network Engineering
Project management
Business Application Programming
Object-oriented programming II
Machine-oriented programming
Development of secure software
Fundamentals of parallel programming
Programming of mobile devices
Basics of cloud technologies
Operating system security
Design of microprocessor systems and networks
Database Security
Expert systems
Electronics
Digital circuitry
Network security
IT - Infrastructure
Reliability of information systems
Information theory
Data Mining
Methods of information security assessment
Technical means and methods of information protection
Computer information protection technologies
Authentication, certification and PKI
Interfaces of computer systems
Information security standards
Organizational and legal methods of information protection
Fundamentals of information security management
Fundamentals of Cryptanalysis
Cryptographic methods of information protection
Learning outcomes and competencies
Analyze software development processes and activities; justify the selection of standards, methods, tools, and programming languages for software development; and prepare software design and operational documentation.
Select optimal data structures, develop algorithms, implement them using programming languages, debug and analyze software source code, and prepare technical reports and documentation.
Apply database design principles, query optimization techniques, ORM systems, data migration and transformation procedures; evaluate software performance; design standard databases; develop database functionality; select and use appropriate ORM systems; and ensure database security. Demonstrate an understanding of virtualization technologies and shared resource management; be able to deploy applications using cloud infrastructure for computing and/or data resources; develop correct and scalable parallel algorithms using task-based or data-parallel decomposition; and evaluate various methodologies for the effective application of data mining.
Demonstrate knowledge of the architecture and operating principles of hardware, software, and hardware-software systems used in computer systems and networks; work with measurement and testing instruments; configure operating systems; demonstrate knowledge of the organizational and legal foundations of information protection, the main types of information security policies, and methods for identifying risks to information assets; be able to develop an information security risk matrix, monitor information security, and mitigate the consequences of failures and malfunctions of network devices and operating systems.
Develop and use hardware and software tools for error correction during data transmission and processing in telecommunications systems; use cryptographic primitives and assess security threats associated with attacks on cryptographic primitives; understand the requirements for integrating security into the software development life cycle and best practices for minimizing vulnerabilities in source code; and demonstrate the ability to conduct static and dynamic security testing and evaluate the security of software applications.
Diagnose hardware performance issues and troubleshoot malfunctions and failures in computer hardware; conduct observations and measurements; document and properly present results; and interpret and process measurement data, taking into account its significance and consistency with theoretical principles.
Understand the terminology and conceptual framework of specialized disciplines; apply the knowledge and methods of technical sciences in professional practice; demonstrate readiness for professional activity in the chosen field in accordance with scientific and professional interests; possess fundamental theoretical and practical knowledge of the specialty; design and develop software at various levels; and demonstrate the ability to organize one's own work, determine methods and approaches for completing professional tasks, and evaluate their effectiveness.
Apply appropriate mathematical methods and algorithms to solve professional problems, drawing on mathematical analysis, discrete mathematics, probability theory and mathematical statistics, information theory, and number theory. Demonstrate knowledge of physical phenomena and the operating principles of modern computing devices and networks; model physical processes; conduct experimental research; and process experimental results.
Understand computer architecture, the principles of organizing multiprocessor and multi-computer systems, and the fundamental concepts of systems programming; justify the architectural design of modern computers, systems, and networks; develop programs using API functions; apply operating-system security mechanisms to ensure organizational system security; possess system administration skills; and use the capabilities of modern programming environments and languages to implement algorithms in practice and debug software source code.
Analyze information obtained from global computer networks and corporate information systems; use modern information and communication technologies to acquire, select, and process information; prepare and present analytical documentation in the state language, Russian, and English; and adhere to socially significant principles of a healthy lifestyle.
Apply analytical and axiological approaches when studying historical events and processes; engage in philosophical discussions and defend one's own positions with reasoned arguments on current issues of contemporary society; understand the nature of the state and law; formulate socially significant goals for future professional activities; and demonstrate psychological readiness for the requirements and nature of professional work amid accelerating change and the challenges of the modern world.
Apply collaborative analysis, design, and decision-making methodologies to establish and develop one's own business; make decisions in complex professional situations; organize teamwork to solve problems; develop managerial decisions and carry out organizational activities to implement them in practice. Navigate communication situations in professional business contexts by determining appropriate communication strategies and verbal behavior tactics. Demonstrate motivation for creativity and the successful implementation of new ideas in the professional sphere; possess the ability to engage in self-directed learning and improve one's general intellectual and cultural competence; maintain zero tolerance for corrupt practices and demonstrate respect for rights and the rule of law.