C# and MS SQL Programming Course



Throughout the course, participants develop a real project using C#/.NET and SQL. C# and SQL are taught in parallel, as part of the project development process, providing an environment that closely reflects a real-world software engineering workflow.

Participants work with Git, Azure DevOps, Work Items, Pull Requests, CI/CD, and Code Review, applying modern software development practices throughout the course.

The course consists of three phases, with gradually decreasing mentor support: uided Development (weeks 1–4), Independent Development (weeks 5–8), and Team Development (weeks 9–11).

The course is intended for
  • Beginner programmers and students who have basic programming knowledge and want to apply their skills while working on a real project.

  • Required knowledge:
  • • Basic knowledge of any programming language, including variables, conditions, loops, functions, arrays, or lists
  • • Ability to read, understand, and modify small pieces of code, as well as perform basic debugging
  • • Ability to solve logical problems

  • Program

    C#

    1. 1. Getting Started with the Project — Git workflow, Azure DevOps, Repository, Branch, Pull Request, project architecture
    2. 2. Data Model — classes, properties, constructors, validation
    3. 3. Business Logic — methods, conditions, loops, enums, business rules
    4. 4. User Experience — UI logic, field validation, navigation, error messages, state management
    5. 5. Search and Reporting — LINQ, extension methods, projections, grouping, aggregation
    6. 6. Code Maintenance and Troubleshooting — debugging, logging, reading existing code, root cause analysis
    7. 7. Code Quality — SOLID, refactoring, interfaces, Dependency Injection, Unit Testing
    8. 8. Integrations — REST API, authentication, authorization, import/export
    9. 9. Teamwork — shared repository, merge conflicts, code review, planning
    10. 10. Project Completion — release preparation, product presentation, retrospective

    MS SQL

    1. 1. Introduction, Table Creation (Permanent and Temporary Tables), Relationships (Foreign Keys)
    2. 2. INSERT, UPDATE, and DELETE Statements
    3. 3. Basic SQL Queries
    4. 4. ADO.NET Core Fundamentals (SqlConnection, SqlCommand) and SQL Injection Security
    5. 5. Dapper Micro-ORM: Basic Operations (CRUD, Mapping, Parameters)
    6. 6. Advanced Dapper: Multi-Mapping, Stored Procedures, Transactions
    7. 7. Joins
    8. 8. Grouping and Aggregation
    9. 9. Subqueries
    10. 10. UNION, INTERSECT, and EXCEPT Operators
    11. 11. Stored Procedures, User-Defined Functions, and TRY...CATCH Blocks
    12. 12. Views and the APPLY Operator
    13. 13. Ranking Functions
    14. 14. Triggers
    15. 15. Transactions and Isolation Levels
    16. 16. Indexes and Query Execution in Databases (Execution Plan)

    Start


    February


    Duration


    11 weeks, 26 lessons, 2 hours


    Level


    1-st level



    Course Supervisors
    Robert Sargsyan Robert Sargsyan

    C#
    Programming Team Lead at Armsoft

    Mihran Simonyan Mihran Simonyan

    MS SQL
    Programming Team Lead at Armsoft


    Prerequisite for attending the course: written exam  (example).