Modern Programming
01.03.02 In English and Russian
Level of education Bachelor
Type of instruction Full-time
Duration 4 years
Programme description
- The academic programme ‘Modern Programming’ trains high calibre software developers who are capable of solving complex problems in all fields of information technology
- It is taught at the Faculty of Mathematics and Computer Science at St Petersburg University with the support of JetBrains in cooperation with the Chebyshev Laboratory and Yandex. The programme provides a profound mathematical background necessary for mastering courses in modern programming. Programming courses are taught by developers from leading IT companies, in particular JetBrains and Yandex. Small groups for practical classes create the ideal atmosphere for transferring knowledge that is relevant and essential for the industry. Even in their junior years, students participate in software projects under the supervision of experts
- The programme is suitable for: school leavers who are immersed in informatics and mathematics and have a profound basic background in these subjects; and participants in the school Olympiad movement who want to develop their skills in IT and programming and are willing to learn extensively and intensively from experienced teachers among like-minded people
Main courses
Basic courses
- Functional Programming
- Operating Systems
- Databases
- Algorithms and Data Structures
- Object-Oriented Programming
- Linux Fundamentals
- Fundamentals of Programming
- Theoretical Computer Science
- Probability Theory
- Mathematical Logic in Computer Science
- Machine Learning
- C Programming
- C++ Programming
- Algebra
- Computer Architecture
Elective courses
- Algorithms for NP-Hard Problems
- Introduction to Bioinformatics
- Software Testing
- Computer Graphics
- Bioinformatics
- Introduction to Programming Language Theory
- Convex Optimisation
- Fundamentals of Web Technologies
- Development of Web Applications
- Principles of Cryptography
- Linux Programming
- Parallel Programming
- Virtual Machines
- Compiler Development
- 3D Computer Vision
Our advantages
- Students are instructed in fundamental mathematical disciplines by outstanding teachers and scholars of the University, in particular, by research fellows of the P. L. Chebyshev Research Laboratory headed by the Fields Prize winner Stanislav Smirnov
- Traditional classical university education is combined with the up-to-date educational technologies. At the end of their second year, students are given the opportunity to choose the sets of academic disciplines: Machine Learning and Data Analysis, Cloud Technologies and Virtualisation, Industrial Programming, Programming Languages and so on
- Special attention is paid to specialised technological disciplines developed in collaboration with the leading IT companies (JetBrains, Yandex, etc.), whose employees are involved in teaching. The close interaction of the University and potential employers ensures the applicability of the knowledge provided to students
- In the process of learning, students will be able to choose programme-oriented and research projects they can work on under the guidance of their teachers or representatives of the partner companies
- Training in competitive programming will be organised under the guidance of leading instructors
- Personal scholarships from ten to fifteen thousand roubles a month from the JetBrains company
Career opportunities
Practical training is one of the most important components of the programme. Internships will be organised at such leading IT companies as JetBrains and Yandex.
The graduates are trained to work as:
- programmers
- developers
- data analysts, systems analysts
- researchers
- information systems engineers
The graduates are employed by research centres, educational institutions, businesses, and IT companies.