The educational program “Software Engineering” includes disciplines on the basics of IT technologies and software tools that allow students to position themselves as professionals in the field of IT technologies, including the development and maintenance of software of various scales. Based on the results of the training, students will freely master the skills of managing IT technologies in a company, as well as several programming languages, and will be able to develop software for large companies, such as banks, insurance companies, government and national organizations, and others. The program will also develop skills in developing an application for mobile devices, databases and a web application.
Admission Committee
(7172) 64-57-10
info@astanait.edu.kz
Mon-Fri 9:00 – 18:00
Provide practice-oriented training of highly qualified specialists in the field of software development, qualified developers of software and information systems and software architects, experts in software quality, software testers for the IT industry of the Republic of Kazakhstan.
The course considers the modern history of Kazakhstan as part of the history of mankind, the history of Eurasia and Central Asia. The modern history of Kazakhstan is a period in which a holistic study of historical events, phenomena, facts, processes is carried out, the identification of historical patterns that took place on the territory of the Great Steppe in the 20th century and to the present day.
The course involves the study of the discipline of philosophy as a special form of spiritual studies in its cultural and historical development and modern sound. The main directions and problems of world and domestic philosophy are studied. Philosophy is a special form of knowledge of the world, creating a system of knowledge of the general principles and foundations of human life, about the essential characteristics of a person’s relationship to nature, society and spiritual life, in all its main direction.
The course includes an intensive English language program focused on grammar and speaking skills. The course includes topics reflecting the latest developments in information technology, and a terminological dictionary makes them directly relevant to the needs of students.
The course occupies a special place in the system of training bachelors with an engineering education. For students of a technical university, the study of professional Kazakh / Russian languages is not only the improvement of the skills and abilities acquired at school, but also a means of mastering the future specialty.
The course includes the study of modern information technologies, including methods and means of communication between people in ordinary and professional activities using information technologies. These technologies are studied in relation to the search, collection, storage, processing and dissemination of information.
The course is devoted to general political knowledge for specialties in the field of information technology. The course includes political self-awareness, improvement of one’s political outlook and communicative competencies. Political knowledge education is communicative, interactive, student-centered, result-oriented and relies heavily on students’ independent work.
The course includes knowledge of sociological subject areas, research methods and directions. The course will discuss in detail the main sociological theories and the most effective ways to gain in-depth knowledge about various aspects of our modern society. Of particular importance of this course for students is the opportunity to develop the sociological imagination, to understand the basic concepts of sociology as a science.
The course presents the issues of psychology in a broad educational and social context. The knowledge, abilities and skills acquired and formed as a result of mastering the course content give students the opportunity to apply them in practice in various areas of life: personal, family, professional, business, public, in working with people – representatives of different social groups and age categories.
The course will help to become the basis for studying the entire complex of social sciences and humanities, as well as an addition to general courses in history and philosophy. The course includes topics such as morphology, semiotics, anatomy of culture; the culture of the nomads of Kazakhstan, the cultural heritage of the proto-Turks, the medieval culture of Central Asia, the formation of Kazakh culture, Kazakh culture in the context of globalization, the cultural policy of Kazakhstan, etc.
The course is devoted to the formation of personal physical culture and the ability to use various means of physical culture for the preservation and promotion of health.
The discipline introduces students to modern concepts and tools of entrepreneurship and obtaining the theoretical knowledge and practical skills necessary to launch their own startup, taking into account the basics of life safety. On the basis of law and anti-corruption culture, the process of obtaining a patent, the legality of ownership of technological development is being studied, taking into account the legislation of the Republic of Kazakhstan in the field of intellectual property. Students apply strategic analysis in the field of economics, management, communication and technological entrepreneurship.
As part of the academic discipline, the student studies the essence of entrepreneurial activity on the basis of the current legislation of the Republic of Kazakhstan. The course will demonstrate the role and place of small businesses in the current conditions of functioning of the economy of the state and society. The discipline will allow you to understand the basic principles and content of the business plan of business entities, form a thinking based on a modern anti-corruption culture, explain the organizational forms of entrepreneurial activity, including taking into account sustainable development, ecology and personnel life safety.
The course includes: Matrix theory, systems of linear equations, vector theory, analytic geometry, limit and differentiation of functions of one variable
Academic discipline includes knowing the analysis of features represented in various ways and understanding the relationships between these different representations; understanding the meaning of the derivative in terms of rate of change and local linear approximation, and using derivatives to solve various problems.
The academic discipline introduces students to important branches of calculus and its applications in computer science. During the educational process, students should familiarize themselves with and be able to apply mathematical methods and tools (differential equations, series, double and triple integrals) to solve various applied problems.
Discrete mathematics is the part of mathematics devoted to the study of discrete objects (here, discrete means, consisting of separate or unrelated elements). More generally, discrete mathematics is used whenever objects are counted, when relationships between finite (or countable) sets are studied, and when processes involving a finite number of steps are analyzed. The main reason for the growing importance of discrete mathematics is that information is stored and processed by computers in a discrete manner.
The course teaches the study of patterns of random phenomena and their properties, and use them for data analysis. As a result of studying this discipline, students will know the basic concepts of probability theory and mathematical statistics and their properties, as well as be able to use probabilistic models in solving problems, work with random variables, calculate sample characteristics, and evaluate the reliability of statistical data.
The course teaches students to use a programming language to develop functional websites and interfaces, and also allows them to master the basics of working and interacting with a database. The course teaches the development of functionality and user interface running on the client-side of an application or website. In the process, students will have the opportunity to create and develop a convenient, simple and demanded website.
The course teaches students to use a programming language to develop logical elements of functional websites, and also allows them to master the basics of working and interacting with a database. In practice, students use any of the universal languages: PHP, Ruby, Python, Java. In addition, backend development involves DBMS (MySQL, PostgreSQL, SQLite, MongoDB, etc.).
The course examines classical algorithms (search, sorting, etc.) and data structures (queue, stack, tree, graph) used in programming. The principles of constructing algorithms, tools for their description, the concepts of complexity and performance, the main classes of algorithms are considered.
This discipline covers an introduction to mathematical courses necessary for mastering specialized disciplines of computational science based on numerical solutions of deterministic and probabilistic equations of mathematical physics and applied models used in technical production and the financial sector. Namely, it covers the theory of ordinary differential equations, their typification and basic methods of analytical solution and an introduction to partial differential equations.
The course studies the OSI model, the main physical and link layer protocols, types of equipment, design and configuration of local networks, subnets, etc. As a result of mastering, students will know and understand the principles of operation and design of computer networks, master the basic skills of working with operating systems of network devices of the Linux family to configure them.
The course addresses the development of innovative approaches to creating and documenting software architecture. The course aims to highlight existing approaches to the documentation of architectural design, build the relationship between functional objects used as units of architecture, show how they affect the final result of a company’s activity, identify “external” events that also affect, and sometimes determine, the software architecture providing enterprises and recommend the development directions of already existing architectures.
Capstone includes the design and implementation of a communications network that utilized Voice over Internet Protocol (VoIP) over a wide area Ethernet (WAN) network.
The course forms students’ understanding of the field of information security, its constituent components, main threats, protocols and protection tools. During the study, students will acquire basic information security skills and become familiar with professional tools and programs.
This course teaches how to understand the main differences between Russian and Western writing tradition; learn what it means to be constructively critical as a reader and self-critical as a writer; learn the specific of academic vocabulary, grammar and style; practice to create a well-structured paragraph; obtain practical skills in using argument and evidence in your writing; be able to write an academic essay.
This course is developed to learn programming fundamentals and writing algorithms in C++ programming language. During this course, students will improve programming skills, writing simple algorithms using C++ technologies.
It gives the student an initial base in the C++ development, with an emphasis on learning basic programming principles, ranging from I/O operations, variable management, using flow control capabilities and implementation.
The course is designed to learn the basic concepts of object-oriented programming in Java.
The course is designed to explore the basics of programming, debugging, and software implementation. The course also analyzes how networking technologies and programs work using the Python programming language.
The course includes and involves the study by students of the most popular relational and non-relational database management systems, as well as a set of general or special-purpose software and linguistic tools that manage the creation and use of databases.
The course is designed to reinforce students the basics of programming and developing software systems using the studied programming language, and during the course a small ready-made application will be developed as a result of the course.
The course based on concrete examples. Develop mathematical methods through examples and construct algorithms to solve concrete problems. The course includes the following topics: recursions, sums, integer functions, elementary number theory, binomial coefficients, special numbers, generating functions, discrete probability, asymptotics.
This course is an intermediate class covering the design of computer algorithms and the analysis of sophisticated algorithms. Students learn how to analyze the asymptotic performance of algorithms, and gain familiarity with major algorithms and data structures. They also apply important algorithmic design paradigms and methods of analysis, in addition to synthesizing efficient algorithms in common engineering design situations. Course materials are designed to help students understand the difference between tractable and intractable problems and to become familiar with strategies to deal with intractability.
The course involves the study of the basic technologies of game development. The idea is to create a game starting from concept to complete completion. Students will learn how to create computer games, learn the interface, and understand the basic concepts.
The course involves the study of methods of designing reliable software and the conditions for their implementation. Students will know the requirements for functional reliability and software architecture of critical systems.
The course is intended for a more advanced study of the Java or Python programming language, including the study of JSP (Java Server Pages), Servlet, JDBC (Java Database connection), including many basic principles of Java to Enterprise Edition (Advanced Java EE).Exception Handling, Generics, Delegates, Events, Lambda Expressions, Extensions Methods, LINQ, Nullable Types, Dynamics, Asynchronous Programming with Async / Await, and other topics.
This course is designed to learn the basics of mobile development. Mobile applications received as a result of the course can be downloaded to the university repositories and also displayed on the Play Store.
The course continues the Advanced Programming 1 course and is intended for a more advanced study of the programming language.
This course is predefined for advanced mobile operating systems. Mobile applications, received as a result of coursework, can be downloaded in the university repository, also downloaded in the Play Store.
The course involves the study of one of the most important components of an object-oriented technology for software development – software design patterns. This course is a formalized description of a frequently encountered design problem, its successful solution and recommendations on the application of this solution in various situations.
The course involves studying the architecture of a computer, or describing it at some general level, including a description of user programming capabilities, a command system, an addressing system, memory organization, etc., and also includes studying the structure of a computer as the totality of the functional elements of the computer and the relationships between them.
The course develops students’ knowledge of the basic mechanisms and devices of operational systems, the specifics of their interaction with the hardware of a computer, and introduces them to the principles of system programming at the level of Linux operating systems.
Be able to use project management tools at various stages of the project life cycle, make a qualitative and quantitative assessment of project risks, determine the effectiveness of the project
The course aims to provide students with a broad understanding of research methodology, including science theory, qualitative and quantitative methods and the development of a research proposal for a thesis project. By the end of the course, students will be proficient in critical reading of the scientific literature and competent in planning, conducting, evaluating and presenting a research project.
The course is designed to learn the fundamentals of software testing and quality assurance, which are an essential step in the development of any software system. The correct approach to testing software systems will allow students to avoid many mistakes when developing real systems.
This course is intended to develop software systems and applications with focus on cloud solutions where it is most effective. Students have the opportunity to work with a variety of cloud technology providers such as Amazon, Google, Microsoft. They will learn how to deploy cloud solutions for databases, data analytics, and machine learning. The course contains following topics: “Load Balancing”, “Scalability, Availability and Fault Tolerance”, “BigQuery”, “Machine Learning on Unstructured Datasets”, etc.
Industrial practice of students
Undergraduate practice of students
The course goal is to acquire the theoretical and practical knowledge in the field of artificial intelligence in general and in particular in the creating of algorithms capable of learning. The course examines the basic machine learning algorithms, various approaches and technologies for data analysis, their qualities, features and impact in various fields of science and technology. As an outcome of mastering the course, students will be able to apply machine learning methods to visualize their data, build graphs, and present the results qualitatively.
Knowledge in the field of machine learning and deep learning is systematized. Knowledge in modern approaches to object detection, will have experience in solving classification and segmentation problems, learn how to build and train neural networks. The subject will give an overview of computer vision tasks and the basic tools that are needed to solve them.
The aim of the course is to give students the basics of computer graphics based on computer graphics libraries such as OpenGL, which are the foundation of modern graphics applications. The course includes topics such as: modern OpenGL syntax, GPU acceleration, shaders, textures, introduction to GI, PBR, Vulkan, Raytracing, etc. After completing the course, students can create basic game engines, scientific visualization with using the GPU.
Database design methodology for NoSQL systems. The approach is based on NoAM (NoSQL Abstract Model), a new abstract data model for NoSQL databases that uses common features of various NoSQL systems and is used to define a system-independent representation of application data. Overall, the methodology aims to support the scalability, performance, and consistency needed for next-generation web applications.
The discipline introduces students to the main directions in the development and use of data storage systems. The purpose of teaching the discipline: to create a base for the application of modern methods of data collection and analysis to solve practical problems and to develop students’ ability to create the necessary data warehouse architecture for analyzing large data sets in order to obtain aggregated information.
The course assumes a comprehensive understanding of the basic technology and concepts of blockchain, including distributed ledger technology, consensus mechanisms and smart contracts, provides the skills and knowledge necessary for the design and development of decentralized applications using blockchain technology
This course involves the study of the operating system in providing the user experience provided by modern applications on modern computers
The course will provide practical experience in creating and deploying decentralized applications through a series of practical exercises and projects, preparing for the creation of secure smart contracts, decentralized applications, decentralized financial services, NFT and GameFi projects