Software development

Introduction to the Git version control system

Examines the most advanced version control system in the world – Git: the basic concepts of distributed VCS, the features of Git. You’ll want to fly from the speed, easy branching and support for different workflows.

Development through testing (TDD)

During the course, students will be introduced to this engineering practice of agile development and get hands-on experience developing an application using TDD. The course includes the theory and practice of unit testing and will be useful to novice developers regardless of the methodologies used in the project.

Introduction to SQL

The course introduces the trainee to the basic features of the SQL language and provides insight and skills to search and modify data in databases based on the SQL language. The course is aimed at developers, analysts and other professionals who need to learn the basics of SQL. After the course, students will be able to perform basic database operations using the SQL language. Theoretical material is supported by examples and tasks for independent performance under the guidance of a trainer

DevOps basics

An introductory course in DevOps. Examines principles, practices, and basic tools.

Code quality analysis in Sonar Qube

The course is devoted to the technique of the code quality analysis with the help of the specialized tool Sonar Qube.

DevOps and Continuous Delivery for Developers

A course about the basics of DevOps and Continuous Delivery. The principles, values and metrics of DevOps, configuration management, the concept of infrastructure as code, release management, continuous integration, continuous delivery are covered. Frequent product release antipatterns are explored separately.

Developing secure, decentralized applications on the Ethereum blockchain

Today’s blockchain platforms enable the development of distributed fault-tolerant applications (dApps) capable of accumulating and distributing users’ digital assets according to the rules described in a smart contract. The cornerstone of dApp development is the security of the application as it operates on users’ digital assets and cryptocurrency. This course covers the process of developing a dApp for the Ethereum blockchain platform and Solidity smart contract language, with a focus on the reliability and security issues of the developed solution through the use of modern smart contract testing and static analysis tools: Truffle, Mythril, SolTracer.

Golang

A basic course in the Go programming language. Covers the basic data types of the language, control structures, programming style features, and built-in compiler tools. Additional attention is paid to the capabilities of the standard library, and examples of practical tasks, in particular the implementation of REST-interfaces.

Fundamentals of the Agile methodology for software development

The course discusses the principles and develops skills for working in Agile (Scrum, XP, Kanban) through discussions and practical exercises with game elements that illustrate the basic practices of Agile development.

Basics of XML, XPath, Altova

The course covers the rules for using XML correctly to store information, how to search for and retrieve blocks of information using XPath, and how to use Altova XMLSpy to create and edit XML and validate XML in the Altova environment. The course details the syntax and functions of XPath.

Advanced level of XSD use

The course is devoted to XSD (XML Schema Definition) technology for validation of XML documents. Students will learn how to read and create XSD schemas for XML, extend existing XSD schemas, and validate XML against a specific XSD schema.

Advanced use of XML, XPath, Altova

The course covers how to extract information from XML using XPath, the differences between XPath 1.0 and 2.0, and how to convert XML using XPath. The course also includes extended information on XML namespaces and XPath functions.