<!DOCTYPE html><html lang="ru"><head><meta charSet="UTF-8"/><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no, viewport-fit=cover"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="image" href="https://mc.yandex.ru/watch/44973232"/><link rel="preload" as="image" href="https://vk.com/rtrg?p=VK-RTRG-410987-bLXUv"/><link rel="preload" as="image" href="https://top-fwz1.mail.ru/counter?id=3316675;js=na"/><link rel="preload" as="image" href="/_next/static/images/img/logo2022_without_text-ad6a01e8608432b9967c441a0f4760b4.svg"/><link rel="preload" as="image" href="https://cdn.otus.ru/media/public/0b/61/Banners_C_ASPNET_320x400-475823-0b6110.png"/><link rel="preload" as="image" href="/_next/static/images/img/otus-certificate-832bf0e82aba1cde68e7417b12683728.png"/><link rel="preload" as="image" href="/_next/static/images/img/upk-diploma-d6bca6c33b9795bec7d04fb91a431230.png"/><link rel="preload" as="image" href="/_next/static/images/img/light-3dd56d782c43dc1e78b7e0da7bb3fb50.svg"/><link rel="stylesheet" href="/_next/static/css/8cc264f7ea39f5c5.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/369ab862ca923128.css" data-precedence="next"/><link rel="stylesheet" href="/_next/static/css/1eb8edb263c0b31d.css" data-precedence="next"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-3018d93ec30a05b2.js"/><script src="/_next/static/chunks/b6261da7-560230abf0251a57.js" async=""></script><script src="/_next/static/chunks/8868-b22af6500d7f0373.js" async=""></script><script src="/_next/static/chunks/main-app-46cd73774d8d37e3.js" async=""></script><script src="/_next/static/chunks/b57a0ff0-f64b6c8491bc987c.js" async=""></script><script src="/_next/static/chunks/7761-f25228226f9fd7b1.js" async=""></script><script src="/_next/static/chunks/3260-e663d3aeeb454c53.js" async=""></script><script src="/_next/static/chunks/7844-5a1706e76e0167fe.js" async=""></script><script src="/_next/static/chunks/7985-5aa503ef1e488f37.js" async=""></script><script src="/_next/static/chunks/8012-ba13e2afafa1b32c.js" async=""></script><script src="/_next/static/chunks/4944-c0f1c1dc3dd5ddc8.js" async=""></script><script src="/_next/static/chunks/4888-09a084700e30f3b2.js" async=""></script><script src="/_next/static/chunks/2633-d7e691d1179a550f.js" async=""></script><script src="/_next/static/chunks/3242-4559e666a92af915.js" async=""></script><script src="/_next/static/chunks/8308-a718381dbc33cfb4.js" async=""></script><script src="/_next/static/chunks/app/layout-37aaf27e992c5aeb.js" async=""></script><script src="/_next/static/chunks/4419-cfc7a5f44d08cc1b.js" async=""></script><script src="/_next/static/chunks/5632-5ae1d5cde11086be.js" async=""></script><script src="/_next/static/chunks/3118-3c71903ee058260c.js" async=""></script><script src="/_next/static/chunks/7670-88498cb7f740ea45.js" async=""></script><script src="/_next/static/chunks/5873-a84150cef512c203.js" async=""></script><script src="/_next/static/chunks/8212-ad195a1ac639b812.js" async=""></script><script src="/_next/static/chunks/428-b85ac0b1d8ebbe87.js" async=""></script><script src="/_next/static/chunks/9374-dedf9cc8b15c395b.js" async=""></script><script src="/_next/static/chunks/4485-9ab23cf29f3d4493.js" async=""></script><script src="/_next/static/chunks/4089-38c618b1e8038db2.js" async=""></script><script src="/_next/static/chunks/1598-4e9e0a333affae09.js" async=""></script><script src="/_next/static/chunks/7234-0a01e49f09a75afe.js" async=""></script><script src="/_next/static/chunks/1701-caea77cd580b46da.js" async=""></script><script src="/_next/static/chunks/1589-5e9d65a97827bc49.js" async=""></script><script src="/_next/static/chunks/8817-f756b1c7094aa889.js" async=""></script><script src="/_next/static/chunks/3742-cf316c1014abe42c.js" async=""></script><script src="/_next/static/chunks/7624-a0236e3eec1f6b3c.js" async=""></script><script src="/_next/static/chunks/5588-acf8559ddd553204.js" async=""></script><script src="/_next/static/chunks/1613-9988dde0bcc22cd3.js" async=""></script><script src="/_next/static/chunks/app/error-37bbf3f7388748a0.js" async=""></script><script src="/_next/static/chunks/app/not-found-6846642e53dd56ba.js" async=""></script><script src="/_next/static/chunks/5408-7304a011593a4e7b.js" async=""></script><script src="/_next/static/chunks/4514-28d343fc6e2d14e0.js" async=""></script><script src="/_next/static/chunks/app/lessons/%5Bslug%5D/page-56f47397b9d2307e.js" async=""></script><link rel="preload" href="https://smartcaptcha.yandexcloud.net/captcha.js?render=onload&onload=onloadFunction" as="script"/><link rel="preload" href="https://store-b2b.ru/tag.js?id=wsse7xcbtr07r1&nomodule" as="script"/><link rel="image_src" href="/__new_static__/img/meta-image.png"/><link rel="shortcut icon" type="image/x-icon" href="/favicon.ico"/><link rel="preload" href="/_next/static/images/img/owl-flight-5d7d1106ce62f5dd4057eb334384e529.gif" as="image"/><link rel="icon" type="image/png" sizes="16x16" href="/_next/static/images/img/favicon-16x16-3dc5220f18624c2a6fd3aa3b081da00a.png"/><link rel="icon" type="image/png" sizes="32x32" href="/_next/static/images/img/favicon-32x32-dd124835ecce421e1bb2c8f849e49a3f.png"/><link rel="apple-touch-icon" href="/_next/static/images/img/apple-touch-icon-a4721dddcfb741a7e41d52e619f3820d.png"/><link rel="apple-touch-icon" sizes="57x57" href="/_next/static/images/img/apple-touch-icon-57x57-92769d5e197783e63f3bb3c8519c8912.png"/><link rel="apple-touch-icon" sizes="60x60" href="/_next/static/images/img/apple-touch-icon-60x60-dfaaf3934bc7ed111c8c306b967afeeb.png"/><link rel="apple-touch-icon" sizes="72x72" href="/_next/static/images/img/apple-touch-icon-72x72-693f0d64a225d5f0fe26ba5d088c8f14.png"/><link rel="apple-touch-icon" sizes="76x76" href="/_next/static/images/img/apple-touch-icon-76x76-f3487d673c3e7ae975cf190fb758ab10.png"/><link rel="apple-touch-icon" sizes="114x114" href="/_next/static/images/img/apple-touch-icon-114x114-98609536fdaa492edede039bdd03cff2.png"/><link rel="apple-touch-icon" sizes="120x120" href="/_next/static/images/img/apple-touch-icon-120x120-169d5a3cf2a78fa8e7dfa780f15abcb7.png"/><link rel="apple-touch-icon" sizes="144x144" href="/_next/static/images/img/apple-touch-icon-144x144-9b1aa25d8b37e9b97af4717495fd71bf.png"/><link rel="apple-touch-icon" sizes="152x152" href="/_next/static/images/img/apple-touch-icon-152x152-e04100124be68d4151efe4eb96227866.png"/><link rel="apple-touch-icon" sizes="180x180" href="/_next/static/images/img/apple-touch-icon-180x180-a4721dddcfb741a7e41d52e619f3820d.png"/><link rel="mask-icon" href="/_next/static/images/img/safari-pinned-tab-9b975a1bbe6e965061daed04a88d48e8.svg" color="#000000"/><meta name="msapplication-TileColor" content="#ffffff"/><meta name="msapplication-TileImage" content="/_next/static/images/img/mstile-144x144-c363ac4f42a2d7656bae44c971f5deab.png"/><title>Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС</title><meta name="description" content="Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС"/><link rel="manifest" href="/site.webmanifest" crossorigin="use-credentials"/><meta name="is_app_seo_default" content="false"/><meta name="vk:image" content="/__new_static__/img/meta-image.png"/><meta name="fb:app_id" content="486413851704844"/><link rel="canonical" href="https://otus.ru/lessons/asp-net/"/><meta name="yandex-verification" content="3019a35aeda6b45d"/><meta property="og:title" content="Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС"/><meta property="og:description" content="Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС"/><meta property="og:url" content="https://otus.ru/lessons/asp-net/"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС"/><meta name="twitter:description" content="Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС"/><script src="https://vk.com/js/api/openapi.js?162" type="text/javascript"></script><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script><style data-styled="" data-styled-version="5.3.10">.bmVffP{height:24px;width:24px;position:relative;}/*!sc*/
.kOdeIv{height:48px;width:48px;position:relative;}/*!sc*/
.cvcsLz{height:28px;width:28px;position:relative;}/*!sc*/
.gsweRb{height:88px;width:88px;position:relative;}/*!sc*/
data-styled.g3[id="sc-i28ik1-0"]{content:"bmVffP,kOdeIv,cvcsLz,gsweRb,"}/*!sc*/
.gNVXtU{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);}/*!sc*/
.gNVXtU > svg{display:block;}/*!sc*/
data-styled.g4[id="sc-i28ik1-1"]{content:"gNVXtU,"}/*!sc*/
.ViUGY{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.ViUGY{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.ViUGY{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.ViUGY{font-weight:700;}}/*!sc*/
@media (max-width:751px){.ViUGY{font-weight:700;}}/*!sc*/
.eMZyoN{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.eMZyoN{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.eMZyoN{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.eMZyoN{font-weight:400;}}/*!sc*/
@media (max-width:751px){.eMZyoN{font-weight:400;}}/*!sc*/
.kswXpy{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:62px;line-height:68px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.kswXpy{font-size:56px;line-height:60px;}}/*!sc*/
@media (max-width:751px){.kswXpy{font-size:32px;line-height:36px;}}/*!sc*/
@media (max-width:1201px){.kswXpy{font-weight:700;}}/*!sc*/
@media (max-width:751px){.kswXpy{font-weight:700;}}/*!sc*/
.enpOeQ{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:20px;line-height:24px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.enpOeQ{font-size:20px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.enpOeQ{font-size:16px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.enpOeQ{font-weight:700;}}/*!sc*/
@media (max-width:751px){.enpOeQ{font-weight:700;}}/*!sc*/
.jmLQpp{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:40px;line-height:48px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.jmLQpp{font-size:40px;line-height:48px;}}/*!sc*/
@media (max-width:751px){.jmLQpp{font-size:20px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.jmLQpp{font-weight:700;}}/*!sc*/
@media (max-width:751px){.jmLQpp{font-weight:700;}}/*!sc*/
.doSDez{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.doSDez{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.doSDez{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.doSDez{font-weight:400;}}/*!sc*/
@media (max-width:751px){.doSDez{font-weight:400;}}/*!sc*/
.bTMeHF{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:52px;line-height:64px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.bTMeHF{font-size:52px;line-height:64px;}}/*!sc*/
@media (max-width:751px){.bTMeHF{font-size:24px;line-height:28px;}}/*!sc*/
@media (max-width:1201px){.bTMeHF{font-weight:700;}}/*!sc*/
@media (max-width:751px){.bTMeHF{font-weight:700;}}/*!sc*/
.gGtEnS{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:24px;line-height:28px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.gGtEnS{font-size:24px;line-height:28px;}}/*!sc*/
@media (max-width:751px){.gGtEnS{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.gGtEnS{font-weight:700;}}/*!sc*/
@media (max-width:751px){.gGtEnS{font-weight:700;}}/*!sc*/
.hQBzUY{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.hQBzUY{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.hQBzUY{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.hQBzUY{font-weight:700;}}/*!sc*/
@media (max-width:751px){.hQBzUY{font-weight:700;}}/*!sc*/
.fPZiIk{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:24px;line-height:28px;font-weight:500;}/*!sc*/
@media (max-width:1201px){.fPZiIk{font-size:24px;line-height:28px;}}/*!sc*/
@media (max-width:751px){.fPZiIk{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.fPZiIk{font-weight:500;}}/*!sc*/
@media (max-width:751px){.fPZiIk{font-weight:500;}}/*!sc*/
.dvqddq{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.dvqddq{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.dvqddq{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.dvqddq{font-weight:700;}}/*!sc*/
@media (max-width:751px){.dvqddq{font-weight:700;}}/*!sc*/
.iFeEEh{font-family:'Roboto',sans-serif;font-size:14px;line-height:20px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.iFeEEh{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:751px){.iFeEEh{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:1201px){.iFeEEh{font-weight:700;}}/*!sc*/
@media (max-width:751px){.iFeEEh{font-weight:700;}}/*!sc*/
.iwrrOS{font-family:'Roboto',sans-serif;font-size:14px;line-height:20px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.iwrrOS{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:751px){.iwrrOS{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:1201px){.iwrrOS{font-weight:400;}}/*!sc*/
@media (max-width:751px){.iwrrOS{font-weight:400;}}/*!sc*/
.CWfAH{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.CWfAH{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:751px){.CWfAH{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.CWfAH{font-weight:400;}}/*!sc*/
@media (max-width:751px){.CWfAH{font-weight:400;}}/*!sc*/
.bDRAny{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.bDRAny{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:751px){.bDRAny{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.bDRAny{font-weight:700;}}/*!sc*/
@media (max-width:751px){.bDRAny{font-weight:700;}}/*!sc*/
data-styled.g14[id="sc-1x9oq14-0"]{content:"ViUGY,eMZyoN,kswXpy,enpOeQ,jmLQpp,doSDez,bTMeHF,gGtEnS,hQBzUY,fPZiIk,dvqddq,iFeEEh,iwrrOS,CWfAH,bDRAny,"}/*!sc*/
.igoKuA{-webkit-transition:background 0.2s ease-out,border 0.2s ease-out;transition:background 0.2s ease-out,border 0.2s ease-out;will-change:background,border;overflow:hidden;width:100%;cursor:text;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;border:1px solid #afafaf;background:#fff;color:#0f0f10;text-align:left;font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;height:56px;border-radius:12px;}/*!sc*/
@media (max-width:1201px){.igoKuA{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.igoKuA{font-size:16px;line-height:24px;}}/*!sc*/
data-styled.g16[id="sc-7tecya-1"]{content:"igoKuA,"}/*!sc*/
.dUXfnG{-webkit-transition:padding 0.2s ease-out,color 0.2s ease-out;transition:padding 0.2s ease-out,color 0.2s ease-out;will-change:padding,color;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;width:100%;max-height:100%;padding:16px 24px;}/*!sc*/
data-styled.g17[id="sc-7tecya-2"]{content:"dUXfnG,"}/*!sc*/
.ewcVbw{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;overflow:hidden;pointer-events:none;top:0;left:0;width:100%;text-overflow:ellipsis;white-space:nowrap;-webkit-transition:font 0.2s ease-out;transition:font 0.2s ease-out;will-change:font;color:#afafaf;}/*!sc*/
data-styled.g18[id="sc-7tecya-3"]{content:"ewcVbw,"}/*!sc*/
.bkPfUD{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;width:100%;background:transparent;overflow:hidden;text-overflow:ellipsis;margin-top:auto;opacity:0;}/*!sc*/
.bkPfUD::-webkit-input-placeholder{color:#afafaf;}/*!sc*/
.bkPfUD::-moz-placeholder{color:#afafaf;}/*!sc*/
.bkPfUD:-ms-input-placeholder{color:#afafaf;}/*!sc*/
.bkPfUD::placeholder{color:#afafaf;}/*!sc*/
.bkPfUD:disabled{background:transparent;}/*!sc*/
data-styled.g19[id="sc-7tecya-4"]{content:"bkPfUD,"}/*!sc*/
.hzdVAl{display:block;}/*!sc*/
data-styled.g23[id="sc-aobi4b-0"]{content:"hzdVAl,"}/*!sc*/
.eibrwt{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.eibrwt{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:751px){.eibrwt{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.eibrwt{font-weight:400;}}/*!sc*/
@media (max-width:751px){.eibrwt{font-weight:400;}}/*!sc*/
.fvUGfA{font-family:'Roboto',sans-serif;font-size:12px;line-height:16px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.fvUGfA{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:751px){.fvUGfA{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:1201px){.fvUGfA{font-weight:400;}}/*!sc*/
@media (max-width:751px){.fvUGfA{font-weight:400;}}/*!sc*/
data-styled.g26[id="sc-1x9oq14-0-Component"]{content:"eibrwt,fvUGfA,"}/*!sc*/
.chwycb{padding-right:48px;}/*!sc*/
data-styled.g29[id="sc-1uo0fn1-0"]{content:"chwycb,"}/*!sc*/
.jZoKM{position:absolute;top:50%;right:14px;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);}/*!sc*/
data-styled.g30[id="sc-1uo0fn1-1"]{content:"jZoKM,"}/*!sc*/
.dzJeEt{-webkit-transform:rotate(180deg);-ms-transform:rotate(180deg);transform:rotate(180deg);}/*!sc*/
data-styled.g40[id="sc-1bqzqc9-0"]{content:"dzJeEt,"}/*!sc*/
.dGHcsq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}/*!sc*/
.dGHcsq .swiper{height:100%;}/*!sc*/
.dGHcsq .swiper-slide{opacity:1;-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;}/*!sc*/
.dGHcsq .swiper-slide-active ~ .swiper-slide ~ .swiper-slide ~ .swiper-slide ~ .swiper-slide{opacity:0.3;}/*!sc*/
.dGHcsq .swiper-slide:nth-child(n + 6){opacity:0.3;}/*!sc*/
.cInatB{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}/*!sc*/
.cInatB .swiper{height:100%;}/*!sc*/
.cInatB .swiper-slide{opacity:1;-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;}/*!sc*/
.cInatB .swiper-slide:nth-child(n + 5){opacity:0.3;}/*!sc*/
.haeyZv{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}/*!sc*/
.haeyZv .swiper{height:100%;}/*!sc*/
.haeyZv .swiper-slide{opacity:1;-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;}/*!sc*/
.haeyZv .swiper-slide:nth-child(n + 3){opacity:0.3;}/*!sc*/
.giOpNO{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;position:relative;}/*!sc*/
.giOpNO .swiper{height:100%;}/*!sc*/
.giOpNO .swiper-slide{opacity:1;-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;}/*!sc*/
data-styled.g41[id="sc-1bkbgbz-0"]{content:"dGHcsq,cInatB,haeyZv,giOpNO,"}/*!sc*/
.cPJghB{min-width:100%;width:100%;min-height:100%;height:100%;display:block;margin:0 auto;}/*!sc*/
.jssxGI{min-width:100%;width:100%;min-height:100%;height:100%;display:block;margin:0 auto;margin-bottom:56px;}/*!sc*/
@media (min-width:1200px){.jssxGI{margin-bottom:72px;}}/*!sc*/
.ehnata{min-width:100%;width:100%;min-height:100%;height:100%;display:block;margin:0 auto;margin-bottom:68px;}/*!sc*/
data-styled.g42[id="sc-1bkbgbz-1"]{content:"cPJghB,jssxGI,ehnata,"}/*!sc*/
.dQlnjC{-webkit-transition:color 0.2s ease-out,opacity 0.2s ease-out;transition:color 0.2s ease-out,opacity 0.2s ease-out;will-change:color,opacity;width:auto;height:auto;padding:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:transparent;color:#fff;}/*!sc*/
@media (min-width:1200px){.dQlnjC:hover{color:#ffd709;}}/*!sc*/
.dQlnjC:disabled{opacity:0.4;pointer-events:none;cursor:default;}/*!sc*/
.jNiVJq{-webkit-transition:color 0.2s ease-out,opacity 0.2s ease-out;transition:color 0.2s ease-out,opacity 0.2s ease-out;will-change:color,opacity;width:auto;height:auto;padding:12px;cursor:pointer;-webkit-tap-highlight-color:transparent;background:transparent;color:#005ECE;}/*!sc*/
@media (min-width:1200px){.jNiVJq:hover{color:#005ECE;}}/*!sc*/
.jNiVJq:disabled{opacity:0.4;pointer-events:none;cursor:default;}/*!sc*/
data-styled.g43[id="sc-1bkbgbz-2"]{content:"dQlnjC,jNiVJq,"}/*!sc*/
.iPzpLW{margin:-12px -12px -12px 24px;}/*!sc*/
data-styled.g44[id="sc-1bkbgbz-3"]{content:"iPzpLW,"}/*!sc*/
.biZjNh{margin:-12px 24px -12px -12px;}/*!sc*/
data-styled.g45[id="sc-1bkbgbz-4"]{content:"biZjNh,"}/*!sc*/
.hGKrlu{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;max-width:400px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
data-styled.g46[id="sc-1bkbgbz-5"]{content:"hGKrlu,"}/*!sc*/
.eoibzU{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;top:-68px;right:0;}/*!sc*/
.eoibzU .sc-1bkbgbz-5 > *{background-color:#fff !important;}/*!sc*/
.hcbJSK{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;top:-118px;right:0;}/*!sc*/
.hcbJSK .sc-1bkbgbz-5 > *{background-color:#fff !important;}/*!sc*/
.fIA-dgx{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;position:absolute;-webkit-transform:translateX(50%);-ms-transform:translateX(50%);transform:translateX(50%);bottom:0;right:50%;}/*!sc*/
.fIA-dgx .sc-1bkbgbz-5 > *{background-color:#005ECE !important;}/*!sc*/
data-styled.g47[id="sc-1bkbgbz-6"]{content:"eoibzU,hcbJSK,fIA-dgx,"}/*!sc*/
.ldwIhb{color:#4749c0;position:relative;}/*!sc*/
.ldwIhb:hover{-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.ldwIhb:active{color:#585cff;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
data-styled.g49[id="sc-1vdp0yy-0"]{content:"ldwIhb,"}/*!sc*/
.eJDLVL{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-transform:rotate( 0deg );-ms-transform:rotate( 0deg );transform:rotate( 0deg );}/*!sc*/
data-styled.g120[id="sc-8zcw6d-0"]{content:"eJDLVL,"}/*!sc*/
.dxxUfg{width:82px;height:auto;}/*!sc*/
data-styled.g179[id="sc-136rsxq-0"]{content:"dxxUfg,"}/*!sc*/
.hERPbJ{-webkit-animation:iJeNST 32s infinite linear;animation:iJeNST 32s infinite linear;-webkit-transform-box:fill-box;-ms-transform-box:fill-box;transform-box:fill-box;-webkit-transform-origin:center;-ms-transform-origin:center;transform-origin:center;will-change:animation,transform;}/*!sc*/
data-styled.g180[id="sc-1gml7ra-0"]{content:"hERPbJ,"}/*!sc*/
.XomuX{overflow:visible;}/*!sc*/
data-styled.g183[id="sc-1gml7ra-3"]{content:"XomuX,"}/*!sc*/
.hOtCic{margin:0 auto;position:relative;}/*!sc*/
@media (min-width:1200px){.hOtCic{max-width:1120px;width:1120px;}}/*!sc*/
@media (max-width:1201px){.hOtCic{max-width:680px;width:680px;}}/*!sc*/
@media (max-width:751px){.hOtCic{max-width:352px;width:352px;}}/*!sc*/
data-styled.g184[id="sc-x072mc-0"]{content:"hOtCic,"}/*!sc*/
.dKnRmO{-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;position:relative;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;z-index:30;position:-webkit-sticky;position:sticky;top:-1px;height:80px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;box-shadow:0 4px 4px rgba(0,0,0,0.05);background:#fff;color:#232323;}/*!sc*/
@media (max-width:1201px){.dKnRmO{height:64px;}}/*!sc*/
@media (max-width:751px){.dKnRmO{height:60px;}}/*!sc*/
data-styled.g185[id="sc-r03h0s-0"]{content:"dKnRmO,"}/*!sc*/
.eFDQwF{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.eFDQwF{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.eFDQwF{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.eFDQwF{font-weight:400;}}/*!sc*/
@media (max-width:751px){.eFDQwF{font-weight:400;}}/*!sc*/
data-styled.g186[id="sc-1x9oq14-0-styled-div"]{content:"eFDQwF,"}/*!sc*/
.bMTmMH{position:unset;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
data-styled.g187[id="sc-r03h0s-1"]{content:"bMTmMH,"}/*!sc*/
.iLJJBX{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 89px 0 0;}/*!sc*/
@media (max-width:1201px){.iLJJBX{margin:0 24px 0 0;}}/*!sc*/
data-styled.g188[id="sc-r03h0s-2"]{content:"iLJJBX,"}/*!sc*/
.kVvakX{-webkit-align-self:normal;-ms-flex-item-align:normal;align-self:normal;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
data-styled.g189[id="sc-r03h0s-3"]{content:"kVvakX,"}/*!sc*/
.bYKNcH{z-index:0;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 40px 0 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
@media (max-width:1201px){.bYKNcH{margin:0 24px 0 0;}}/*!sc*/
.bYKNcH::after{-webkit-transition:background 0.2s ease-out;transition:background 0.2s ease-out;will-change:background;content:'';position:absolute;bottom:0;left:0;width:100%;height:4px;background:transparent;}/*!sc*/
.bYKNcH:last-child{margin:0;}/*!sc*/
.cGgLky{z-index:0;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 40px 0 0;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;}/*!sc*/
@media (max-width:1201px){.cGgLky{margin:0 24px 0 0;}}/*!sc*/
.cGgLky::after{-webkit-transition:background 0.2s ease-out;transition:background 0.2s ease-out;will-change:background;content:'';position:absolute;bottom:0;left:0;width:100%;height:4px;background:transparent;}/*!sc*/
.cGgLky:hover::after{background:#4749c0;}/*!sc*/
.cGgLky:last-child{margin:0;}/*!sc*/
data-styled.g191[id="sc-r03h0s-5"]{content:"bYKNcH,cGgLky,"}/*!sc*/
.kpxsrg.kpxsrg{z-index:-1;position:absolute;width:615px;height:615px;}/*!sc*/
data-styled.g192[id="sc-r03h0s-6"]{content:"kpxsrg,"}/*!sc*/
.jHaHbB{margin:0 auto 0 0;color:inherit;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
.jHaHbB:hover{-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
.jHaHbB:active{color:inherit;}/*!sc*/
@media (max-width:1201px){.jHaHbB{display:none;}}/*!sc*/
data-styled.g193[id="sc-r03h0s-7"]{content:"jHaHbB,"}/*!sc*/
.dZepSJ{-webkit-transition:background 0.2s ease-out;transition:background 0.2s ease-out;will-change:background;cursor:pointer;padding:14px 16px;border-radius:20px;}/*!sc*/
@media (min-width:1200px){.dZepSJ:hover{background:#fff;}}/*!sc*/
@media (max-width:1201px){.dZepSJ{padding:10px 0;}}/*!sc*/
.gXNPrh{-webkit-transition:background 0.2s ease-out;transition:background 0.2s ease-out;will-change:background;cursor:pointer;padding:14px 16px;border-radius:20px;font-weight:700;}/*!sc*/
@media (min-width:1200px){.gXNPrh:hover{background:#fff;}}/*!sc*/
@media (max-width:1201px){.gXNPrh{padding:10px 0;}}/*!sc*/
data-styled.g194[id="sc-4zz0i4-0"]{content:"dZepSJ,gXNPrh,"}/*!sc*/
.fXsjgC{margin:0 32px 0 0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:24px;}/*!sc*/
.fXsjgC:last-child{margin:0;}/*!sc*/
@media (max-width:751px){.fXsjgC{margin:0 0 24px;}}/*!sc*/
data-styled.g195[id="sc-1kjc6dh-0"]{content:"fXsjgC,"}/*!sc*/
.bxwCjw{width:100%;margin:0 0 12px;padding:0 0 12px;border-bottom:1px solid #ececec;color:#afafaf;}/*!sc*/
@media (max-width:1201px){.bxwCjw{margin:0 0 24px;padding:0;border-bottom:none;}}/*!sc*/
@media (max-width:751px){.bxwCjw{margin:0 0 8px;}}/*!sc*/
data-styled.g196[id="sc-1kjc6dh-1"]{content:"bxwCjw,"}/*!sc*/
.lhsLfs{display:grid;margin:0 -16px;grid-template-columns:repeat(2,288px);}/*!sc*/
@media (max-width:1201px){.lhsLfs{margin:0;}}/*!sc*/
@media (max-width:751px){.lhsLfs{gap:4px;}}/*!sc*/
.eANJVj{display:grid;margin:0 -16px;grid-template-columns:repeat(1,288px);}/*!sc*/
@media (max-width:1201px){.eANJVj{margin:0;}}/*!sc*/
@media (max-width:751px){.eANJVj{gap:4px;}}/*!sc*/
data-styled.g197[id="sc-1kjc6dh-2"]{content:"lhsLfs,eANJVj,"}/*!sc*/
.LDEpF{background-color:#ececec;border-radius:8px;position:relative;overflow:hidden;color:rgba(0,0,0,0);width:100%;height:100%;position:absolute;top:0;left:0;}/*!sc*/
.iXhGSD{background-color:#ececec;border-radius:8px;position:relative;overflow:hidden;color:rgba(0,0,0,0);}/*!sc*/
data-styled.g198[id="sc-1xopqwy-0"]{content:"LDEpF,iXhGSD,"}/*!sc*/
.jTtOKw{position:relative;display:block;}/*!sc*/
.ePGOOQ{position:static;display:block;}/*!sc*/
data-styled.g199[id="sc-hrqzy3-0"]{content:"jTtOKw,ePGOOQ,"}/*!sc*/
.faPWUN{min-width:100%;width:100%;min-height:100%;height:100%;position:relative;z-index:0;}/*!sc*/
.faPWUN *{opacity:0;pointer-events:none;}/*!sc*/
data-styled.g200[id="sc-hrqzy3-1"]{content:"faPWUN,"}/*!sc*/
.fEESDM{position:absolute;z-index:1;display:none;top:100%;left:0;width:100%;}/*!sc*/
data-styled.g236[id="sc-piuiz2-0"]{content:"fEESDM,"}/*!sc*/
.fDVGGf{z-index:0;-webkit-align-self:baseline;-ms-flex-item-align:baseline;align-self:baseline;overflow:hidden;position:relative;width:100%;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:40px;background:#f8f8f8;box-shadow:0px 16px 16px rgba(0,0,0,0.25);border-radius:0px 0px 20px 20px;}/*!sc*/
@media (min-width:1200px){.fDVGGf{max-width:1200px;margin:0 auto;}}/*!sc*/
@media (max-width:1201px){.fDVGGf{padding:24px 36px;}}/*!sc*/
@media (max-width:751px){.fDVGGf{height:100%;padding:24px 0;border-radius:0;}}/*!sc*/
data-styled.g237[id="sc-piuiz2-1"]{content:"fDVGGf,"}/*!sc*/
.fhxPhf{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
data-styled.g238[id="sc-piuiz2-2"]{content:"fhxPhf,"}/*!sc*/
.ggDqfB{right:-101px;top:-105px;bottom:-201px;}/*!sc*/
data-styled.g240[id="sc-1891c19-0"]{content:"ggDqfB,"}/*!sc*/
.dwrtLP{-webkit-transition:color 0.2s ease-out,-webkit-transform 0.2s ease-out;-webkit-transition:color 0.2s ease-out,transform 0.2s ease-out;transition:color 0.2s ease-out,transform 0.2s ease-out;will-change:color,transform;margin:0 0 0 4px;}/*!sc*/
@media (max-width:751px){.dwrtLP{display:none;}}/*!sc*/
data-styled.g241[id="sc-1youhxc-0"]{content:"dwrtLP,"}/*!sc*/
.cMNIlZ{-webkit-transition:font-weight 0.1s ease-out;transition:font-weight 0.1s ease-out;will-change:font-weight;}/*!sc*/
.cMNIlZ::before{content:attr(title);position:relative;display:block;font-weight:700;height:0;overflow:hidden;visibility:hidden;}/*!sc*/
data-styled.g242[id="sc-1youhxc-1"]{content:"cMNIlZ,"}/*!sc*/
@media (min-width:1200px){.gAMwby:hover .sc-1youhxc-0{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg);}.gAMwby:hover .sc-1youhxc-0{color:#4749c0;}}/*!sc*/
.ewISlX:hover .sc-1youhxc-1{font-weight:700;}/*!sc*/
@media (min-width:1200px){.ewISlX:hover .sc-1youhxc-0{-webkit-transform:rotate(-180deg);-ms-transform:rotate(-180deg);transform:rotate(-180deg);}.ewISlX:hover .sc-1youhxc-0{color:#4749c0;}}/*!sc*/
@media (max-width:1201px){.ewISlX{display:none;}}/*!sc*/
data-styled.g243[id="sc-1youhxc-2"]{content:"gAMwby,ewISlX,"}/*!sc*/
.cgYLnJ{grid-auto-flow:column;grid-template-rows:repeat(8,1fr);}/*!sc*/
@media (max-width:751px){.cgYLnJ{grid-auto-flow:row;grid-template-columns:1fr;grid-template-row:unset;}}/*!sc*/
data-styled.g244[id="sc-ig0m9y-0"]{content:"cgYLnJ,"}/*!sc*/
.czpnNJ{-webkit-transition:background 0.2s ease-out,border 0.2s ease-out,opacity 0.2s ease-out,color 0.2s ease-out;transition:background 0.2s ease-out,border 0.2s ease-out,opacity 0.2s ease-out,color 0.2s ease-out;will-change:background,border,opacity,color;cursor:pointer;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 26px;font-weight:700;line-height:24px;min-height:56px;border-radius:20px;font-size:18px;color:#0f0f10;background:#ffd709;width:100%;}/*!sc*/
.czpnNJ:active{color:#0f0f10;}/*!sc*/
.czpnNJ:not(:disabled):hover{background:#ffea7d;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
.czpnNJ:disabled{cursor:default;color:#afafaf;background:#ececec;pointer-events:none;}/*!sc*/
.bYRRHi{-webkit-transition:background 0.2s ease-out,border 0.2s ease-out,opacity 0.2s ease-out,color 0.2s ease-out;transition:background 0.2s ease-out,border 0.2s ease-out,opacity 0.2s ease-out,color 0.2s ease-out;will-change:background,border,opacity,color;cursor:pointer;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 26px;font-weight:700;line-height:24px;min-height:56px;border-radius:20px;font-size:18px;color:#0f0f10;background:#ffd709;}/*!sc*/
.bYRRHi:active{color:#0f0f10;}/*!sc*/
.bYRRHi:not(:disabled):hover{background:#ffea7d;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
.bYRRHi:disabled{cursor:default;color:#afafaf;background:#ececec;pointer-events:none;}/*!sc*/
data-styled.g249[id="sc-1qig7zt-0"]{content:"czpnNJ,bYRRHi,"}/*!sc*/
.eDycrR{pointer-events:none;}/*!sc*/
data-styled.g257[id="sc-gqclrv-0"]{content:"eDycrR,"}/*!sc*/
@media (max-width:751px){.rcsBI{display:none;}}/*!sc*/
data-styled.g258[id="sc-gqclrv-1"]{content:"rcsBI,"}/*!sc*/
.cwTwwh{min-width:32px;width:32px;min-height:32px;height:32px;margin:0 8px 0 0;border-radius:50%;overflow:hidden;}/*!sc*/
@media (max-width:1201px){.cwTwwh{min-width:28px;width:28px;min-height:28px;height:28px;margin:0 4px 0 0;}}/*!sc*/
@media (max-width:751px){.cwTwwh{margin:0;}}/*!sc*/
data-styled.g259[id="sc-199a3eq-1-div"]{content:"cwTwwh,"}/*!sc*/
.deZXFK{-webkit-align-self:normal;-ms-flex-item-align:normal;align-self:normal;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 0 0 auto;}/*!sc*/
data-styled.g302[id="sc-1pw2hu9-0"]{content:"deZXFK,"}/*!sc*/
.gnDzft{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;cursor:pointer;position:static;-webkit-tap-highlight-color:transparent;}/*!sc*/
data-styled.g303[id="sc-k2vhmo-0"]{content:"gnDzft,"}/*!sc*/
.cYMYSf{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;height:100%;color:#232323;}/*!sc*/
.cYMYSf:hover{color:#4749c0;}/*!sc*/
data-styled.g304[id="sc-k2vhmo-1"]{content:"cYMYSf,"}/*!sc*/
.etPPJE{-webkit-transition:color 0.2s ease-out;transition:color 0.2s ease-out;will-change:color;}/*!sc*/
data-styled.g305[id="sc-k2vhmo-2"]{content:"etPPJE,"}/*!sc*/
.dMvvUT{position:relative;padding:13px 0 29px;margin-bottom:-16px;background:linear-gradient(90deg,#a34fc6 0%,#5354e4 100%);color:#fff;overflow:hidden;}/*!sc*/
@media (max-width:1201px){.dMvvUT{padding:12px 16px 28px;}}/*!sc*/
@media (max-width:751px){.dMvvUT{padding:9px 15px 25px;}}/*!sc*/
.dMvvUT .before-header-ui__ellipse1{position:absolute;left:-147px;top:-387px;width:854px;height:854px;opacity:0.2;-webkit-filter:blur(12px);filter:blur(12px);background:radial-gradient( 50% 50% at 50% 50%,#f6cae3 0%,rgba(246,202,227,0) 100% );}/*!sc*/
.dMvvUT .before-header-ui__ellipse2{position:absolute;left:-148px;top:-244px;width:568px;height:568px;opacity:0.3;-webkit-filter:blur(12px);filter:blur(12px);background:radial-gradient( 50% 50% at 50% 50%,#f6cae3 0%,rgba(246,202,227,0) 100% );}/*!sc*/
.dMvvUT .before-header-ui__container{font-family:'IBM Plex Sans','Roboto',sans-serif;position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:24px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 auto;width:1120px;max-width:1120px;}/*!sc*/
@media (max-width:1201px){.dMvvUT .before-header-ui__container{width:100%;max-width:unset;}}/*!sc*/
.dMvvUT .before-header-ui__img{position:relative;}/*!sc*/
@media (max-width:1201px){.dMvvUT .before-header-ui__img{display:none;}}/*!sc*/
.dMvvUT .before-header-ui__img_sales{width:164px;}/*!sc*/
.dMvvUT .before-header-ui__img_sales::before{content:'';position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);width:100%;height:190px;background:url(/_next/static/images/img/sales-647707e6e3bb6ad2deb188a1217a88ac.png) no-repeat;background-size:contain;}/*!sc*/
.dMvvUT .before-header-ui__content{-webkit-flex:1;-ms-flex:1;flex:1;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:2px;}/*!sc*/
.dMvvUT .before-header-ui__buttons{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:8px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
.dMvvUT .before-header-ui__title{font-size:28px;line-height:32px;font-weight:700;}/*!sc*/
@media (max-width:751px){.dMvvUT .before-header-ui__title{font-size:20px;line-height:24px;font-weight:700;}}/*!sc*/
.dMvvUT .before-header-ui__text{font-size:14px;line-height:20px;font-weight:700;-webkit-letter-spacing:-0.01em;-moz-letter-spacing:-0.01em;-ms-letter-spacing:-0.01em;letter-spacing:-0.01em;}/*!sc*/
@media (max-width:751px){.dMvvUT .before-header-ui__text{font-size:12px;line-height:16px;font-weight:700;-webkit-letter-spacing:0;-moz-letter-spacing:0;-ms-letter-spacing:0;letter-spacing:0;}}/*!sc*/
.dMvvUT .before-header-ui__button{-webkit-transition:background 0.2s ease-out;transition:background 0.2s ease-out;will-change:background;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-size:18px;line-height:24px;font-weight:700;border-radius:12px;-webkit-text-decoration:none;text-decoration:none;background:#fff;padding:12px 24px;display:inline-block;outline:none;box-sizing:border-box;cursor:pointer;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;text-align:center;color:#232323;text-overflow:ellipsis;min-width:200px;}/*!sc*/
@media (max-width:751px){.dMvvUT .before-header-ui__button{font-size:16px;line-height:24px;font-weight:700;padding:8px 16px;min-width:auto;}}/*!sc*/
.dMvvUT .before-header-ui__button:hover,.dMvvUT .before-header-ui__button:active{background-color:#ececec;}/*!sc*/
.dMvvUT .before-header-ui__button_secondary{color:#fff;background:rgba(255,255,255,0.2);}/*!sc*/
.dMvvUT .before-header-ui__button_secondary:hover,.dMvvUT .before-header-ui__button_secondary:active{background:rgba(255,255,255,0.3);color:#fff;}/*!sc*/
@media (max-width:1201px){.dMvvUT .before-header-ui__button_secondary{display:none;}}/*!sc*/
data-styled.g339[id="sc-1pwtpfp-0"]{content:"dMvvUT,"}/*!sc*/
.klmZDZ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;min-height:100%;}/*!sc*/
data-styled.g340[id="sc-1j17uuq-0"]{content:"klmZDZ,"}/*!sc*/
.dPcKhb{position:relative;z-index:2;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-flex:1 0 auto;-ms-flex:1 0 auto;flex:1 0 auto;background:inherit;overflow:hidden;}/*!sc*/
data-styled.g341[id="sc-1j17uuq-1"]{content:"dPcKhb,"}/*!sc*/
@media (max-width:1201px){.ui-chunk-container .hide-mobile{display:none;}}/*!sc*/
@media (max-width:751px){.ui-chunk-container .hide-phone{display:none;}}/*!sc*/
.ui-chunk-container .show-mobile{display:none;}/*!sc*/
@media (max-width:1201px){.ui-chunk-container .show-mobile{display:block;}}/*!sc*/
.ui-chunk-container .show-phone{display:none;}/*!sc*/
@media (max-width:751px){.ui-chunk-container .show-phone{display:block;}}/*!sc*/
data-styled.g343[id="sc-global-eCGhFA1"]{content:"sc-global-eCGhFA1,"}/*!sc*/
@-webkit-keyframes iJeNST{from{-webkit-transform:rotate(0deg) translateX(70px);-ms-transform:rotate(0deg) translateX(70px);transform:rotate(0deg) translateX(70px);}to{-webkit-transform:rotate(360deg) translateX(70px);-ms-transform:rotate(360deg) translateX(70px);transform:rotate(360deg) translateX(70px);}}/*!sc*/
@keyframes iJeNST{from{-webkit-transform:rotate(0deg) translateX(70px);-ms-transform:rotate(0deg) translateX(70px);transform:rotate(0deg) translateX(70px);}to{-webkit-transform:rotate(360deg) translateX(70px);-ms-transform:rotate(360deg) translateX(70px);transform:rotate(360deg) translateX(70px);}}/*!sc*/
data-styled.g345[id="sc-keyframes-iJeNST"]{content:"iJeNST,"}/*!sc*/
.gObWOq{z-index:-1;position:absolute;left:0;top:0;height:100%;width:100%;background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );-webkit-clip-path:polygon(0 0,100% 0px,100% calc(100% - 80px),0% 100%);clip-path:polygon(0 0,100% 0px,100% calc(100% - 80px),0% 100%);}/*!sc*/
@media (max-width:751px){.gObWOq{-webkit-clip-path:polygon(0 0,100% 0px,100% calc(100% - 56px),0% 100%);clip-path:polygon(0 0,100% 0px,100% calc(100% - 56px),0% 100%);}}/*!sc*/
.bKfgwd{z-index:-1;position:absolute;left:0;top:0;height:100%;width:100%;background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );-webkit-clip-path:polygon(0 0,100% 80px,100% calc(100% - 80px),0% 100%);clip-path:polygon(0 0,100% 80px,100% calc(100% - 80px),0% 100%);}/*!sc*/
@media (max-width:751px){.bKfgwd{-webkit-clip-path:polygon(0 0,100% 56px,100% calc(100% - 56px),0% 100%);clip-path:polygon(0 0,100% 56px,100% calc(100% - 56px),0% 100%);}}/*!sc*/
.kGrPZV{z-index:-1;position:absolute;left:0;top:0;height:100%;width:100%;background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );-webkit-clip-path:polygon(0 80px,100% 0,100% 100%,0 calc(100% - 80px));clip-path:polygon(0 80px,100% 0,100% 100%,0 calc(100% - 80px));}/*!sc*/
@media (max-width:751px){.kGrPZV{-webkit-clip-path:polygon(0 56px,100% 0,100% 100%,0 calc(100% - 56px));clip-path:polygon(0 56px,100% 0,100% 100%,0 calc(100% - 56px));}}/*!sc*/
.jPkREO{z-index:-1;position:absolute;left:0;top:0;height:100%;width:100%;background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );-webkit-clip-path:polygon(0 0,100% 80px,100% calc(100% - 0px),0% 100%);clip-path:polygon(0 0,100% 80px,100% calc(100% - 0px),0% 100%);}/*!sc*/
@media (max-width:751px){.jPkREO{-webkit-clip-path:polygon(0 0,100% 56px,100% calc(100% - 0px),0% 100%);clip-path:polygon(0 0,100% 56px,100% calc(100% - 0px),0% 100%);}}/*!sc*/
data-styled.g346[id="sc-1ddwpfq-0"]{content:"gObWOq,bKfgwd,kGrPZV,jPkREO,"}/*!sc*/
.hnlXxp{position:relative;width:100%;padding:80px 0;}/*!sc*/
@media (max-width:751px){.hnlXxp{padding:56px 0;}}/*!sc*/
data-styled.g347[id="sc-1ddwpfq-1"]{content:"hnlXxp,"}/*!sc*/
.jliiMx{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;z-index:0;padding:120px 0 0;background:inherit;overflow:hidden;}/*!sc*/
@media (max-width:1201px){.jliiMx{padding:160px 0 0;}}/*!sc*/
@media (max-width:751px){.jliiMx{padding:80px 0 0;}}/*!sc*/
data-styled.g348[id="sc-oy98rf-0"]{content:"jliiMx,"}/*!sc*/
.jDvWdq{background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );}/*!sc*/
data-styled.g349[id="sc-oy98rf-1"]{content:"jDvWdq,"}/*!sc*/
.bLWaqJ{padding:0;}/*!sc*/
data-styled.g350[id="sc-oy98rf-2"]{content:"bLWaqJ,"}/*!sc*/
.fMEenG{padding:120px 0 96px;}/*!sc*/
@media (max-width:1201px){.fMEenG{padding:123px 0 35px;}}/*!sc*/
data-styled.g351[id="sc-oy98rf-3"]{content:"fMEenG,"}/*!sc*/
.kXtOIJ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-top:60px;padding:40px 0;position:relative;color:#fff;}/*!sc*/
.kXtOIJ:after{content:'';position:absolute;left:0;top:0;right:0;opacity:0.2;height:1px;background-color:#fff;}/*!sc*/
@media (max-width:1201px){.kXtOIJ{width:100%;margin-top:40px;}}/*!sc*/
@media (max-width:751px){.kXtOIJ{-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;padding:24px 0;}}/*!sc*/
data-styled.g352[id="sc-19c5cbt-0"]{content:"kXtOIJ,"}/*!sc*/
.fvpIrL{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:751px){.fvpIrL{margin-bottom:24px;width:100%;}}/*!sc*/
data-styled.g353[id="sc-19c5cbt-1"]{content:"fvpIrL,"}/*!sc*/
.jbfvPl{color:#fff;margin-top:24px;}/*!sc*/
@media (max-width:1201px){.jbfvPl{margin-top:40px;}}/*!sc*/
data-styled.g354[id="sc-b223p8-0"]{content:"jbfvPl,"}/*!sc*/
.kexDMw{margin-bottom:16px;display:inline-block;}/*!sc*/
data-styled.g355[id="sc-b223p8-1"]{content:"kexDMw,"}/*!sc*/
@media (max-width:1201px){.cpJPIb{line-height:16px;}.cpJPIb:after{bottom:1px;}}/*!sc*/
@media (max-width:751px){.cpJPIb:after{bottom:3px;}}/*!sc*/
data-styled.g356[id="sc-b223p8-2"]{content:"cpJPIb,"}/*!sc*/
.kqoeNm{position:relative;display:inline-block;margin:0 0 16px;white-space:nowrap;-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.kqoeNm:last-child{margin:0;}/*!sc*/
data-styled.g357[id="sc-b223p8-3"]{content:"kqoeNm,"}/*!sc*/
.dmOCHb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;color:#fff;}/*!sc*/
@media (max-width:751px){.dmOCHb{margin-bottom:44px;}}/*!sc*/
data-styled.g358[id="sc-s8yol2-0"]{content:"dmOCHb,"}/*!sc*/
.fSkxQH{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}/*!sc*/
data-styled.g359[id="sc-s8yol2-1"]{content:"fSkxQH,"}/*!sc*/
@media (min-width:1200px){.jinSfn{max-width:160px;width:160px;margin-right:32px;}}/*!sc*/
@media (max-width:1201px){.jinSfn{max-width:104px;width:104px;margin-right:48px;}}/*!sc*/
data-styled.g360[id="sc-s8yol2-2"]{content:"jinSfn,"}/*!sc*/
@media (min-width:1200px){.nSSml{max-width:256px;width:256px;margin-right:32px;}}/*!sc*/
@media (max-width:1201px){.nSSml{max-width:176px;width:176px;margin-right:0;}}/*!sc*/
@media (max-width:751px){.nSSml{margin-right:0;}}/*!sc*/
data-styled.g361[id="sc-s8yol2-3"]{content:"nSSml,"}/*!sc*/
.dopIUT{position:relative;margin-bottom:16px;-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.dopIUT:last-child{margin-bottom:0;}/*!sc*/
data-styled.g362[id="sc-s8yol2-4"]{content:"dopIUT,"}/*!sc*/
.MecOH{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;width:256px;margin-right:32px;color:#fff;}/*!sc*/
@media (max-width:1201px){.MecOH{width:240px;margin-right:0;margin-top:66px;}}/*!sc*/
@media (max-width:751px){.MecOH{width:352px;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;margin-top:40px;}}/*!sc*/
data-styled.g363[id="sc-15qczmr-0"]{content:"MecOH,"}/*!sc*/
.dpoRMu{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:38px;}/*!sc*/
@media (max-width:1201px){.dpoRMu{margin-bottom:33px;}}/*!sc*/
@media (max-width:751px){.dpoRMu{margin-bottom:0;margin-top:24px;}}/*!sc*/
data-styled.g364[id="sc-15qczmr-1"]{content:"dpoRMu,"}/*!sc*/
.jKMwie{margin-right:12px;height:32px;width:32px;background-image:url(/_next/static/images/img/footerUivk-1a499178c819de0f4161a07172b27f6b.svg);background-position:center center;background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:1201px){.jKMwie{height:24px;width:24px;}}/*!sc*/
.eFVTJV{margin-right:12px;height:32px;width:32px;background-image:url(/_next/static/images/img/footerUiyt-84e5fa7c2e582191762486a7be2c2652.svg);background-position:center center;background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:1201px){.eFVTJV{height:24px;width:24px;}}/*!sc*/
.hUuIIY{margin-right:12px;height:32px;width:32px;background-image:url(/_next/static/images/img/footerUidzen-cfe01a671b9064c8e5d54b2ac5895a0c.png);background-position:center center;background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:1201px){.hUuIIY{height:24px;width:24px;}}/*!sc*/
data-styled.g365[id="sc-15qczmr-2"]{content:"jKMwie,eFVTJV,hUuIIY,"}/*!sc*/
.foluGF{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}/*!sc*/
@media (max-width:751px){.foluGF{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;}}/*!sc*/
data-styled.g366[id="sc-15qczmr-3"]{content:"foluGF,"}/*!sc*/
.hMqYlN{margin-bottom:12px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
@media (max-width:1201px){.hMqYlN{margin-bottom:16px;}}/*!sc*/
@media (max-width:751px){.hMqYlN{margin-bottom:0;margin-right:32px;}.hMqYlN:last-child{margin-right:0;}}/*!sc*/
data-styled.g367[id="sc-15qczmr-4"]{content:"hMqYlN,"}/*!sc*/
.kmPvgJ{margin-right:32px;width:32px;height:32px;background-image:url(/_next/static/images/img/footerUitg-326baa373419d1a193621a597320c652.svg);background-position:center center;background-repeat:no-repeat;background-size:contain;}/*!sc*/
@media (max-width:1201px){.kmPvgJ{margin-right:8px;width:24px;height:24px;}}/*!sc*/
data-styled.g368[id="sc-15qczmr-5"]{content:"kmPvgJ,"}/*!sc*/
.driyCh{position:relative;white-space:nowrap;-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
@media (max-width:1201px){.driyCh{line-height:16px;-webkit-text-decoration:none;text-decoration:none;}}/*!sc*/
data-styled.g369[id="sc-15qczmr-6"]{content:"driyCh,"}/*!sc*/
.ceClWZ{min-width:100%;width:100%;min-height:100%;height:100%;cursor:pointer;z-index:1;position:absolute;top:0;left:0;opacity:0;}/*!sc*/
data-styled.g371[id="sc-j40lj7-0"]{content:"ceClWZ,"}/*!sc*/
.dWxMps{min-width:24px;width:24px;min-height:24px;height:24px;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;will-change:transform;will-change:auto;-webkit-transform:scale(1);-ms-transform:scale(1);transform:scale(1);}/*!sc*/
data-styled.g372[id="sc-hd7keq-0"]{content:"dWxMps,"}/*!sc*/
.eZuRED{-webkit-transition:border-color 0.2s ease-out;transition:border-color 0.2s ease-out;will-change:border-color;min-width:24px;width:24px;min-height:24px;height:24px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;position:relative;border:1px solid;border-radius:3.5px;color:#4749c0;background-color:#fff;border-color:#4749c0;}/*!sc*/
data-styled.g375[id="sc-12fwr4-0"]{content:"eZuRED,"}/*!sc*/
.exsZZC{position:absolute;top:-1px;left:-1px;}/*!sc*/
data-styled.g376[id="sc-12fwr4-1"]{content:"exsZZC,"}/*!sc*/
.eAOVcR{cursor:pointer;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}/*!sc*/
data-styled.g377[id="sc-1fry39v-0"]{content:"eAOVcR,"}/*!sc*/
.kMJHVN{margin:0 0 0 16px;}/*!sc*/
data-styled.g378[id="sc-1fry39v-1"]{content:"kMJHVN,"}/*!sc*/
.fyzNNQ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;color:#0f0f10;}/*!sc*/
data-styled.g379[id="sc-dusc05-0"]{content:"fyzNNQ,"}/*!sc*/
.fgICvQ{color:inherit;-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.fgICvQ:hover{-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
data-styled.g380[id="sc-dusc05-1"]{content:"fgICvQ,"}/*!sc*/
.fYuJAI{color:#fff;}/*!sc*/
data-styled.g382[id="sc-des2oc-0"]{content:"fYuJAI,"}/*!sc*/
.hbxrvB{margin-bottom:16px;}/*!sc*/
@media (max-width:1201px){.hbxrvB{margin-bottom:22px;}}/*!sc*/
@media (max-width:751px){.hbxrvB{margin-bottom:16px;}}/*!sc*/
data-styled.g383[id="sc-des2oc-1"]{content:"hbxrvB,"}/*!sc*/
.iHEhCu{display:grid;grid-template-areas:'a b' 'c c';grid-template-columns:240px 96px;gap:12px 16px;}/*!sc*/
@media (max-width:1201px){.iHEhCu{grid-template-columns:200px 96px;gap:8px 8px;}}/*!sc*/
@media (max-width:751px){.iHEhCu{grid-template-columns:244px 96px;gap:10px 12px;}}/*!sc*/
data-styled.g384[id="sc-des2oc-2"]{content:"iHEhCu,"}/*!sc*/
.heMBup{grid-area:a;}/*!sc*/
data-styled.g385[id="sc-des2oc-3"]{content:"heMBup,"}/*!sc*/
.dqoHct{grid-area:b;}/*!sc*/
data-styled.g386[id="sc-des2oc-4"]{content:"dqoHct,"}/*!sc*/
.kSlCOl{grid-area:c;color:inherit;}/*!sc*/
data-styled.g387[id="sc-des2oc-5"]{content:"kSlCOl,"}/*!sc*/
.kVOlcO{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}/*!sc*/
data-styled.g388[id="sc-176eli6-0"]{content:"kVOlcO,"}/*!sc*/
.bIqTVy{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}/*!sc*/
data-styled.g389[id="sc-176eli6-1"]{content:"bIqTVy,"}/*!sc*/
.hRGcmY{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}/*!sc*/
data-styled.g390[id="sc-176eli6-2"]{content:"hRGcmY,"}/*!sc*/
.kmquqg{object-fit:contain;}/*!sc*/
data-styled.g391[id="sc-ed2fvu-0"]{content:"kmquqg,"}/*!sc*/
.fCchjz{width:100%;margin:auto;}/*!sc*/
data-styled.g392[id="sc-1urziip-0"]{content:"fCchjz,"}/*!sc*/
.cPEbNj{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:82px;height:40px;}/*!sc*/
@media (max-width:1201px){.cPEbNj{margin-right:12px;width:41px;height:24px;}}/*!sc*/
data-styled.g393[id="sc-1urziip-1"]{content:"cPEbNj,"}/*!sc*/
.fEJhZn{margin-right:40px;width:140px;height:40px;background-image:url(/_next/static/images/img/runet-9d9c302c854bd21ffd433cffadd5fc46.png);background-position:center center;background-repeat:no-repeat;background-size:contain;}/*!sc*/
@media (max-width:1201px){.fEJhZn{margin-right:12px;width:84px;height:24px;}}/*!sc*/
data-styled.g394[id="sc-1jb0vz0-0"]{content:"fEJhZn,"}/*!sc*/
.bQKtqJ{margin-right:40px;width:136px;height:40px;background-image:url(/_next/static/images/img/skolkovo-2f0a909e8e465c8d5951d639c67b62c9.svg);background-position:center center;background-repeat:no-repeat;background-size:contain;}/*!sc*/
@media (max-width:1201px){.bQKtqJ{margin-right:12px;width:82px;height:24px;}}/*!sc*/
data-styled.g395[id="sc-1jb0vz0-1"]{content:"bQKtqJ,"}/*!sc*/
.bzaXwp{background-color:#f8f8f8;}/*!sc*/
data-styled.g455[id="sc-1b3dhyb-0"]{content:"bzaXwp,"}/*!sc*/
.dvLdDh{overflow:hidden;z-index:0;}/*!sc*/
data-styled.g456[id="sc-1b3dhyb-1"]{content:"dvLdDh,"}/*!sc*/
.ftkQLi{width:100%;}/*!sc*/
data-styled.g457[id="sc-1lrh8w5-0"]{content:"ftkQLi,"}/*!sc*/
.JTsAm{-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;}/*!sc*/
data-styled.g460[id="sc-1lrh8w5-3"]{content:"JTsAm,"}/*!sc*/
.jTrfLJ{margin:auto;padding:0 4px 0 0;}/*!sc*/
data-styled.g461[id="sc-1lrh8w5-4"]{content:"jTrfLJ,"}/*!sc*/
.eCsaUt{color:#130f26;}/*!sc*/
.kfzfcV{color:#130f26;}/*!sc*/
@media (max-width:751px){.kfzfcV{display:none;}}/*!sc*/
data-styled.g462[id="sc-1lrh8w5-5"]{content:"eCsaUt,kfzfcV,"}/*!sc*/
.ddfkAs{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:416px;margin:8px 96px 0 0;}/*!sc*/
@media (max-width:1201px){.ddfkAs{width:552px;margin:0 0 60px;}}/*!sc*/
@media (max-width:751px){.ddfkAs{width:344px;margin:0 0 40px;}}/*!sc*/
data-styled.g480[id="sc-1oz275d-0"]{content:"ddfkAs,"}/*!sc*/
.dCggDS{border:none;border-radius:16px;object-fit:contain;width:100%;}/*!sc*/
@media (max-width:1201px){.dCggDS{border-radius:26px;}}/*!sc*/
@media (max-width:751px){.dCggDS{border-radius:16px;}}/*!sc*/
data-styled.g481[id="sc-1oz275d-1"]{content:"dCggDS,"}/*!sc*/
.cmjKRy{margin-bottom:52px;}/*!sc*/
@media (max-width:1201px){.cmjKRy{margin-bottom:60px;}.cmjKRy .swiper{overflow:visible;}}/*!sc*/
@media (max-width:751px){.cmjKRy{margin-bottom:36px;}.cmjKRy .swiper{overflow:hidden;}}/*!sc*/
data-styled.g482[id="sc-1oz275d-2"]{content:"cmjKRy,"}/*!sc*/
.lliDuJ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:992px;margin:0 auto 120px;padding:0 0 120px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#0f0f10;border-bottom:1px solid #afafaf;}/*!sc*/
@media (max-width:1201px){.lliDuJ{width:100%;padding:0 0 100px;}}/*!sc*/
@media (max-width:751px){.lliDuJ{margin:0 auto 80px;padding:0 0 40px;}}/*!sc*/
data-styled.g484[id="sc-1r62a6q-0"]{content:"lliDuJ,"}/*!sc*/
.llFwsA{margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.llFwsA{margin-bottom:32px;}}/*!sc*/
@media (max-width:751px){.llFwsA{width:340px;}}/*!sc*/
data-styled.g485[id="sc-1r62a6q-1"]{content:"llFwsA,"}/*!sc*/
.dtnelf{margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.dtnelf{margin-bottom:40px;}}/*!sc*/
data-styled.g486[id="sc-1r62a6q-2"]{content:"dtnelf,"}/*!sc*/
.eNyjzK{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:1201px){.eNyjzK{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g487[id="sc-1r62a6q-3"]{content:"eNyjzK,"}/*!sc*/
.cOojXt H1,.cOojXt H2,.cOojXt H3,.cOojXt H4,.cOojXt H5,.cOojXt H6{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:40px;line-height:48px;padding-bottom:40px;}/*!sc*/
@media (max-width:1201px){.cOojXt H1,.cOojXt H2,.cOojXt H3,.cOojXt H4,.cOojXt H5,.cOojXt H6{font-size:40px;line-height:48px;padding-bottom:32px;}}/*!sc*/
@media (max-width:751px){.cOojXt H1,.cOojXt H2,.cOojXt H3,.cOojXt H4,.cOojXt H5,.cOojXt H6{font-size:20px;line-height:24px;padding-bottom:40px;}}/*!sc*/
.cOojXt p{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;}/*!sc*/
@media (max-width:1201px){.cOojXt p{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.cOojXt p{font-size:16px;line-height:24px;}}/*!sc*/
.cOojXt ul,.cOojXt ol{margin:-24px 0 32px;padding:0;}/*!sc*/
.cOojXt li{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;position:relative;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 0 24px;padding:0 0 0 24px;list-style:none;color:#000;}/*!sc*/
@media (max-width:1201px){.cOojXt li{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.cOojXt li{font-size:16px;line-height:24px;}}/*!sc*/
.cOojXt li:last-child{margin-bottom:0;}/*!sc*/
.cOojXt li::before{content:'•';position:absolute;top:0;left:0;color:#005ece;font-size:39px;line-height:26px;}/*!sc*/
.cOojXt li:before{color:#005ECE;}/*!sc*/
.cOojXt > *:last-child{margin-bottom:0;}/*!sc*/
data-styled.g488[id="sc-1r62a6q-4"]{content:"cOojXt,"}/*!sc*/
.cFKGMw{color:#0f0f10;word-break:break-word;}/*!sc*/
.cFKGMw h1{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:52px;line-height:64px;margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.cFKGMw h1{font-size:52px;line-height:64px;}}/*!sc*/
@media (max-width:751px){.cFKGMw h1{font-size:24px;line-height:28px;margin-bottom:32px;}}/*!sc*/
.cFKGMw h2{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:24px;line-height:28px;margin-bottom:16px;}/*!sc*/
@media (max-width:1201px){.cFKGMw h2{font-size:24px;line-height:28px;margin-bottom:24px;}}/*!sc*/
@media (max-width:751px){.cFKGMw h2{font-size:18px;line-height:24px;margin-bottom:16px;}}/*!sc*/
.cFKGMw p{margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.cFKGMw p{margin-bottom:24px;}}/*!sc*/
.cFKGMw ul,.cFKGMw ol{margin:-24px 0 32px;padding:0;margin:0 0 32px;}/*!sc*/
.cFKGMw li{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;position:relative;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 0 24px;padding:0 0 0 24px;list-style:none;}/*!sc*/
@media (max-width:1201px){.cFKGMw li{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.cFKGMw li{font-size:16px;line-height:24px;}}/*!sc*/
.cFKGMw li:last-child{margin-bottom:0;}/*!sc*/
.cFKGMw li::before{content:'•';position:absolute;top:0;left:0;color:#005ece;font-size:39px;line-height:26px;}/*!sc*/
.cFKGMw li::before{color:#005ECE;}/*!sc*/
.cFKGMw *:last-child{margin-bottom:0;}/*!sc*/
.dJQBfL{color:#fff;word-break:break-word;}/*!sc*/
.dJQBfL h1{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:52px;line-height:64px;margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.dJQBfL h1{font-size:52px;line-height:64px;}}/*!sc*/
@media (max-width:751px){.dJQBfL h1{font-size:24px;line-height:28px;margin-bottom:32px;}}/*!sc*/
.dJQBfL h2{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:24px;line-height:28px;margin-bottom:16px;}/*!sc*/
@media (max-width:1201px){.dJQBfL h2{font-size:24px;line-height:28px;margin-bottom:24px;}}/*!sc*/
@media (max-width:751px){.dJQBfL h2{font-size:18px;line-height:24px;margin-bottom:16px;}}/*!sc*/
.dJQBfL p{margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.dJQBfL p{margin-bottom:24px;}}/*!sc*/
.dJQBfL ul,.dJQBfL ol{margin:-24px 0 32px;padding:0;margin:0 0 32px;}/*!sc*/
.dJQBfL li{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;position:relative;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 0 24px;padding:0 0 0 24px;list-style:none;}/*!sc*/
@media (max-width:1201px){.dJQBfL li{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.dJQBfL li{font-size:16px;line-height:24px;}}/*!sc*/
.dJQBfL li:last-child{margin-bottom:0;}/*!sc*/
.dJQBfL li::before{content:'•';position:absolute;top:0;left:0;color:#005ece;font-size:39px;line-height:26px;}/*!sc*/
.dJQBfL li::before{color:#fff;}/*!sc*/
.dJQBfL *:last-child{margin-bottom:0;}/*!sc*/
data-styled.g525[id="sc-pyhrzd-0"]{content:"cFKGMw,dJQBfL,"}/*!sc*/
.gjfSTs{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:320px;margin:0 0 0 64px;}/*!sc*/
@media (max-width:1201px){.gjfSTs{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:100%;margin:60px 0 0;padding:20px;border-radius:20px;background:#fff;}}/*!sc*/
@media (max-width:751px){.gjfSTs{margin:40px 0 0;}}/*!sc*/
data-styled.g526[id="sc-1232l32-0"]{content:"gjfSTs,"}/*!sc*/
.gLmhvn{margin:0 0 28px;}/*!sc*/
@media (max-width:1201px){.gLmhvn{margin:0 24px 0 0;}}/*!sc*/
@media (max-width:751px){.gLmhvn{margin:0 16px 0 0;}}/*!sc*/
data-styled.g527[id="sc-1232l32-1"]{content:"gLmhvn,"}/*!sc*/
.cLdvvd{color:#afafaf;}/*!sc*/
.cLdvvd h1,.cLdvvd h2,.cLdvvd h3{color:#0f0f10;}/*!sc*/
data-styled.g528[id="sc-1232l32-2"]{content:"cLdvvd,"}/*!sc*/
.cjEHVO{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 auto 80px;padding:0 64px 80px;border-bottom:1px solid #afafaf;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.cjEHVO{display:block;margin:0 auto 60px;padding:0 0 60px;}}/*!sc*/
@media (max-width:751px){.cjEHVO{display:block;margin:0 auto 40px;padding:0 0 80px;}}/*!sc*/
data-styled.g529[id="sc-lpm061-0"]{content:"cjEHVO,"}/*!sc*/
.iKbbnr{margin:0 0 24px;}/*!sc*/
@media (max-width:751px){.iKbbnr{margin:0 0 16px;}}/*!sc*/
data-styled.g530[id="sc-lpm061-1"]{content:"iKbbnr,"}/*!sc*/
.fXxDDe{cursor:pointer;}/*!sc*/
data-styled.g531[id="sc-clwny5-0"]{content:"fXxDDe,"}/*!sc*/
.bPlUQW{object-fit:contain;width:100%;}/*!sc*/
data-styled.g532[id="sc-clwny5-1"]{content:"bPlUQW,"}/*!sc*/
.hHfHsk{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:320px;margin-left:104px;}/*!sc*/
@media (max-width:1201px){.hHfHsk{width:200px;margin-left:40px;}}/*!sc*/
@media (max-width:751px){.hHfHsk{width:100%;margin-left:0;margin-top:60px;}}/*!sc*/
data-styled.g534[id="sc-1nmmm75-0"]{content:"hHfHsk,"}/*!sc*/
.dGIdAz{position:relative;width:100%;margin:0 0 60px;padding-bottom:55.9%;}/*!sc*/
@media (max-width:1201px){.dGIdAz{margin:0 0 40px;}}/*!sc*/
@media (max-width:751px){.dGIdAz{grid-area:b;}}/*!sc*/
data-styled.g535[id="sc-126tghp-0"]{content:"dGIdAz,"}/*!sc*/
.daskap{-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;will-change:transform;color:#fff;position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);}/*!sc*/
@media (max-width:751px){.daskap{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
data-styled.g536[id="sc-126tghp-1"]{content:"daskap,"}/*!sc*/
.djZVhn{min-width:100%;width:100%;min-height:100%;height:100%;cursor:pointer;position:absolute;padding:44px 37px;border-radius:20px;background:linear-gradient(0deg,rgba(0,0,0,0.55),rgba(0,0,0,0.55)), url(null);background-position:center;background-size:contain;background-repeat:no-repeat;}/*!sc*/
.djZVhn:hover .sc-126tghp-1{-webkit-transform:translate(-50%,-50%) scale(1.1);-ms-transform:translate(-50%,-50%) scale(1.1);transform:translate(-50%,-50%) scale(1.1);}/*!sc*/
@media (max-width:1201px){.djZVhn{padding:30px 25px;}}/*!sc*/
@media (max-width:751px){.djZVhn{padding:16px;}}/*!sc*/
data-styled.g537[id="sc-126tghp-2"]{content:"djZVhn,"}/*!sc*/
.cJroeV{color:#fff;}/*!sc*/
data-styled.g538[id="sc-126tghp-3"]{content:"cJroeV,"}/*!sc*/
.dYVcmu{margin:20px auto 80px;padding:0 0 80px;border-bottom:1px solid #afafaf;}/*!sc*/
@media (max-width:1201px){.dYVcmu{margin:0 auto 60px;padding:0 0 60px;}}/*!sc*/
@media (max-width:751px){.dYVcmu{margin:0 auto 80px;padding:0 0 64px;}}/*!sc*/
data-styled.g546[id="sc-1oat6ot-0"]{content:"dYVcmu,"}/*!sc*/
.cVgwEc{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;padding:0 64px 0;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.cVgwEc{padding:0;}}/*!sc*/
data-styled.g547[id="sc-1oat6ot-1"]{content:"cVgwEc,"}/*!sc*/
.hjZAnk{width:auto;min-width:320px;margin:24px 0 0;}/*!sc*/
@media (max-width:1201px){.hjZAnk{margin:48px 0 0;}}/*!sc*/
@media (max-width:751px){.hjZAnk{width:100%;margin:16px 0 0;}}/*!sc*/
data-styled.g549[id="sc-1oat6ot-3"]{content:"hjZAnk,"}/*!sc*/
.hdfpFD{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}/*!sc*/
data-styled.g550[id="sc-1oat6ot-4"]{content:"hdfpFD,"}/*!sc*/
.klGcVm{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:751px){.klGcVm{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g551[id="sc-1oat6ot-5"]{content:"klGcVm,"}/*!sc*/
.iHYLll{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;text-align:center;width:352px;margin-right:32px;}/*!sc*/
.iHYLll:last-child{margin-right:0;}/*!sc*/
@media (max-width:1201px){.iHYLll{width:100%;margin-right:0;margin-top:40px;-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;text-align:left;}.iHYLll:first-child{margin-top:0;}}/*!sc*/
@media (max-width:751px){.iHYLll{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;margin-top:32px;}}/*!sc*/
data-styled.g557[id="sc-16yt4q5-0"]{content:"iHYLll,"}/*!sc*/
.eKcgOu{overflow:hidden;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin-bottom:24px;border-radius:50%;background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );}/*!sc*/
@media (max-width:1201px){.eKcgOu{margin-bottom:0;margin-right:24px;}}/*!sc*/
data-styled.g558[id="sc-16yt4q5-1"]{content:"eKcgOu,"}/*!sc*/
.bUbCKQ{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/oneImg-b1c92b38734a5b324f9b32a5a243bf06.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.bUbCKQ{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
.dIESaV{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/twoImg-28bd45b9ade74f4471bf39916d76d47e.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.dIESaV{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
.gbGscf{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/threeImg-7d8d62a36e7b66f9691d1d7d01b44fb9.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.gbGscf{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
.yjETG{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/oneImg-d53504a93142009806d3cc77cd059dcb.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.yjETG{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
.iGfrzu{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/twoImg-bf3134a7f0a1f9684257b13b37cd07b5.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.iGfrzu{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
.eJXsCF{min-width:80px;width:80px;min-height:80px;height:80px;background-image:url(/_next/static/images/img/threeImg-a81ea3b3db08e9c236bce2eb8f407ab7.svg);background-size:contain;background-repeat:no-repeat;background-position:50% 50%;}/*!sc*/
@media (max-width:751px){.eJXsCF{min-width:48px;width:48px;min-height:48px;height:48px;}}/*!sc*/
data-styled.g559[id="sc-16yt4q5-2"]{content:"bUbCKQ,dIESaV,gbGscf,yjETG,iGfrzu,eJXsCF,"}/*!sc*/
.kgZxtV p{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;}/*!sc*/
@media (max-width:1201px){.kgZxtV p{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.kgZxtV p{font-size:16px;line-height:24px;}}/*!sc*/
.kgZxtV h1{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:24px;line-height:28px;margin-bottom:16px;}/*!sc*/
@media (max-width:1201px){.kgZxtV h1{font-size:24px;line-height:28px;margin-bottom:8px;}}/*!sc*/
@media (max-width:751px){.kgZxtV h1{font-size:18px;line-height:24px;}}/*!sc*/
data-styled.g560[id="sc-16yt4q5-3"]{content:"kgZxtV,"}/*!sc*/
.eOXZIV{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;margin-bottom:20px;}/*!sc*/
data-styled.g561[id="sc-11l8wec-0"]{content:"eOXZIV,"}/*!sc*/
.jpiMVl{margin-bottom:120px;position:relative;}/*!sc*/
@media (max-width:1201px){.jpiMVl{margin-bottom:72px;}}/*!sc*/
data-styled.g562[id="sc-ze365z-0"]{content:"jpiMVl,"}/*!sc*/
.RPhWg{margin-bottom:40px;text-align:center;}/*!sc*/
data-styled.g563[id="sc-ze365z-1"]{content:"RPhWg,"}/*!sc*/
.bnqryM{width:416px;}/*!sc*/
@media (max-width:1201px){.bnqryM{width:100%;}}/*!sc*/
data-styled.g565[id="sc-32ejay-1"]{content:"bnqryM,"}/*!sc*/
.eNgslB{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;position:relative;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin:0 0 24px;padding:0 0 0 24px;list-style:none;margin-bottom:0;}/*!sc*/
@media (max-width:1201px){.eNgslB{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.eNgslB{font-size:16px;line-height:24px;}}/*!sc*/
.eNgslB:last-child{margin-bottom:0;}/*!sc*/
.eNgslB::before{content:'•';position:absolute;top:0;left:0;color:#005ece;font-size:39px;line-height:26px;}/*!sc*/
data-styled.g566[id="sc-1xm68ya-0"]{content:"eNgslB,"}/*!sc*/
.hqEzLD{width:928px;}/*!sc*/
@media (max-width:1201px){.hqEzLD{width:100%;}}/*!sc*/
@media (max-width:751px){.hqEzLD{max-width:344px;}}/*!sc*/
data-styled.g567[id="sc-1xm68ya-1"]{content:"hqEzLD,"}/*!sc*/
.isRQVJ{margin-bottom:80px;padding:160px 0;color:#fff;}/*!sc*/
.isRQVJ .sc-1xm68ya-0::before{color:#fff;}/*!sc*/
@media (max-width:1201px){.isRQVJ{margin-bottom:120px;}}/*!sc*/
@media (max-width:751px){.isRQVJ{margin-bottom:80px;padding:120px 0;}}/*!sc*/
data-styled.g568[id="sc-1xm68ya-2"]{content:"isRQVJ,"}/*!sc*/
.cXcqyt{margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.cXcqyt{margin-bottom:52px;}}/*!sc*/
@media (max-width:751px){.cXcqyt{margin-bottom:32px;}}/*!sc*/
data-styled.g569[id="sc-1xm68ya-3"]{content:"cXcqyt,"}/*!sc*/
.kscGdX{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;gap:40px;margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.kscGdX{gap:60px;margin-bottom:52px;}}/*!sc*/
@media (max-width:751px){.kscGdX{gap:32px;margin-bottom:40px;}}/*!sc*/
data-styled.g570[id="sc-1xm68ya-4"]{content:"kscGdX,"}/*!sc*/
.jEIquP{padding:0;display:grid;grid-template-columns:repeat(3,1fr);gap:24px;}/*!sc*/
.jEIquP .sc-1xm68ya-0:after{background-color:#fff;}/*!sc*/
@media (max-width:1201px){.jEIquP{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
@media (max-width:751px){.jEIquP{gap:12px;}}/*!sc*/
data-styled.g572[id="sc-1xm68ya-6"]{content:"jEIquP,"}/*!sc*/
.eOihnY{font-size:18px;line-height:24px;font-weight:400;position:relative;cursor:pointer;}/*!sc*/
@media (max-width:751px){.eOihnY{font-size:16px;line-height:24px;font-weight:400;}}/*!sc*/
.eOihnY:after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:1px;border-bottom:1px solid #fff;}/*!sc*/
data-styled.g573[id="sc-1xm68ya-7"]{content:"eOihnY,"}/*!sc*/
.kbHGLB{background:#fff;border-radius:25px;padding:24px 40px;display:-webkit-inline-box;display:-webkit-inline-flex;display:-ms-inline-flexbox;display:inline-flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;height:148px !important;}/*!sc*/
.kbHGLB.swiper-slide{width:224px;}/*!sc*/
@media (max-width:751px){.kbHGLB{padding:12px 16px;border-radius:16px;}.kbHGLB.swiper-slide{width:120px;height:80px !important;}}/*!sc*/
data-styled.g574[id="sc-x5ajzb-0"]{content:"kbHGLB,"}/*!sc*/
.cCIEUB{background:url(https://cdn.otus.ru/media/public/fc/11/fc113557264c49d7bac5bdd51ca49652.JPG) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.kgYUbC{background:url(https://cdn.otus.ru/media/public/7a/13/7a13906b56804a5f94d7bbb6e61f69e3.jpg) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.fvDISO{background:url(https://cdn.otus.ru/media/public/1b/33/1b33438b7e4e4570b5b5562fa99eb42d.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.kRkqqA{background:url(https://cdn.otus.ru/media/public/20/8f/208ff2da9f884484803b5640705525e4.jpg) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.gMtMjq{background:url(https://cdn.otus.ru/media/public/71/c0/71c02ba9fa734047a4661c68a46df829.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.gSNjVT{background:url(https://cdn.otus.ru/media/public/bf/88/bf8819c8a4ad4d6b8e1cf2763d4eeffd.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.egApav{background:url(https://cdn.otus.ru/media/public/a3/72/a37244579b91430fbdf5219acad59615.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.kttGEW{background:url(https://cdn.otus.ru/media/public/79/31/793190d3f9484cffb6f1cf0b057a1bd1.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
data-styled.g575[id="sc-x5ajzb-1"]{content:"cCIEUB,kgYUbC,fvDISO,kRkqqA,gMtMjq,gSNjVT,egApav,kttGEW,"}/*!sc*/
.cdveUu{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.cdveUu{width:100%;}}/*!sc*/
data-styled.g576[id="sc-2pu6he-0"]{content:"cdveUu,"}/*!sc*/
.ifdlyD{margin-bottom:40px;white-space:normal;}/*!sc*/
@media (max-width:751px){.ifdlyD{margin-bottom:28px;}}/*!sc*/
data-styled.g577[id="sc-2pu6he-1"]{content:"ifdlyD,"}/*!sc*/
.rLbwk .swiper{margin:0 -40px 0 0;}/*!sc*/
@media (max-width:1201px){.rLbwk .swiper{margin:0 -36px 0 0;}}/*!sc*/
@media (max-width:751px){.rLbwk .swiper{margin:0 -16px 0 0;}}/*!sc*/
data-styled.g579[id="sc-2pu6he-3"]{content:"rLbwk,"}/*!sc*/
.hlgWda{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;width:229px;-webkit-flex:1;-ms-flex:1;flex:1;margin-right:24px;}/*!sc*/
.hlgWda:last-child{margin-right:0;}/*!sc*/
@media (max-width:1201px){.hlgWda{margin-bottom:32px;}.hlgWda:last-child{margin-bottom:0;}}/*!sc*/
@media (max-width:751px){.hlgWda{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;width:100%;margin-bottom:12px;}.hlgWda:last-child{margin-bottom:24px;}}/*!sc*/
data-styled.g580[id="sc-1f5byvo-0"]{content:"hlgWda,"}/*!sc*/
.jyvyoR{color:#25b969;}/*!sc*/
data-styled.g581[id="sc-1f5byvo-1"]{content:"jyvyoR,"}/*!sc*/
.lhTbHf{margin-top:8px;white-space:nowrap;white-space:pre;}/*!sc*/
@media (max-width:751px){.lhTbHf{margin-top:0;}}/*!sc*/
@media (max-width:1201px){.lhTbHf{white-space:nowrap;}}/*!sc*/
data-styled.g582[id="sc-1f5byvo-2"]{content:"lhTbHf,"}/*!sc*/
.kWSJKL{margin-bottom:32px;}/*!sc*/
@media (max-width:751px){.kWSJKL{margin-bottom:20px;}}/*!sc*/
data-styled.g583[id="sc-xgmw75-0"]{content:"kWSJKL,"}/*!sc*/
.fqgPAJ{position:relative;background-color:#fff;color:#0f0f10;border-radius:25px;width:100%;margin:0 0 100px;padding:44px 64px 52px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:1201px){.fqgPAJ{margin:0 0 40px;padding:44px 32px 36px 40px;}}/*!sc*/
@media (max-width:751px){.fqgPAJ{padding:24px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g584[id="sc-xgmw75-1"]{content:"fqgPAJ,"}/*!sc*/
.cGRACb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:12px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
data-styled.g585[id="sc-xgmw75-2"]{content:"cGRACb,"}/*!sc*/
.jzczJK{-webkit-flex:1 1;-ms-flex:1 1;flex:1 1;}/*!sc*/
data-styled.g586[id="sc-xgmw75-3"]{content:"jzczJK,"}/*!sc*/
.fSmctL{margin-bottom:12px;}/*!sc*/
data-styled.g587[id="sc-xgmw75-4"]{content:"fSmctL,"}/*!sc*/
.fHxdGa{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:1201px){.fHxdGa{width:382px;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
@media (max-width:751px){.fHxdGa{width:100%;}}/*!sc*/
data-styled.g588[id="sc-xgmw75-5"]{content:"fHxdGa,"}/*!sc*/
.hNPHLe{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:208px;padding:28px 0 16px 48px;border-left:1px solid #ececec;}/*!sc*/
@media (max-width:1201px){.hNPHLe{position:absolute;right:32px;bottom:60px;padding:0 0 20px 48px;}}/*!sc*/
@media (max-width:751px){.hNPHLe{-webkit-flex-direction:row-reverse;-ms-flex-direction:row-reverse;flex-direction:row-reverse;width:100%;padding:16px 0 0 0;border-top:1px solid #ececec;border-left:none;position:relative;bottom:0;right:0;}}/*!sc*/
data-styled.g589[id="sc-xgmw75-6"]{content:"hNPHLe,"}/*!sc*/
.hBXFys{text-align:center;}/*!sc*/
@media (max-width:1201px){.hBXFys{font-size:62px;line-height:68px;}}/*!sc*/
@media (max-width:751px){.hBXFys{text-align:left;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-left:16px;}}/*!sc*/
data-styled.g590[id="sc-xgmw75-7"]{content:"hBXFys,"}/*!sc*/
.rdBYv{margin-bottom:12px;}/*!sc*/
@media (max-width:751px){.rdBYv{margin-bottom:0;margin-left:24px;}}/*!sc*/
data-styled.g591[id="sc-xgmw75-8"]{content:"rdBYv,"}/*!sc*/
.DwFaw{min-width:48px;width:48px;min-height:48px;height:48px;-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin:0 24px 0 0;border-radius:12px;background:url(https://cdn.otus.ru/media/public/82/01/820122b14f1d43d1a56ba5fc2f2b5cf9.svg),linear-gradient( 99.66deg, #0A4489 11.62%, #00316B 87.01% );background-repeat:no-repeat;background-size:48px 48px;background-position:center;}/*!sc*/
data-styled.g592[id="sc-xgmw75-9"]{content:"DwFaw,"}/*!sc*/
.jzJAgH{height:auto;margin-bottom:120px;padding:160px 0 200px;color:#fff;}/*!sc*/
@media (max-width:1201px){.jzJAgH{margin-bottom:88px;}}/*!sc*/
@media (max-width:751px){.jzJAgH{margin-bottom:64px;padding:136px 0;}}/*!sc*/
data-styled.g593[id="sc-1kuct9n-0"]{content:"jzJAgH,"}/*!sc*/
.jqwyOS{margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.jqwyOS{margin-bottom:44px;}}/*!sc*/
@media (max-width:751px){.jqwyOS{margin-bottom:24px;}}/*!sc*/
data-styled.g594[id="sc-1kuct9n-1"]{content:"jqwyOS,"}/*!sc*/
.cfBLof{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.cfBLof{width:100%;}}/*!sc*/
data-styled.g595[id="sc-1kuct9n-2"]{content:"cfBLof,"}/*!sc*/
.hXsBII{margin:0 0 100px;}/*!sc*/
@media (max-width:1201px){.hXsBII{margin:0 0 60xp;}}/*!sc*/
@media (max-width:751px){.hXsBII{margin:0 0 28px;}}/*!sc*/
.hXsBII ul{-webkit-column-count:2;column-count:2;-webkit-column-gap:96px;column-gap:96px;}/*!sc*/
@media (max-width:1201px){.hXsBII ul{-webkit-column-gap:20px;column-gap:20px;}}/*!sc*/
@media (max-width:751px){.hXsBII ul{-webkit-column-count:1;column-count:1;}}/*!sc*/
.hXsBII ul li{width:416px;}/*!sc*/
@media (max-width:1201px){.hXsBII ul li{width:332px;}}/*!sc*/
@media (max-width:751px){.hXsBII ul li{width:100%;}.hXsBII ul li b{font-weight:400;}}/*!sc*/
data-styled.g598[id="sc-1kuct9n-5"]{content:"hXsBII,"}/*!sc*/
.ciEuHS{color:#0f0f10;padding:32px 10px 10px;border-top:1px solid #ececec;}/*!sc*/
@media (max-width:751px){.ciEuHS{padding:12px 0 0;}}/*!sc*/
data-styled.g600[id="sc-ptxdl6-0"]{content:"ciEuHS,"}/*!sc*/
.kyVtIH{-webkit-transition:height 0.2s ease-out;transition:height 0.2s ease-out;will-change:height;overflow:hidden;}/*!sc*/
data-styled.g601[id="sc-ptxdl6-1"]{content:"kyVtIH,"}/*!sc*/
.kVdrfk{padding-top:20px;}/*!sc*/
@media (max-width:751px){.kVdrfk{padding-top:12px;}}/*!sc*/
data-styled.g602[id="sc-ptxdl6-2"]{content:"kVdrfk,"}/*!sc*/
.hdRZtB{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;gap:24px;}/*!sc*/
data-styled.g603[id="sc-li015i-0"]{content:"hdRZtB,"}/*!sc*/
.bqYpKB{color:#0f0f10;padding:10px;}/*!sc*/
@media (max-width:751px){.bqYpKB{padding:0;}}/*!sc*/
data-styled.g604[id="sc-li015i-1"]{content:"bqYpKB,"}/*!sc*/
.jbRzwu{cursor:pointer;color:#005ECE;background:#fff;border-radius:20px;padding:20px 36px 20px 20px;-webkit-tap-highlight-color:transparent;}/*!sc*/
@media (max-width:751px){.jbRzwu{padding:16px 28px 16px 16px;}}/*!sc*/
data-styled.g605[id="sc-li015i-2"]{content:"jbRzwu,"}/*!sc*/
.dbNuvG{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;will-change:transform;-webkit-transform:rotate(0deg);-ms-transform:rotate(0deg);transform:rotate(0deg);}/*!sc*/
data-styled.g606[id="sc-li015i-3"]{content:"dbNuvG,"}/*!sc*/
.htYSLI{margin-bottom:20px;}/*!sc*/
.htYSLI:last-child{margin-bottom:0;}/*!sc*/
@media (max-width:751px){.htYSLI{margin-bottom:12px;}}/*!sc*/
data-styled.g608[id="sc-tqrjzo-1"]{content:"htYSLI,"}/*!sc*/
.irTCnx{width:992px;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.irTCnx{width:100%;}}/*!sc*/
@media (max-width:751px){.irTCnx{width:100%;margin-bottom:28px;}}/*!sc*/
data-styled.g609[id="sc-1mszhjn-0"]{content:"irTCnx,"}/*!sc*/
.kPNZqQ{margin-bottom:40px;}/*!sc*/
@media (max-width:1201px){.kPNZqQ{margin-bottom:24px;}}/*!sc*/
@media (max-width:751px){.kPNZqQ{margin-bottom:20px;}}/*!sc*/
data-styled.g610[id="sc-1mszhjn-1"]{content:"kPNZqQ,"}/*!sc*/
.gwYuWO.gwYuWO{width:416px;}/*!sc*/
@media (max-width:751px){.gwYuWO.gwYuWO{width:100%;}}/*!sc*/
data-styled.g638[id="sc-kixk9v-0"]{content:"gwYuWO,"}/*!sc*/
.golIF{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-right:10px;}/*!sc*/
@media (max-width:751px){.golIF{display:none;}}/*!sc*/
data-styled.g646[id="sc-1vxm7ng-0"]{content:"golIF,"}/*!sc*/
.dbOiAN{margin:0 16px;}/*!sc*/
data-styled.g647[id="sc-1vxm7ng-1"]{content:"dbOiAN,"}/*!sc*/
.jxmQOK{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;font-size:18px;}/*!sc*/
.jxmQOK a{position:relative;}/*!sc*/
.jxmQOK a:hover::after{background-color:transparent;}/*!sc*/
.jxmQOK a::after{-webkit-transition:background-color 0.2s ease-out;transition:background-color 0.2s ease-out;will-change:background-color;content:'';position:absolute;bottom:-4px;left:0;width:100%;height:1px;background-color:currentColor;}/*!sc*/
@media (max-width:1201px){.jxmQOK{font-size:16px;}}/*!sc*/
data-styled.g648[id="sc-1vxm7ng-2"]{content:"jxmQOK,"}/*!sc*/
.jDOZfu{position:absolute;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;min-width:100%;margin-top:24px;padding:0 41px;z-index:10;}/*!sc*/
@media (max-width:751px){.jDOZfu{padding:0 16.5px;}}/*!sc*/
data-styled.g657[id="sc-4o7hfp-0"]{content:"jDOZfu,"}/*!sc*/
.eBROUt{-webkit-flex:0;-ms-flex:0;flex:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;right:0;margin:0 0 0 auto;}/*!sc*/
@media (max-width:1201px){.eBROUt{-webkit-flex:auto;-ms-flex:auto;flex:auto;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}/*!sc*/
@media (max-width:751px){.eBROUt{width:100%;left:0;-webkit-flex-wrap:nowrap;-ms-flex-wrap:nowrap;flex-wrap:nowrap;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}/*!sc*/
data-styled.g658[id="sc-4o7hfp-1"]{content:"eBROUt,"}/*!sc*/
.fHVRxg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 -12px;}/*!sc*/
@media (max-width:1201px){.fHVRxg{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;-webkit-box-pack:end;-webkit-justify-content:flex-end;-ms-flex-pack:end;justify-content:flex-end;}}/*!sc*/
data-styled.g659[id="sc-4o7hfp-2"]{content:"fHVRxg,"}/*!sc*/
.eufkJz{position:relative;padding-bottom:60px;color:#fff;}/*!sc*/
@media (max-width:1201px){.eufkJz{padding-bottom:80px;}}/*!sc*/
@media (max-width:751px){.eufkJz{padding-bottom:40px;}}/*!sc*/
data-styled.g663[id="sc-s2pydo-0"]{content:"eufkJz,"}/*!sc*/
.diGrSa{width:654px;margin-bottom:24px;text-align:center;}/*!sc*/
@media (max-width:1201px){.diGrSa{width:468px;}}/*!sc*/
@media (max-width:751px){.diGrSa{width:100%;}}/*!sc*/
data-styled.g664[id="sc-s2pydo-1"]{content:"diGrSa,"}/*!sc*/
.kPueMS{margin-bottom:24px;height:80px;width:80px;background-image:url(https://cdn.otus.ru/media/public/07/34/07349e8c6bdf4eb9b0b9b09718a0c57e.svg);background-repeat:no-repeat;background-size:100% 100%;}/*!sc*/
@media (max-width:1201px){.kPueMS{margin-bottom:40px;}}/*!sc*/
@media (max-width:751px){.kPueMS{margin-bottom:24px;}}/*!sc*/
data-styled.g665[id="sc-s2pydo-2"]{content:"kPueMS,"}/*!sc*/
.dZDxRw{width:640px;margin-bottom:40px;text-align:center;}/*!sc*/
@media (max-width:751px){.dZDxRw{margin-bottom:24px;width:100%;}}/*!sc*/
data-styled.g666[id="sc-s2pydo-3"]{content:"dZDxRw,"}/*!sc*/
.EOCgR{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}/*!sc*/
data-styled.g668[id="sc-s2pydo-6"]{content:"EOCgR,"}/*!sc*/
.iHjMxQ{padding:134px 0 200px;}/*!sc*/
@media (max-width:1201px){.iHjMxQ{padding-top:152px;}}/*!sc*/
@media (max-width:751px){.iHjMxQ{padding:128px 0 136px;}}/*!sc*/
data-styled.g669[id="sc-s2pydo-5"]{content:"iHjMxQ,"}/*!sc*/
.fYPwsY.fYPwsY{width:480px;}/*!sc*/
@media (max-width:1201px){.fYPwsY.fYPwsY{width:100%;}}/*!sc*/
data-styled.g670[id="sc-n3p609-0"]{content:"fYPwsY,"}/*!sc*/
.caypgj{margin-bottom:32px;}/*!sc*/
data-styled.g671[id="sc-n3p609-1"]{content:"caypgj,"}/*!sc*/
.gAbnmq{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;color:#0f0f10;-webkit-flex:1 0 480px;-ms-flex:1 0 480px;flex:1 0 480px;margin-right:32px;margin-bottom:32px;}/*!sc*/
.gAbnmq:nth-child(2n){margin-right:0;}/*!sc*/
.gAbnmq:nth-last-child(-n + 2){margin-bottom:0;}/*!sc*/
@media (max-width:1201px){.gAbnmq{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-right:0;margin-bottom:24px;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;}.gAbnmq:nth-last-child(-n + 2){margin-bottom:24px;}.gAbnmq:last-child{margin-bottom:0;}}/*!sc*/
@media (max-width:751px){.gAbnmq{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}.gAbnmq:nth-last-child(-n + 2){margin-bottom:40px;}}/*!sc*/
data-styled.g673[id="sc-1l3meww-0"]{content:"gAbnmq,"}/*!sc*/
.etLWhg{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:256px;height:144px;border-radius:20px;margin-right:32px;background-image:url(https://i.mycdn.me/getVideoPreview?id=11253096647313&idx=8&type=39&tkn=79kESg7l_JrC2D29BXavulX-NF8&fn=vid_l);background-position:center center;background-repeat:no-repeat;background-size:cover;cursor:pointer;}/*!sc*/
@media (max-width:1201px){.etLWhg{margin-right:40px;}}/*!sc*/
@media (max-width:751px){.etLWhg{margin-right:0;margin-bottom:12px;width:320px;height:177px;}}/*!sc*/
.jsBpWB{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:256px;height:144px;border-radius:20px;margin-right:32px;background-image:url(https://sun9-13.userapi.com/impg/CsfDIOnQmx15crfdPXlMfdN33Y1eS6G3kdOEIg/PAnky1e1J3M.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=869aabda4abfb109748d9a5089579090&c_uniq_tag=t9KrP4c0kQckOX7f0lf9q33JkWPSGt1GIba-PyP-Kmw&type=video_thumb);background-position:center center;background-repeat:no-repeat;background-size:cover;cursor:pointer;}/*!sc*/
@media (max-width:1201px){.jsBpWB{margin-right:40px;}}/*!sc*/
@media (max-width:751px){.jsBpWB{margin-right:0;margin-bottom:12px;width:320px;height:177px;}}/*!sc*/
data-styled.g674[id="sc-1l3meww-1"]{content:"etLWhg,jsBpWB,"}/*!sc*/
.cHxJxf{width:192px;}/*!sc*/
@media (max-width:1201px){.cHxJxf{width:320px;}}/*!sc*/
data-styled.g675[id="sc-1l3meww-2"]{content:"cHxJxf,"}/*!sc*/
.blhXzJ{white-space:nowrap;overflow:auto;text-overflow:ellipsis;margin-bottom:4px;}/*!sc*/
@media (max-width:1201px){.blhXzJ{margin-bottom:8px;}}/*!sc*/
data-styled.g676[id="sc-1l3meww-3"]{content:"blhXzJ,"}/*!sc*/
.dePnfm{margin-bottom:12px;}/*!sc*/
@media (max-width:1201px){.dePnfm{margin-bottom:8px;}}/*!sc*/
data-styled.g677[id="sc-1l3meww-4"]{content:"dePnfm,"}/*!sc*/
.gnNvLT{word-wrap:break-word;overflow:hidden;max-height:192px;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;}/*!sc*/
data-styled.g678[id="sc-1l3meww-5"]{content:"gnNvLT,"}/*!sc*/
.hkpcCk{color:#fff;}/*!sc*/
data-styled.g680[id="sc-1l3meww-7"]{content:"hkpcCk,"}/*!sc*/
.frFtzw{background:#fff;border-radius:20px;padding:64px;margin-bottom:120px;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.frFtzw{padding:40px 32px;margin-bottom:152px;}}/*!sc*/
@media (max-width:751px){.frFtzw{padding:20px 16px;margin-bottom:116px;}}/*!sc*/
data-styled.g681[id="sc-g9zqla-0"]{content:"frFtzw,"}/*!sc*/
.jqTCqB{margin-bottom:40px;}/*!sc*/
@media (max-width:751px){.jqTCqB{margin-bottom:24px;}}/*!sc*/
data-styled.g682[id="sc-g9zqla-1"]{content:"jqTCqB,"}/*!sc*/
.nExnN{display:none;}/*!sc*/
@media (max-width:1201px){.nExnN{display:block;}}/*!sc*/
@media (max-width:751px){.nExnN{display:none;}}/*!sc*/
data-styled.g683[id="sc-g9zqla-2"]{content:"nExnN,"}/*!sc*/
.cmzqGo{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:32px;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}/*!sc*/
@media (max-width:1201px){.cmzqGo{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
@media (max-width:751px){.cmzqGo{margin-bottom:0;}}/*!sc*/
data-styled.g684[id="sc-g9zqla-3"]{content:"cmzqGo,"}/*!sc*/
.fKOpVc{background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:justify;-webkit-justify-content:space-between;-ms-flex-pack:justify;justify-content:space-between;margin:120px 0 0;padding:54px 64px;border-radius:20px;box-shadow:0px 0px 49px rgba(0,0,0,0.05);}/*!sc*/
@media (max-width:1201px){.fKOpVc{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;-webkit-align-items:normal;-webkit-box-align:normal;-ms-flex-align:normal;align-items:normal;padding:48px 64px;}}/*!sc*/
@media (max-width:1201px){.fKOpVc{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;padding:40px 24px;}}/*!sc*/
data-styled.g762[id="sc-hqry8z-0"]{content:"fKOpVc,"}/*!sc*/
.byqrft{-webkit-flex:1;-ms-flex:1;flex:1;color:#fff;white-space:pre-wrap;}/*!sc*/
@media (max-width:751px){.byqrft{white-space:normal;}}/*!sc*/
data-styled.g763[id="sc-hqry8z-1"]{content:"byqrft,"}/*!sc*/
.ipIyzP{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:288px;margin:0 32px 0 0;}/*!sc*/
@media (max-width:1201px){.ipIyzP{width:100%;margin:32px 0 0;}}/*!sc*/
@media (max-width:1201px){.ipIyzP{margin:28px 0 0;}}/*!sc*/
data-styled.g764[id="sc-hqry8z-2"]{content:"ipIyzP,"}/*!sc*/
.kGaApg:not(:last-child){margin-bottom:24px;}/*!sc*/
data-styled.g765[id="sc-1dvzzbq-0"]{content:"kGaApg,"}/*!sc*/
.bTvRzO{margin-bottom:40px;}/*!sc*/
.bTvRzO:last-child{margin-bottom:0;}/*!sc*/
@media (max-width:1201px){.bTvRzO{margin-bottom:32px;}}/*!sc*/
@media (max-width:751px){.bTvRzO{margin-bottom:24px;}}/*!sc*/
data-styled.g767[id="sc-yxq6ju-1"]{content:"bTvRzO,"}/*!sc*/
.kOagS{padding-top:40px;}/*!sc*/
@media (max-width:1201px){.kOagS{padding-top:32px;}}/*!sc*/
@media (max-width:751px){.kOagS{padding-top:24px;}}/*!sc*/
data-styled.g768[id="sc-12j3cf5-0"]{content:"kOagS,"}/*!sc*/
.jTjgBj{margin:0 0 24px;}/*!sc*/
@media (max-width:751px){.jTjgBj{margin:0 0 16px;}}/*!sc*/
data-styled.g769[id="sc-12j3cf5-1"]{content:"jTjgBj,"}/*!sc*/
.cmpQoV{margin-bottom:120px;padding-top:80px;border-top:1px solid #afafaf;}/*!sc*/
@media (max-width:1201px){.cmpQoV{margin-bottom:58px;}}/*!sc*/
@media (max-width:751px){.cmpQoV{margin-bottom:64px;}}/*!sc*/
data-styled.g776[id="sc-1am6qh7-0"]{content:"cmpQoV,"}/*!sc*/
.bmcDgO{width:992px;margin:0 auto;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.bmcDgO{width:100%;}}/*!sc*/
@media (max-width:751px){.bmcDgO{width:100%;}}/*!sc*/
data-styled.g777[id="sc-1am6qh7-1"]{content:"bmcDgO,"}/*!sc*/
.jZdzTX{margin-bottom:76px;}/*!sc*/
@media (max-width:1201px){.jZdzTX{margin-bottom:84px;}}/*!sc*/
@media (max-width:751px){.jZdzTX{margin-bottom:32px;}}/*!sc*/
data-styled.g778[id="sc-1am6qh7-2"]{content:"jZdzTX,"}/*!sc*/
.coDgWq{width:512px;}/*!sc*/
@media (max-width:1201px){.coDgWq{width:500px;}}/*!sc*/
@media (max-width:751px){.coDgWq{width:352px;}}/*!sc*/
data-styled.g779[id="sc-wqbts8-0"]{content:"coDgWq,"}/*!sc*/
.jjMVIs{position:relative;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:992px;margin:0 auto 212px;}/*!sc*/
@media (max-width:1201px){.jjMVIs{margin-bottom:198px;-webkit-flex-direction:column-reverse;-ms-flex-direction:column-reverse;flex-direction:column-reverse;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;width:100%;}}/*!sc*/
@media (max-width:751px){.jjMVIs{margin-bottom:136px;}}/*!sc*/
data-styled.g780[id="sc-130tum6-0"]{content:"jjMVIs,"}/*!sc*/
.leLsGR{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-width:480px;}/*!sc*/
.leLsGR h2{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:52px;line-height:64px;}/*!sc*/
@media (max-width:1201px){.leLsGR h2{font-size:52px;line-height:64px;max-width:100%;margin-top:66px;}}/*!sc*/
@media (max-width:751px){.leLsGR h2{font-size:24px;line-height:28px;margin-top:28px;}}/*!sc*/
@media (max-width:1201px){.leLsGR{max-width:100%;margin-top:66px;}}/*!sc*/
@media (max-width:751px){.leLsGR{margin-top:28px;}}/*!sc*/
data-styled.g781[id="sc-130tum6-1"]{content:"leLsGR,"}/*!sc*/
.ervbDS{margin:0 12px 0 0;}/*!sc*/
.ervbDS:last-child{margin:0;}/*!sc*/
data-styled.g802[id="sc-e8trbg-0"]{content:"ervbDS,"}/*!sc*/
.hejpaX{color:#afafaf;}/*!sc*/
data-styled.g803[id="sc-uyf7sm-0"]{content:"hejpaX,"}/*!sc*/
.gQNEkq{padding:40px 64px;background:#fff;border-radius:20px;height:100%;}/*!sc*/
@media (max-width:1201px){.gQNEkq.swiper-slide{width:544px;padding:40px;}}/*!sc*/
@media (max-width:751px){.gQNEkq.swiper-slide{width:100%;margin:0;padding:24px 16px;}}/*!sc*/
data-styled.g804[id="sc-h3yero-0"]{content:"gQNEkq,"}/*!sc*/
.kaQYTv{color:#0f0f10;margin-bottom:16px;}/*!sc*/
@media (max-width:751px){.kaQYTv{margin-bottom:4px;}}/*!sc*/
data-styled.g805[id="sc-h3yero-1"]{content:"kaQYTv,"}/*!sc*/
.dOvyBf{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:20px;}/*!sc*/
data-styled.g806[id="sc-h3yero-2"]{content:"dOvyBf,"}/*!sc*/
.keJcdl{margin-right:24px;}/*!sc*/
data-styled.g807[id="sc-h3yero-3"]{content:"keJcdl,"}/*!sc*/
.bEocPc{width:88px;height:88px;border-radius:50%;background-image:url(https://cdn.otus.ru/media/public/36/e4/avatar-511013-36e4b0.png);background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:751px){.bEocPc{width:60px;height:60px;}}/*!sc*/
data-styled.g808[id="sc-h3yero-4"]{content:"bEocPc,"}/*!sc*/
.dYfXnT{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;max-width:30%;}/*!sc*/
@media (max-width:1201px){.dYfXnT{max-width:208px;}}/*!sc*/
@media (max-width:751px){.dYfXnT{max-width:92px;}}/*!sc*/
data-styled.g809[id="sc-h3yero-5"]{content:"dYfXnT,"}/*!sc*/
.bXBhOa{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;justify-self:flex-start;margin-left:auto;}/*!sc*/
data-styled.g810[id="sc-h3yero-6"]{content:"bXBhOa,"}/*!sc*/
.fwXQYP{color:#0f0f10;margin-bottom:16px;word-wrap:break-word;overflow:hidden;max-height:168px;display:-webkit-box;-webkit-line-clamp:7;-webkit-box-orient:vertical;}/*!sc*/
@media (max-width:1201px){.fwXQYP{word-wrap:break-word;overflow:hidden;max-height:144px;display:-webkit-box;-webkit-line-clamp:6;-webkit-box-orient:vertical;}}/*!sc*/
@media (max-width:751px){.fwXQYP{word-wrap:break-word;overflow:hidden;max-height:216px;display:-webkit-box;-webkit-line-clamp:9;-webkit-box-orient:vertical;}}/*!sc*/
data-styled.g812[id="sc-h3yero-8"]{content:"fwXQYP,"}/*!sc*/
.dXezGA{margin-bottom:120px;position:relative;}/*!sc*/
@media (max-width:751px){.dXezGA{margin-bottom:80px;}}/*!sc*/
data-styled.g814[id="sc-h0c1ca-0"]{content:"dXezGA,"}/*!sc*/
@media (min-width:1200px){.gaiDWC{margin:-16px -16px 0;}}/*!sc*/
data-styled.g815[id="sc-h0c1ca-1"]{content:"gaiDWC,"}/*!sc*/
.dygiGU{margin-left:64px;margin-bottom:60px;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.dygiGU{margin-left:0;margin-bottom:44px;}}/*!sc*/
@media (max-width:751px){.dygiGU{margin-bottom:24px;}}/*!sc*/
data-styled.g818[id="sc-h0c1ca-4"]{content:"dygiGU,"}/*!sc*/
@media (max-width:1201px){.vuxta .swiper{margin-right:-36px;}}/*!sc*/
@media (max-width:751px){.vuxta .swiper{margin-right:0;}}/*!sc*/
data-styled.g819[id="sc-h0c1ca-5"]{content:"vuxta,"}/*!sc*/
.XkBuU{background-image:url(https://cdn.otus.ru/media/public/eb/13/eb13d2ffca3b45adbf61f4b11889f182.png);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.XkBuU:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.ildkjA{background-image:url(https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.ildkjA:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.iCZAU{background-image:url(https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.iCZAU:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.eKIGkP{background-image:url(https://cdn.otus.ru/media/public/ee/04/ee045664d2af4d23acf5f99eed616b95.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.eKIGkP:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.lkcwQG{background-image:url(https://cdn.otus.ru/media/public/9a/93/9a93e389c2f14d63ae66f99d01076b37.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.lkcwQG:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.BpJs{background-image:url(https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.BpJs:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.igTkz{background-image:url(https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.igTkz:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.epJsoR{background-image:url(https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.epJsoR:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
.izRHOr{background-image:url(https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg);background-repeat:no-repeat;background-position:50% 50%;background-size:cover;position:relative;width:100%;height:100%;border-radius:15px;}/*!sc*/
@media (min-width:1200px){.izRHOr:before{-webkit-transition:opacity 0.2s ease-out;transition:opacity 0.2s ease-out;will-change:opacity;content:'';position:absolute;width:100%;height:100%;top:0;left:0;background-color:#fff;z-index:2;opacity:0.1;border-radius:inherit;}}/*!sc*/
data-styled.g820[id="sc-jotj87-0"]{content:"XkBuU,ildkjA,iCZAU,eKIGkP,lkcwQG,BpJs,igTkz,epJsoR,izRHOr,"}/*!sc*/
.fjUCpx{cursor:pointer;position:relative;width:256px;height:380px;}/*!sc*/
@media (min-width:1200px){.fjUCpx{-webkit-transition:-webkit-transform 0.2s ease-out;-webkit-transition:transform 0.2s ease-out;transition:transform 0.2s ease-out;will-change:transform;}.fjUCpx:hover{-webkit-transform:scale(1.078);-ms-transform:scale(1.078);transform:scale(1.078);}.fjUCpx:hover > .sc-jotj87-0::before{opacity:0;}}/*!sc*/
@media (max-width:751px){.fjUCpx{width:172px;height:255px;}}/*!sc*/
data-styled.g821[id="sc-jotj87-1"]{content:"fjUCpx,"}/*!sc*/
.fxMjmR{color:#fff;}/*!sc*/
.fxMjmR.swiper-slide{width:256px;}/*!sc*/
@media (max-width:1201px){.fxMjmR.swiper-slide{width:256px;}}/*!sc*/
@media (max-width:751px){.fxMjmR.swiper-slide{width:172px;}}/*!sc*/
@media (max-width:1201px){.fxMjmR.swiper-slide{margin:0;}}/*!sc*/
data-styled.g826[id="sc-1s527z5-0"]{content:"fxMjmR,"}/*!sc*/
.iiYkXk{margin-top:20px;}/*!sc*/
data-styled.g827[id="sc-1s527z5-1"]{content:"iiYkXk,"}/*!sc*/
.jSHKpX{margin-top:8px;}/*!sc*/
@media (max-width:751px){.jSHKpX{margin-top:4px;}}/*!sc*/
data-styled.g828[id="sc-1s527z5-2"]{content:"jSHKpX,"}/*!sc*/
.kLSaHO{margin-top:8px;font-style:italic;}/*!sc*/
@media (max-width:751px){.kLSaHO{margin-top:4px;}}/*!sc*/
data-styled.g829[id="sc-1s527z5-3"]{content:"kLSaHO,"}/*!sc*/
.iJNhSn{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.iJNhSn{width:100%;}}/*!sc*/
data-styled.g844[id="sc-7bqyxh-0"]{content:"iJNhSn,"}/*!sc*/
.eTWzoY{position:relative;height:auto;margin-bottom:120px;padding:160px 0 200px;color:#fff;}/*!sc*/
@media (max-width:751px){.eTWzoY{margin-bottom:92px;padding:136px 0;}}/*!sc*/
data-styled.g845[id="sc-7bqyxh-1"]{content:"eTWzoY,"}/*!sc*/
.imGcoX{overflow:hidden;padding:0 105px;margin:0 -105px;}/*!sc*/
@media (max-width:1201px){.imGcoX{padding:0 36px;margin:0 -36px;}}/*!sc*/
@media (max-width:751px){.imGcoX{padding:0 16px;margin:0 -16px;}}/*!sc*/
data-styled.g846[id="sc-7bqyxh-2"]{content:"imGcoX,"}/*!sc*/
.gvtgmJ{margin-bottom:80px;}/*!sc*/
@media (max-width:1201px){.gvtgmJ{margin-bottom:48px;}}/*!sc*/
@media (max-width:751px){.gvtgmJ{margin-bottom:40px;}}/*!sc*/
data-styled.g847[id="sc-7bqyxh-3"]{content:"gvtgmJ,"}/*!sc*/
.hgzLIf{position:relative;width:672px;margin:56px 0 0;}/*!sc*/
@media (max-width:1201px){.hgzLIf{margin:112px 0 0;}}/*!sc*/
@media (max-width:751px){.hgzLIf{margin:48px 0 0;}}/*!sc*/
@media (max-width:751px){.hgzLIf{width:100%;}}/*!sc*/
data-styled.g848[id="sc-7bqyxh-4"]{content:"hgzLIf,"}/*!sc*/
.gCZLLN .swiper{overflow:visible;}/*!sc*/
data-styled.g849[id="sc-7bqyxh-5"]{content:"gCZLLN,"}/*!sc*/
.cjUVzd{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 auto 67px;padding:0 64px 0;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.cjUVzd{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:0 auto 110px;padding:0;}}/*!sc*/
@media (max-width:751px){.cjUVzd{margin:0 auto 50px;}}/*!sc*/
data-styled.g851[id="sc-rvdro8-0"]{content:"cjUVzd,"}/*!sc*/
.hIDsVz{margin:0 0 40px;}/*!sc*/
@media (max-width:751px){.hIDsVz{margin:0 0 24px;}}/*!sc*/
data-styled.g853[id="sc-rvdro8-2"]{content:"hIDsVz,"}/*!sc*/
.fAoRTp{min-width:448px;width:448px;min-height:448px;height:448px;margin:0 32px 0 0;object-fit:contain;}/*!sc*/
@media (max-width:1201px){.fAoRTp{min-width:547px;width:547px;min-height:547px;height:547px;margin:0 auto 24px;}}/*!sc*/
@media (max-width:751px){.fAoRTp{min-width:352px;width:352px;min-height:352px;height:352px;margin:0 auto 40px;}}/*!sc*/
data-styled.g854[id="sc-rvdro8-1-Component"]{content:"fAoRTp,"}/*!sc*/
.bbEYfR{margin-bottom:120px;}/*!sc*/
@media (max-width:1201px){.bbEYfR{margin-bottom:80px;}}/*!sc*/
@media (max-width:751px){.bbEYfR{margin-bottom:40px;}}/*!sc*/
data-styled.g855[id="sc-nqd633-0"]{content:"bbEYfR,"}/*!sc*/
</style></head><body><div id="__next"><script type="application/ld+json">{
"@context": "https://schema.org",
"@type": "Organization",
"name": "Otus",
"url": "https://otus.ru",
"logo": "https://otus.ru/__new_static__/img/meta-image.png",
"sameAs": [
"https://vk.com/otusru",
"https://t.me/Otusjava"
]
}</script><div class="sc-1j17uuq-0 klmZDZ sc-1b3dhyb-0 bzaXwp"><div class="ui-chunk-container sc-1pwtpfp-0 dMvvUT sc-1pwtpfp-0 dMvvUT"><div class="before-header-ui">
<div class="before-header-ui__ellipse1"></div>
<div class="before-header-ui__ellipse2"></div>
<div class="before-header-ui__container">
<div class="before-header-ui__img before-header-ui__img_sales"></div>
<div class="before-header-ui__content">
<div class="before-header-ui__title hide-phone">Курсы по нейросетям со скидкой до 30%</div>
<div class="before-header-ui__title show-phone">Курсы по нейросетям со скидкой до 30%</div>
</div>
<a class="before-header-ui__button" rel="noopener" href="https://otus.ru/catalog/courses?categories=neural_networks&utm_source=internal&utm_medium=free&utm_campaign=otus&utm_term=chank&utm_content=sla_sale_20-02-2026-10-04-2026" target="_blank">Выбрать курс</a>
</div>
</div></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div id="main-menu" class="sc-r03h0s-0 dKnRmO"><div class="sc-x072mc-0 sc-1x9oq14-0-styled-div sc-r03h0s-1 hOtCic eFDQwF bMTmMH"><a class="sc-r03h0s-2 iLJJBX" href="/"><img src="/_next/static/images/img/logo2022_without_text-ad6a01e8608432b9967c441a0f4760b4.svg" alt="OTUS Logo" width="82" height="42" class="sc-136rsxq-0 dxxUfg"/></a><nav class="sc-r03h0s-3 kVvakX"><div class="sc-r03h0s-5 sc-1youhxc-2 sc-k2vhmo-0 bYKNcH gAMwby gnDzft"><div class="sc-k2vhmo-1 cYMYSf"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-k2vhmo-2 etPPJE"><circle cx="11.7666" cy="11.7666" r="8.98856" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></circle><path d="M18.0183 18.4852L21.5423 22.0001" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"></path></svg></div></div><div class="sc-r03h0s-5 sc-1youhxc-2 cGgLky ewISlX"><span title="Обучение" class="sc-1youhxc-1 cMNIlZ">Обучение</span> <div size="24" class="sc-i28ik1-0 bmVffP sc-1youhxc-0 dwrtLP"><div class="sc-i28ik1-1 gNVXtU"><svg width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-8zcw6d-0 eJDLVL"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.10067 0.378818C1.29593 0.183556 1.61251 0.183555 1.80778 0.378818L5.00023 3.57127L8.19272 0.378777C8.38798 0.183515 8.70457 0.183515 8.89983 0.378777C9.09509 0.574039 9.09509 0.890622 8.89983 1.08588L5.3643 4.62142C5.26426 4.72146 5.13237 4.77024 5.00127 4.76777C4.8695 4.77079 4.73676 4.72202 4.6362 4.62146L1.10067 1.08592C0.905408 0.890663 0.905408 0.57408 1.10067 0.378818Z" fill="currentColor"></path></svg></div></div></div><div class="sc-piuiz2-0 fEESDM"><div class="sc-piuiz2-1 fDVGGf"><svg class="sc-1gml7ra-3 XomuX sc-r03h0s-6 sc-1891c19-0 kpxsrg ggDqfB" viewBox="0 0 600 600" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M125.573 140.619C131.659 71.6017 210.245 34.9562 267.027 74.6573L553.942 275.262C610.723 314.962 603.117 401.233 540.247 430.55L222.58 578.681C159.71 607.997 88.7344 558.37 94.8204 489.355L125.573 140.619Z" stroke="#eaeaea" class="sc-1gml7ra-0 hERPbJ"></path><path d="M148.472 246.647C133.624 191.005 184.615 140.013 240.257 154.862L519.856 229.476C575.498 244.325 594.059 313.877 553.266 354.67L348.281 559.656C307.488 600.449 237.935 581.888 223.087 526.246L148.472 246.647Z" fill="url(#9842ffaed590a26542b1763c)"></path><defs><linearGradient id="9842ffaed590a26542b1763c" x1="128.696" y1="395.739" x2="443.538" y2="180.173" gradientUnits="userSpaceOnUse"><stop stop-color="rgba(249, 249, 249, 1)"></stop><stop offset="1" stop-color="rgba(235, 235, 235, 1)"></stop></linearGradient></defs></svg><div class="sc-piuiz2-2 fhxPhf"><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-1kjc6dh-0 fXsjgC"><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">Направления</p><div class="sc-1kjc6dh-2 sc-ig0m9y-0 lhsLfs cgYLnJ"><a class="sc-4zz0i4-0 dZepSJ" href="/categories/programming">Программирование<!-- --> (<!-- -->117<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/architecture">Архитектура<!-- --> (<!-- -->17<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/data-science">Data Science<!-- --> (<!-- -->27<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/operations">Инфраструктура<!-- --> (<!-- -->58<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/gamedev">GameDev<!-- --> (<!-- -->10<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/information-security-courses">Безопасность<!-- --> (<!-- -->15<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/marketing-business">Управление<!-- --> (<!-- -->46<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/analytics">Аналитика и анализ<!-- --> (<!-- -->25<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/business-product">Бизнес и продукт в IT<!-- --> (<!-- -->26<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/import-substitution">Импортозамещение<!-- --> (<!-- -->15<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/testing">Тестирование<!-- --> (<!-- -->12<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/neural_networks">Нейросети<!-- --> (<!-- -->9<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/it-bez-programmirovanija">IT без программирования<!-- --> (<!-- -->19<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/corporate">Корпоративные курсы<!-- --> (<!-- -->27<!-- -->)</a></div></div></div><div class="sc-1kjc6dh-0 fXsjgC"><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">События</p><div class="sc-1kjc6dh-2 eANJVj"><a class="sc-4zz0i4-0 dZepSJ" href="/lessons/calendar/2026">Календарь запуска курсов</a><a class="sc-4zz0i4-0 dZepSJ" href="/events/near">Календарь мероприятий</a></div></div><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">Другое</p><div class="sc-1kjc6dh-2 eANJVj"><a class="sc-4zz0i4-0 dZepSJ" href="/categories/spec">Специализации<!-- --> (<!-- -->13<!-- -->)</a><a class="sc-4zz0i4-0 dZepSJ" href="/categories/online">Подготовительные курсы<!-- --> (<!-- -->14<!-- -->)</a><a class="sc-4zz0i4-0 gXNPrh" href="/subscription">Подписка на курсы</a><a class="sc-4zz0i4-0 dZepSJ" href="/tests">Проверьте свои знания</a></div></div></div></div></div></div><div class="sc-r03h0s-5 sc-1youhxc-2 cGgLky ewISlX"><span title="Информация" class="sc-1youhxc-1 cMNIlZ">Информация</span> <div size="24" class="sc-i28ik1-0 bmVffP sc-1youhxc-0 dwrtLP"><div class="sc-i28ik1-1 gNVXtU"><svg width="10" height="5" viewBox="0 0 10 5" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-8zcw6d-0 eJDLVL"><path fill-rule="evenodd" clip-rule="evenodd" d="M1.10067 0.378818C1.29593 0.183556 1.61251 0.183555 1.80778 0.378818L5.00023 3.57127L8.19272 0.378777C8.38798 0.183515 8.70457 0.183515 8.89983 0.378777C9.09509 0.574039 9.09509 0.890622 8.89983 1.08588L5.3643 4.62142C5.26426 4.72146 5.13237 4.77024 5.00127 4.76777C4.8695 4.77079 4.73676 4.72202 4.6362 4.62146L1.10067 1.08592C0.905408 0.890663 0.905408 0.57408 1.10067 0.378818Z" fill="currentColor"></path></svg></div></div></div><div class="sc-piuiz2-0 fEESDM"><div class="sc-piuiz2-1 fDVGGf"><svg class="sc-1gml7ra-3 XomuX sc-r03h0s-6 sc-1891c19-0 kpxsrg ggDqfB" viewBox="0 0 600 600" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M125.573 140.619C131.659 71.6017 210.245 34.9562 267.027 74.6573L553.942 275.262C610.723 314.962 603.117 401.233 540.247 430.55L222.58 578.681C159.71 607.997 88.7344 558.37 94.8204 489.355L125.573 140.619Z" stroke="#eaeaea" class="sc-1gml7ra-0 hERPbJ"></path><path d="M148.472 246.647C133.624 191.005 184.615 140.013 240.257 154.862L519.856 229.476C575.498 244.325 594.059 313.877 553.266 354.67L348.281 559.656C307.488 600.449 237.935 581.888 223.087 526.246L148.472 246.647Z" fill="url(#54d4308f81de651b9a726a7d)"></path><defs><linearGradient id="54d4308f81de651b9a726a7d" x1="128.696" y1="395.739" x2="443.538" y2="180.173" gradientUnits="userSpaceOnUse"><stop stop-color="rgba(249, 249, 249, 1)"></stop><stop offset="1" stop-color="rgba(235, 235, 235, 1)"></stop></linearGradient></defs></svg><div class="sc-piuiz2-2 fhxPhf"><div class="sc-1kjc6dh-0 fXsjgC"><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">OTUS</p><div class="sc-1kjc6dh-2 eANJVj"><a class="sc-4zz0i4-0 dZepSJ" href="/about">О компании</a><a class="sc-4zz0i4-0 dZepSJ" href="/smi">СМИ о нас</a><a class="sc-4zz0i4-0 dZepSJ" href="/journal">OTUS Журнал</a><a class="sc-4zz0i4-0 dZepSJ" href="https://direct.otus.ru" target="_blank" rel="noopener noreferrer">OTUS Директ</a><a class="sc-4zz0i4-0 dZepSJ" href="/legal/common">Сведения об образовательной организации</a><a class="sc-4zz0i4-0 dZepSJ" rel="noopener noreferrer" href="/contacts">Контактная информация</a></div></div></div><div class="sc-1kjc6dh-0 fXsjgC"><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">Студентам</p><div class="sc-1kjc6dh-2 eANJVj"><a class="sc-4zz0i4-0 dZepSJ" href="/reviews">Отзывы</a><a class="sc-4zz0i4-0 dZepSJ" href="https://landing.otus.ru/about-otus ">Как выбрать курс</a><a class="sc-4zz0i4-0 dZepSJ" href="https://landing.otus.ru/gallery">Истории выпускников</a><a class="sc-4zz0i4-0 dZepSJ" href="/instructors">Наши преподаватели</a><a class="sc-4zz0i4-0 dZepSJ" href="/employers/all">Наши партнеры</a><a class="sc-4zz0i4-0 dZepSJ" href="/about/loyalty">Программа лояльности</a><a class="sc-4zz0i4-0 dZepSJ" href="/faq">Вопросы и ответы</a></div></div></div><div class="sc-1kjc6dh-0 fXsjgC"><div><p class="sc-1x9oq14-0 sc-1kjc6dh-1 ViUGY bxwCjw">Преподавателям</p><div class="sc-1kjc6dh-2 eANJVj"><a class="sc-4zz0i4-0 dZepSJ" href="/teach">Стать преподавателем</a><a class="sc-4zz0i4-0 dZepSJ" href="/instructors">Наши преподаватели</a><a class="sc-4zz0i4-0 dZepSJ" href="/nest/dlja-prepodavatelej">База знаний</a></div></div></div></div></div></div><a class="sc-1vdp0yy-0 ldwIhb sc-r03h0s-5 sc-r03h0s-7 cGgLky jHaHbB" href="/b2b">Компаниям</a></nav><section class="sc-1pw2hu9-0 deZXFK"><div class="sc-r03h0s-5 sc-gqclrv-0 cGgLky eDycrR"><div class="sc-199a3eq-1-div cwTwwh sc-hrqzy3-0 jTtOKw"><div class="sc-hrqzy3-1 faPWUN"></div><div class="sc-1xopqwy-0 LDEpF"></div></div><p class="sc-1x9oq14-0 sc-gqclrv-1 eMZyoN rcsBI sc-hrqzy3-0 ePGOOQ"><div class="sc-1xopqwy-0 iXhGSD">UserPartName</div></p></div></section></div></div><main class="sc-1j17uuq-1 dPcKhb"><div class="sc-1b3dhyb-1 dvLdDh"><section class="sc-s2pydo-0 eufkJz"><div class="sc-4o7hfp-0 jDOZfu"><div class="sc-1vxm7ng-0 golIF"><div class="sc-1vxm7ng-2 jxmQOK"><a href="/categories/programming">Программирование</a><svg class="sc-1vxm7ng-1 dbOiAN" width="7" height="10" viewBox="0 0 7 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L5 5L1 9" stroke="currentColor" stroke-width="1.5" stroke-linecap="round"></path></svg></div><div class="sc-1vxm7ng-2 jxmQOK"><span>C# ASP.NET Core разработчик</span></div></div><div class="sc-4o7hfp-1 eBROUt"><div class="sc-4o7hfp-2 fHVRxg"></div></div></div><div class="sc-1ddwpfq-1 hnlXxp sc-s2pydo-5 iHjMxQ"><i class="sc-1ddwpfq-0 gObWOq"></i><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-s2pydo-6 EOCgR sc-x072mc-0 hOtCic"><div class="sc-s2pydo-2 kPueMS"></div><h1 class="sc-1x9oq14-0 sc-s2pydo-1 kswXpy diGrSa">C# ASP.NET Core разработчик</h1><div class="sc-1x9oq14-0 sc-s2pydo-3 enpOeQ dZDxRw"><div>Создайте свое web-приложение и научитесь эффективно работать в Scrum-команде.<span style="display: inline-block;"></span></div></div><div class="sc-1lrh8w5-0 ftkQLi sc-kixk9v-0 gwYuWO"><button class="sc-1qig7zt-0 czpnNJ sc-1lrh8w5-3 JTsAm"><span class="sc-1lrh8w5-4 jTrfLJ">Сообщить о старте набора</span><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1lrh8w5-5 eCsaUt"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7071 8.79633C18.7071 10.0523 19.039 10.7925 19.7695 11.6456C20.3231 12.2741 20.5 13.0808 20.5 13.956C20.5 14.8302 20.2128 15.6601 19.6373 16.3339C18.884 17.1417 17.8215 17.6573 16.7372 17.747C15.1659 17.8809 13.5937 17.9937 12.0005 17.9937C10.4063 17.9937 8.83505 17.9263 7.26375 17.747C6.17846 17.6573 5.11602 17.1417 4.36367 16.3339C3.78822 15.6601 3.5 14.8302 3.5 13.956C3.5 13.0808 3.6779 12.2741 4.23049 11.6456C4.98384 10.7925 5.29392 10.0523 5.29392 8.79633V8.3703C5.29392 6.68834 5.71333 5.58852 6.577 4.51186C7.86106 2.9417 9.91935 2 11.9558 2H12.0452C14.1254 2 16.2502 2.98702 17.5125 4.62466C18.3314 5.67916 18.7071 6.73265 18.7071 8.3703V8.79633ZM9.07367 20.0608C9.07367 19.5573 9.53582 19.3266 9.96318 19.2279C10.4631 19.1222 13.5093 19.1222 14.0092 19.2279C14.4366 19.3266 14.8987 19.5573 14.8987 20.0608C14.8738 20.5402 14.5926 20.9653 14.204 21.2352C13.7001 21.628 13.1088 21.8767 12.4906 21.9664C12.1487 22.0107 11.8128 22.0117 11.4828 21.9664C10.8636 21.8767 10.2723 21.628 9.76938 21.2342C9.37978 20.9653 9.09852 20.5402 9.07367 20.0608Z" fill="currentColor"></path></svg></button></div></div></div></section><div id="vdescription" class="sc-x072mc-0 sc-1oat6ot-0 hOtCic dYVcmu"><div class="sc-1oat6ot-1 cVgwEc"><div class="sc-126tghp-0 dGIdAz"><div class="sc-126tghp-2 djZVhn"><h3 class="sc-1x9oq14-0 sc-126tghp-3 jmLQpp cJroeV">Видео-презентация курса <br/>C# ASP.NET Core разработчик</h3><svg width="64" height="64" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-126tghp-1 daskap"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 12.0058C2 6.48625 6.48842 2 12 2C17.5116 2 22 6.48625 22 12.0058C22 17.5137 17.5116 22 12 22C6.48842 22 2 17.5137 2 12.0058ZM15.668 13.0178C15.7741 12.9117 15.9093 12.7477 15.9382 12.7091C16.0927 12.5065 16.1699 12.2557 16.1699 12.0058C16.1699 11.725 16.083 11.4645 15.9189 11.2523C15.9055 11.2388 15.8791 11.2102 15.8448 11.1728C15.7806 11.103 15.6885 11.0026 15.6004 10.9146C14.8089 10.0656 12.7432 8.67631 11.6622 8.25181C11.4981 8.18524 11.083 8.03956 10.861 8.02991C10.6486 8.02991 10.4459 8.07815 10.2529 8.17463C10.0116 8.3097 9.81853 8.52195 9.71236 8.77279C9.64479 8.94645 9.53861 9.46744 9.53861 9.47709C9.43243 10.0463 9.37452 10.9725 9.37452 11.9952C9.37452 12.9706 9.43243 13.8572 9.51931 14.4361C9.52169 14.4385 9.53 14.4799 9.5429 14.5442C9.58211 14.7397 9.6638 15.1471 9.75097 15.314C9.96332 15.7192 10.3784 15.9701 10.8224 15.9701H10.861C11.1506 15.9604 11.7587 15.7096 11.7587 15.7C12.7819 15.2754 14.7992 13.9537 15.61 13.0757L15.668 13.0178Z" fill="currentColor"></path></svg></div></div><div class="sc-1oat6ot-5 klGcVm"><div class="sc-1oat6ot-4 hdfpFD"><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez cFKGMw"> <h2><strong>Для</strong><strong> </strong><strong>кого</strong><strong> </strong><strong>этот</strong><strong> </strong><strong>курс</strong><strong>?</strong></h2>
<br>Для C#-разработчиков с опытом от 2-3 лет, которые хотят углубиться в создание web-приложений, стать fullstack-специалистами.<br>
<h2><strong><br>Необходимые знания<br><br></strong></h2>
<ul>
<li>опыт разработки на C# от 3 лет;</li>
<li>базовые знания по HTML и CSS;</li>
<li>понимание работы .NET и CLR;</li>
<li>опыт работы в VisualStudio или Rider;</li>
<li>навыки работы с Git.</li>
</ul></div><div class="sc-1lrh8w5-0 ftkQLi sc-1oat6ot-3 hjZAnk"><button class="sc-1qig7zt-0 czpnNJ sc-1lrh8w5-3 JTsAm"><span class="sc-1lrh8w5-4 jTrfLJ">Сообщить о старте набора</span><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1lrh8w5-5 eCsaUt"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7071 8.79633C18.7071 10.0523 19.039 10.7925 19.7695 11.6456C20.3231 12.2741 20.5 13.0808 20.5 13.956C20.5 14.8302 20.2128 15.6601 19.6373 16.3339C18.884 17.1417 17.8215 17.6573 16.7372 17.747C15.1659 17.8809 13.5937 17.9937 12.0005 17.9937C10.4063 17.9937 8.83505 17.9263 7.26375 17.747C6.17846 17.6573 5.11602 17.1417 4.36367 16.3339C3.78822 15.6601 3.5 14.8302 3.5 13.956C3.5 13.0808 3.6779 12.2741 4.23049 11.6456C4.98384 10.7925 5.29392 10.0523 5.29392 8.79633V8.3703C5.29392 6.68834 5.71333 5.58852 6.577 4.51186C7.86106 2.9417 9.91935 2 11.9558 2H12.0452C14.1254 2 16.2502 2.98702 17.5125 4.62466C18.3314 5.67916 18.7071 6.73265 18.7071 8.3703V8.79633ZM9.07367 20.0608C9.07367 19.5573 9.53582 19.3266 9.96318 19.2279C10.4631 19.1222 13.5093 19.1222 14.0092 19.2279C14.4366 19.3266 14.8987 19.5573 14.8987 20.0608C14.8738 20.5402 14.5926 20.9653 14.204 21.2352C13.7001 21.628 13.1088 21.8767 12.4906 21.9664C12.1487 22.0107 11.8128 22.0117 11.4828 21.9664C10.8636 21.8767 10.2723 21.628 9.76938 21.2342C9.37978 20.9653 9.09852 20.5402 9.07367 20.0608Z" fill="currentColor"></path></svg></button></div></div><a class="sc-clwny5-0 fXxDDe sc-1nmmm75-0 hHfHsk" href="https://otus.ru/lessons/asp-net/assessment/?utm_source=internal&utm_medium=free&utm_campaign=asp-net&utm_term=banner&utm_content=cite"><img src="https://cdn.otus.ru/media/public/0b/61/Banners_C_ASPNET_320x400-475823-0b6110.png" alt="Баннер про тест" class="sc-clwny5-1 bPlUQW"/></a></div></div></div><div class="sc-x072mc-0 sc-lpm061-0 hOtCic cjEHVO"><div><h2 class="sc-1x9oq14-0 sc-lpm061-1 jmLQpp iKbbnr">Что вам даст этот курс?</h2><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez cFKGMw">Вы сможете <strong>создавать</strong><strong> </strong><strong>различные</strong><strong> </strong><strong>информационные</strong><strong> </strong><strong>системы</strong><strong>, </strong><strong>состоящие</strong><strong> </strong><strong>из</strong><strong> </strong><strong>сайтов</strong><strong>, </strong><strong>мобильных</strong><strong> </strong><strong>клиентов</strong><strong>, </strong><strong>телеграмм</strong><strong>-</strong><strong>ботов</strong> и т.д., используя фреймворк C# ASP.NET Core и смежные технологии, такие как ReactJS и другие. Фреймворк позволяет быстро разрабатывать сложный функционал и высоконагруженные системы, требовательные к производительности. Вы научитесь решать задачи бэкенда и фронтенда, а также получите необходимые навыки работы с базами данных, UI, бизнес-логикой, настройками безопасности. <br>
<h3><strong><br>Вы</strong><strong> </strong><strong>научитесь</strong><strong>:<br><br></strong></h3>
<ul>
<li>Самостоятельно реализовывать веб-приложения на ASP.Net Core</li>
<li>Создавать высоконагруженные API на GraphQL, gRPC и SignalR Core</li>
<li>Освоите JavaScript, познакомитесь с ReactJS и научитесь интегрировать его с ASP.NET Core</li>
<li>Покрывать веб-приложения интеграционными и нагрузочными тестами</li>
<li>Разворачивать веб-приложения в Docker-контейнерах и в облаках</li>
<li>Настраивать CI/CD и использовать Kubernetes</li>
<li>Реализовывать микросервисную архитектуру и использовать RabbitMQ</li>
<li>Управлять безопасностью и защищаться от хакерских атак</li>
</ul></div></div><div class="sc-1232l32-0 gjfSTs"><svg width="48" height="48" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1232l32-1 gLmhvn"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.66988 1.99927H16.3399C19.7299 1.99927 21.9999 4.37927 21.9999 7.91927V16.0903C21.9999 19.6203 19.7299 21.9993 16.3399 21.9993H7.66988C4.27988 21.9993 1.99988 19.6203 1.99988 16.0903V7.91927C1.99988 4.37927 4.27988 1.99927 7.66988 1.99927ZM11.9899 9.06027C11.5199 9.06027 11.1299 8.66927 11.1299 8.19027C11.1299 7.70027 11.5199 7.31027 12.0099 7.31027C12.4899 7.31027 12.8799 7.70027 12.8799 8.19027C12.8799 8.66927 12.4899 9.06027 11.9899 9.06027ZM12.8699 15.7803C12.8699 16.2603 12.4799 16.6503 11.9899 16.6503C11.5099 16.6503 11.1199 16.2603 11.1199 15.7803V11.3603C11.1199 10.8793 11.5099 10.4803 11.9899 10.4803C12.4799 10.4803 12.8699 10.8793 12.8699 11.3603V15.7803Z" fill="url(#c98220f8eaf60ed0dc8954c0)"></path><defs><linearGradient id="c98220f8eaf60ed0dc8954c0" x1="7.24435" y1="16.8809" x2="41.5417" y2="22.7167" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez cFKGMw sc-1232l32-2 cLdvvd"><h3>Бонус</h3>
<br>Видеокурс<strong> </strong><strong><a href="../../../../../online/online-js/" target="_blank" rel="noopener">«JavaScript для начинающих»</a></strong> для самостоятельного прохождения. Эти знания вам понадобятся для освоения Модуля 5, если до этого у вас не было опыта работы с JavaScript.</div></div></div><div class="sc-x072mc-0 sc-rvdro8-0 hOtCic cjUVzd"><svg class="sc-rvdro8-1-Component fAoRTp" width="448" height="448" viewBox="0 0 448 448" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M73.973 262.521c-25.943-9.97-31.12-43.662-9.318-60.646L292.018 24.752c21.802-16.984 54.23-4.521 58.372 22.432l43.19 281.097c4.142 26.954-23.11 48.184-49.053 38.214L73.973 262.521Z" fill="url(#processDefaultImageIconA)"></path><path d="M119.392 368.19c-23.13 10.287-48.177-8.104-45.084-33.104l32.265-260.72c3.094-25 32.008-37.859 52.045-23.146l208.965 153.435c20.037 14.712 16.17 45.962-6.961 56.25L119.392 368.19Z" fill="url(#processDefaultImageIconB)"></path><path d="M204.971 119.576c-8.276-10.24-2.416-25.302 10.548-27.111l135.199-18.87c12.964-1.81 23.309 10.99 18.621 23.039l-48.89 125.659c-4.688 12.049-20.893 14.311-29.169 4.071l-86.309-106.788Z" fill="url(#processDefaultImageIconC)"></path><path d="M90.942 108.696c-3.277 0-6.145-2.456-6.145-5.732a3.67 3.67 0 0 0-3.687-3.684 3.67 3.67 0 0 0-3.687 3.684c0 3.276-2.459 5.732-5.736 5.732A3.67 3.67 0 0 0 68 112.381a3.67 3.67 0 0 0 3.687 3.685c3.278 0 5.736 2.456 5.736 5.731a3.67 3.67 0 0 0 3.687 3.685 3.67 3.67 0 0 0 3.687-3.685c0-3.275 2.458-5.731 5.735-5.731a3.67 3.67 0 0 0 3.687-3.685c.41-2.047-1.229-3.685-3.277-3.685Z" fill="url(#processDefaultImageIconD)"></path><path d="M235.737 385.911c-3.277 0-6.145-2.457-6.145-5.732a3.671 3.671 0 0 0-3.687-3.685 3.67 3.67 0 0 0-3.687 3.685c0 3.275-2.458 5.732-5.736 5.732a3.67 3.67 0 0 0-3.687 3.684 3.671 3.671 0 0 0 3.687 3.685c3.278 0 5.736 2.456 5.736 5.732a3.67 3.67 0 0 0 3.687 3.684 3.67 3.67 0 0 0 3.687-3.684c0-3.276 2.458-5.732 5.735-5.732a3.67 3.67 0 0 0 3.687-3.685c0-2.047-1.638-3.684-3.277-3.684Z" fill="url(#processDefaultImageIconE)"></path><path d="M227.072 79.54a6.553 6.553 0 0 0 6.555-6.55 6.553 6.553 0 0 0-6.555-6.55 6.553 6.553 0 0 0-6.555 6.55 6.553 6.553 0 0 0 6.555 6.55Z" fill="url(#processDefaultImageIconF)"></path><path d="M78.242 66.626C72.506 66.626 68 62.122 68 56.39c0-5.731 4.506-10.235 10.242-10.235 5.735 0 10.242 4.504 10.242 10.236 0 5.731-4.507 10.235-10.242 10.235Zm0-13.92c-2.049 0-4.097 1.637-4.097 4.094 0 2.456 1.639 4.094 4.097 4.094 2.048 0 4.097-1.638 4.097-4.094 0-2.456-2.049-4.094-4.097-4.094Z" fill="url(#processDefaultImageIconG)"></path><path d="M307.192 382.834a6.553 6.553 0 0 0 6.555-6.55 6.553 6.553 0 0 0-6.555-6.551 6.553 6.553 0 0 0-6.555 6.551 6.553 6.553 0 0 0 6.555 6.55Z" fill="url(#processDefaultImageIconH)"></path><path d="M324.394 308.101c-5.736 0-10.242-4.503-10.242-10.235 0-5.732 4.506-10.235 10.242-10.235 5.735 0 10.241 4.503 10.241 10.235 0 5.732-4.506 10.235-10.241 10.235Zm0-13.92c-2.049 0-4.097 1.638-4.097 4.095 0 2.456 1.638 4.094 4.097 4.094 2.048 0 4.096-1.638 4.096-4.094 0-2.457-1.638-4.095-4.096-4.095Z" fill="url(#processDefaultImageIconI)"></path><path d="m310.288 164.276-43.879-42.909a13.329 13.329 0 0 0-9.355-3.82c-3.52 0-6.847 1.368-9.354 3.82L109.552 256.414c-2.507 2.452-3.905 5.705-3.905 9.147s1.398 6.696 3.905 9.148l43.88 42.909a13.324 13.324 0 0 0 9.354 3.82c3.52 0 6.847-1.368 9.355-3.82L310.24 182.572c5.207-4.999 5.207-13.25.048-18.296Zm-3.183 15.231L169.006 314.554c-1.639 1.603-3.857 2.499-6.22 2.499-2.363 0-4.532-.896-6.22-2.499l-43.879-42.91a8.432 8.432 0 0 1-2.556-6.036c0-2.31.916-4.432 2.556-6.082l138.099-135.047c1.639-1.603 3.857-2.499 6.22-2.499 2.363 0 4.533.896 6.22 2.499l43.879 42.909a8.433 8.433 0 0 1 0 12.119Z" fill="#fff"></path><path d="m135.88 267.494 5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705c.916.849 2.363.849 3.231 0ZM143.451 256.979c.867.849 2.314.849 3.23 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.835 5.706ZM154.155 246.464c.868.849 2.314.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.835-5.706c-.868-.848-2.314-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.16l5.835 5.705ZM164.908 235.996c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.835-5.706c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706ZM175.661 225.481c.868.848 2.314.848 3.23 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.834-5.706c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.835 5.706ZM186.413 214.965c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.883-5.658c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.882 5.658ZM197.118 204.45c.868.849 2.314.849 3.23 0l5.305-5.186c.867-.849.867-2.264 0-3.16l-5.835-5.705c-.868-.849-2.314-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.705ZM207.871 193.982c.868.848 2.314.848 3.231 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.835-5.706c-.868-.849-2.314-.849-3.23 0l-5.305 5.187c-.867.849-.867 2.263 0 3.159l5.835 5.706ZM218.624 183.468c.868.848 2.314.848 3.23 0l5.304-5.187c.868-.849.868-2.264 0-3.16l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.706ZM229.376 172.952c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.883-5.658c-.868-.849-2.314-.849-3.23 0l-5.305 5.186c-.867.849-.867 2.264 0 3.16l5.883 5.658ZM240.081 162.437c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.835-5.706c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706ZM250.834 151.922c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.706c-.868-.848-2.315-.848-3.231 0L245 143.057c-.868.849-.868 2.264 0 3.16l5.834 5.705ZM147.259 275.982l-5.834-5.706c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.835 5.706c.868.849 2.314.849 3.23 0l5.304-5.187c.917-.849.917-2.263 0-3.159ZM148.995 259.809l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.658c.868.849 2.314.849 3.23 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.705c-.916-.849-2.363-.849-3.231.047ZM163.461 263.297l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.16l5.835 5.705c.916.849 2.362.849 3.23 0ZM170.453 238.778l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706a2.368 2.368 0 0 0-3.231 0ZM181.206 228.31l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706c-.916-.896-2.363-.896-3.231 0ZM191.959 217.795l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.848 2.315.848 3.231 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.835-5.706c-.916-.896-2.362-.896-3.23 0ZM202.712 207.28l-5.304 5.186c-.868.849-.868 2.264 0 3.16l5.834 5.705c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.835-5.705c-.916-.849-2.362-.849-3.23 0ZM213.416 196.764l-5.304 5.187c-.868.849-.868 2.264 0 3.16l5.835 5.705c.868.849 2.314.849 3.23 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.706c-.868-.848-2.315-.848-3.231 0ZM224.169 186.249l-5.304 5.187c-.868.849-.868 2.264 0 3.159l5.834 5.706c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706c-.917-.848-2.363-.848-3.231 0ZM234.922 175.781l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705c.868.849 2.315.849 3.231 0l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705c-.916-.896-2.362-.896-3.23 0ZM245.674 165.266l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.848 2.315.848 3.231 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.883-5.706c-.867-.849-2.314-.849-3.182 0ZM260.14 168.756l5.304-5.187c.868-.849.868-2.264 0-3.16l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.835 5.706c.916.896 2.362.896 3.23 0ZM267.662 158.24c.868.849 2.315.849 3.231 0l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705c-.867-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705ZM152.371 280.98c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.159l5.835 5.706c.868.849 2.314.849 3.23 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706ZM168.959 276.171l-5.835-5.706c-.868-.849-2.314-.849-3.23 0l-5.305 5.187c-.868.849-.868 2.263 0 3.159l5.835 5.706c.868.849 2.314.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159ZM171.177 274.001c.868.849 2.314.849 3.23 0l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.186c-.868.849-.868 2.264 0 3.16l5.835 5.705ZM185.159 263.486l5.305-5.187c.867-.848.867-2.263 0-3.159l-5.835-5.658c-.868-.849-2.314-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.705a2.32 2.32 0 0 0 3.23-.047ZM195.864 252.971l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.658c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.705c.916.849 2.362.849 3.23-.047ZM206.617 242.503l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.186c-.868.849-.868 2.264 0 3.16l5.834 5.705c.916.849 2.363.849 3.231 0ZM217.37 231.988l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.159l5.835 5.706c.916.849 2.362.849 3.23 0ZM228.123 221.472l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705c-.867-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705a2.278 2.278 0 0 0 3.231 0ZM238.875 210.957l5.304-5.187c.868-.848.868-2.263 0-3.159l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.186c-.868.849-.868 2.264 0 3.16l5.835 5.705c.868.896 2.314.896 3.23 0ZM249.58 200.489l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.835 5.705c.916.849 2.362.849 3.23 0ZM260.333 189.974l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.834-5.705c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705c.917.849 2.363.849 3.231 0ZM271.086 179.459l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.659c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.16l5.835 5.705a2.417 2.417 0 0 0 3.23-.047ZM272.774 163.286l5.834 5.705c.868.849 2.315.849 3.231 0l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159ZM174.504 281.64c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.848 2.315.848 3.231 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.834-5.706ZM185.256 271.125c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.159l5.835 5.706c.867.849 2.314.849 3.23 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706ZM196.009 260.61c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.848-.868 2.263 0 3.159l5.834 5.705c.868.849 2.315.849 3.231 0l5.304-5.186c.868-.849.868-2.264 0-3.16l-5.835-5.705ZM249.387 208.412c-.868-.849-2.314-.849-3.182 0l-47.062 46.021a2.186 2.186 0 0 0 0 3.113l5.835 5.705c.868.849 2.314.849 3.182 0l47.062-46.021a2.185 2.185 0 0 0 0-3.112l-5.835-5.706ZM260.429 197.613c-.868-.849-2.314-.849-3.23 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.849 2.315.849 3.231 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.835-5.706ZM271.183 187.098c-.868-.849-2.315-.849-3.231 0l-5.304 5.187c-.868.849-.868 2.263 0 3.159l5.834 5.706c.868.848 2.315.848 3.231 0l5.304-5.187c.868-.849.868-2.264 0-3.159l-5.834-5.706ZM281.935 176.583c-.868-.848-2.315-.848-3.231 0l-5.304 5.187c-.868.849-.868 2.264 0 3.159l5.835 5.706c.868.849 2.314.849 3.23 0l5.304-5.187c.868-.849.868-2.263 0-3.159l-5.834-5.706ZM141.184 164.323l30.426 24.803 4.774-4.669-30.86-25.179c-5.545-4.527-11.766-10.516-10.415-16.645 1.06-4.857 6.895-7.781 11.958-7.781h.145c6.027 0 11.958 2.924 17.069 5.659 4.292 2.31 9.596 5.139 15.334 4.102 2.989-.566 5.786-2.075 8.824-4.762 6.799-5.989 11.379-14.477 12.633-23.341.241-1.792-1.013-3.443-2.893-3.678-1.832-.236-3.52.99-3.761 2.829-1.013 7.356-4.822 14.382-10.464 19.333-2.121 1.839-3.857 2.876-5.593 3.159-3.375.613-7.185-1.415-10.849-3.395-5.835-3.112-12.682-6.46-20.3-6.46h-.193c-7.571 0-16.636 4.574-18.468 12.92-2.122 9.572 5.641 17.352 12.633 23.105Z" fill="#fff"></path><defs><linearGradient id="processDefaultImageIconA" x1="289.831" y1="218.139" x2="80.152" y2="210.264" gradientUnits="userSpaceOnUse"><stop stop-color="#EFEFEF"></stop><stop offset="1" stop-color="#fff" stop-opacity=".56"></stop></linearGradient><linearGradient id="processDefaultImageIconB" x1="98.909" y1="150.023" x2="362.575" y2="192.19" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconC" x1="214.875" y1="124.769" x2="359.559" y2="150.919" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconD" x1="70.132" y1="107.718" x2="92.663" y2="111.564" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconE" x1="214.922" y1="384.933" x2="237.402" y2="388.76" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconF" x1="221.581" y1="70.659" x2="232.821" y2="72.573" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconG" x1="69.662" y1="52.748" x2="87.224" y2="55.738" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconH" x1="301.701" y1="373.952" x2="312.941" y2="375.866" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="processDefaultImageIconI" x1="315.813" y1="294.224" x2="333.376" y2="297.214" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg><div><h2 class="sc-1x9oq14-0 sc-rvdro8-2 jmLQpp hIDsVz">Процесс обучения</h2><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez cFKGMw"><span>Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в телеграм-чате курса, сдача домашних работ и получение обратной связи от преподавателя.</span><br><br><span>Вебинары проводятся 2 раза в неделю по 1,5 часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время.</span><br><br>Все практические задания курса делятся на три составляющие: <strong>персональные домашние задания, групповая разработка в рамках занятий и итоговая проектная работа</strong>. На первых занятиях вы объединитесь с другими студентами в команды от 1 до 8 человек для совместной разработки с использованием инструментов Scrum-фреймворка. </div></div></div><div class="sc-11l8wec-0 eOXZIV sc-x072mc-0 sc-nqd633-0 hOtCic bbEYfR"><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/oneImg-b1c92b38734a5b324f9b32a5a243bf06.svg" class="sc-16yt4q5-2 bUbCKQ"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Дополнительные навыки</h3>
<br>Научитесь соблюдать code style и лучше разбираться в архитектуре проекта</div></div><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/twoImg-28bd45b9ade74f4471bf39916d76d47e.svg" class="sc-16yt4q5-2 dIESaV"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Практика в Scrum-команде</h3>
<br>Командная работа с с использованием инструментов Scrum-фреймворка</div></div><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/threeImg-7d8d62a36e7b66f9691d1d7d01b44fb9.svg" class="sc-16yt4q5-2 gbGscf"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Проект для портфолио</h3>
<br>Серьезный проект в портфолио, с которым вам будет легко произвести впечатление на собеседованиях</div></div></div><div class="sc-1ddwpfq-1 hnlXxp sc-1kuct9n-0 jzJAgH"><i class="sc-1ddwpfq-0 bKfgwd"></i><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-x072mc-0 hOtCic"><div class="sc-1kuct9n-2 cfBLof"><h2 class="sc-1x9oq14-0 sc-1kuct9n-1 kswXpy jqwyOS">Карьерная поддержка</h2><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez dJQBfL sc-1kuct9n-5 hXsBII"><ul>
<li><strong>Разместите свое резюме в базе OTUS</strong> и сможете получать приглашения на собеседования от партнеров</li>
<li><strong>Карьерные мероприятия в сообществе</strong><br><span>Публичный разбор резюме</span><br><span>Публичное прохождение собеседования и воркшопы</span></li>
</ul></div></div><div class="sc-xgmw75-1 fqgPAJ"><div class="sc-xgmw75-3 jzczJK"><div class="sc-xgmw75-2 cGRACb"><div class="sc-xgmw75-9 DwFaw"></div><h2 class="sc-1x9oq14-0 bTMeHF">C# Developer / .NET Backend Developer</h2></div><div class="sc-1x9oq14-0 sc-xgmw75-0 gGtEnS kWSJKL">Перспективы направления</div><div class="sc-1x9oq14-0 sc-xgmw75-4 hQBzUY fSmctL">Средний уровень зарплат:</div><div class="sc-xgmw75-5 fHxdGa"><div class="sc-1f5byvo-0 hlgWda"><span class="sc-1x9oq14-0 sc-1f5byvo-1 jmLQpp jyvyoR">100 000<!-- --> ₽</span><span class="sc-1x9oq14-0 sc-1f5byvo-2 gGtEnS lhTbHf">Junior+
специалист</span></div><div class="sc-1f5byvo-0 hlgWda"><span class="sc-1x9oq14-0 sc-1f5byvo-1 jmLQpp jyvyoR">180 000<!-- --> ₽</span><span class="sc-1x9oq14-0 sc-1f5byvo-2 gGtEnS lhTbHf">Middle+
специалист</span></div><div class="sc-1f5byvo-0 hlgWda"><span class="sc-1x9oq14-0 sc-1f5byvo-1 jmLQpp jyvyoR">300 000<!-- --> ₽</span><span class="sc-1x9oq14-0 sc-1f5byvo-2 gGtEnS lhTbHf">Senior
специалист</span></div></div></div><div class="sc-xgmw75-6 hNPHLe"><div class="sc-1x9oq14-0 sc-xgmw75-7 kswXpy hBXFys">2500<div class="sc-1x9oq14-0 sc-xgmw75-8 gGtEnS rdBYv">актуальных вакансий</div></div><div class="sc-i28ik1-0 kOdeIv"><div class="sc-i28ik1-1 gNVXtU"><svg xmlns="http://www.w3.org/2000/svg" fill="none" width="48" height="48" viewBox="0 0 58 58"><g filter="url(#filter0_d)"><path stroke="#fff" stroke-width="4" d="M49.627 23.745c.693 11.392-7.98 21.189-19.372 21.882-11.392.693-21.189-7.98-21.882-19.372-.693-11.392 7.98-21.189 19.372-21.882 11.392-.693 21.189 7.98 21.882 19.372z"></path></g><path fill="#D6001C" d="M30.27 45.882c11.534-.702 20.314-10.62 19.613-22.154-.702-11.534-10.62-20.315-22.154-19.613-11.534.702-20.314 10.62-19.613 22.154.702 11.534 10.62 20.314 22.154 19.613z"></path><path fill="#FEFEFE" d="M19.421 16.123l.432 7.104c1.003-1.356 2.26-2.084 3.764-2.175.774-.047 1.477.058 2.117.314.642.253 1.13.6 1.473 1.034.345.44.59.928.739 1.475.148.544.258 1.397.329 2.56l.462 7.595-3.36.205-.417-6.841c-.082-1.358-.196-2.214-.346-2.571a1.672 1.672 0 0 0-.727-.83c-.337-.198-.747-.282-1.233-.252a2.726 2.726 0 0 0-1.465.507c-.427.305-.72.74-.888 1.309-.172.569-.224 1.398-.155 2.486l.392 6.486-3.357.204-1.12-18.406 3.361-.204zm13.232-.805l.433 7.104c1.003-1.356 2.26-2.084 3.762-2.175.772-.047 1.48.058 2.12.314.64.253 1.129.599 1.47 1.034.343.436.595.938.738 1.475.15.544.26 1.397.33 2.56l.462 7.595-3.357.204-.416-6.84c-.083-1.358-.199-2.214-.349-2.572a1.665 1.665 0 0 0-.729-.829c-.333-.198-.746-.282-1.233-.252a2.729 2.729 0 0 0-1.465.507c-.42.305-.715.74-.886 1.308-.168.57-.22 1.398-.154 2.487l.394 6.486-3.356.204-1.12-18.406 3.356-.204z"></path><defs><filter id="filter0_d" width="58" height="58" x="0" y="0" color-interpolation-filters="sRGB" filterUnits="userSpaceOnUse"><feFlood flood-opacity="0" result="BackgroundImageFix"></feFlood><feColorMatrix in="SourceAlpha" values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 127 0"></feColorMatrix><feOffset dy="4"></feOffset><feGaussianBlur stdDeviation="2.5"></feGaussianBlur><feColorMatrix values="0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.13 0"></feColorMatrix><feBlend in2="BackgroundImageFix" result="effect1_dropShadow"></feBlend><feBlend in="SourceGraphic" in2="effect1_dropShadow" result="shape"></feBlend></filter></defs></svg></div></div></div></div><div class="sc-2pu6he-0 cdveUu"><h3 class="sc-1x9oq14-0 sc-2pu6he-1 jmLQpp ifdlyD">Работодатели курса</h3><div class="sc-1bkbgbz-0 dGHcsq swiper-ui sc-2pu6he-3 rLbwk"><div class="sc-1bkbgbz-1 cPJghB"><div class="swiper"><div class="swiper-wrapper"><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/fc/11/fc113557264c49d7bac5bdd51ca49652.JPG" class="sc-x5ajzb-1 cCIEUB"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/7a/13/7a13906b56804a5f94d7bbb6e61f69e3.jpg" class="sc-x5ajzb-1 kgYUbC"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/1b/33/1b33438b7e4e4570b5b5562fa99eb42d.png" class="sc-x5ajzb-1 fvDISO"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/20/8f/208ff2da9f884484803b5640705525e4.jpg" class="sc-x5ajzb-1 kRkqqA"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/71/c0/71c02ba9fa734047a4661c68a46df829.png" class="sc-x5ajzb-1 gMtMjq"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/bf/88/bf8819c8a4ad4d6b8e1cf2763d4eeffd.png" class="sc-x5ajzb-1 gSNjVT"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/a3/72/a37244579b91430fbdf5219acad59615.png" class="sc-x5ajzb-1 egApav"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/79/31/793190d3f9484cffb6f1cf0b057a1bd1.png" class="sc-x5ajzb-1 kttGEW"></div></div></div></div></div><div color="#fff" class="sc-1bkbgbz-6 eoibzU"><button color="#fff" class="sc-1bkbgbz-2 sc-1bkbgbz-4 dQlnjC biZjNh"><div class="sc-1bqzqc9-0"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button><div class="sc-1bkbgbz-5 hGKrlu"></div><button color="#fff" class="sc-1bkbgbz-2 sc-1bkbgbz-3 dQlnjC iPzpLW"><div class="sc-1bqzqc9-0 dzJeEt"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button></div></div></div></div></div><div class="sc-x072mc-0 sc-ze365z-0 hOtCic jpiMVl"><div class="sc-1x9oq14-0 sc-ze365z-1 bTMeHF RPhWg"><h3>Формат обучения</h3></div><div class="sc-11l8wec-0 eOXZIV"><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/oneImg-d53504a93142009806d3cc77cd059dcb.svg" class="sc-16yt4q5-2 yjETG"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Интерактивные вебинары</h3>
<p><br>2 занятия по 2 ак. часа в неделю. Доступ к записям и материалам остается у вас навсегда</p></div></div><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/twoImg-bf3134a7f0a1f9684257b13b37cd07b5.svg" class="sc-16yt4q5-2 iGfrzu"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Практика</h3>
<p><br>Домашние задания + проектная работа, которая усилит ваше портфолио</p></div></div><div class="sc-16yt4q5-0 iHYLll"><div class="sc-16yt4q5-1 eKcgOu"><div src="/_next/static/images/img/threeImg-a81ea3b3db08e9c236bce2eb8f407ab7.svg" class="sc-16yt4q5-2 eJXsCF"></div></div><div class="sc-1x9oq14-0 sc-16yt4q5-3 doSDez kgZxtV"><h3>Активное комьюнити</h3>
<p><br>Общайтесь с преподавателями голосом на вебинарах и в Telegram-чате</p></div></div></div></div><div class="sc-x072mc-0 sc-1am6qh7-0 hOtCic cmpQoV"><div class="sc-1am6qh7-1 bmcDgO"><h2 class="sc-1x9oq14-0 sc-1am6qh7-2 kswXpy jZdzTX">Программа</h2><div class="sc-12j3cf5-0 kOagS"><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Введение в ASP.NET Core и WebApi</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">В этом модуле вы узнаете об устройстве ASP.NET Core, контроллерах и работе с двумя базовыми инструментами - DI-контейнеры и Entity Framework Core.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Вводное занятие в курс // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Знакомимся с ASP.NET Core // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Конфигурирование приложения, разработка контроллеров и подключение Swagger-а</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: HTTP Verbs, Postman, DevTools</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Работа с базой данных с помощью Entity Framework Core // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: Юнит тестирование: фреймворки и инструменты // ДЗ</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Разворачивание приложения в облаке </h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">Здесь вы познакомитесь с Докером и Kubernetes, самостоятельно создадите докер образ и научитесь настраивать билд-систему, а также разворачивать ваше приложение в облаке. Также, это первый модуль, в котором будет "Ретроспектива и планирование" - занятие, ориентированное на прокачку командного взаимодействия, а также ваших навыков декомпозиции и планирования задач.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Способы размещения приложения, Kestrel, IIS</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Ретроспектива и планирование</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Введение в docker, обзор docker compose // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Использование Kubernetes в качестве системы оркестрации контейнеров</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: DevOps, CI/CD и настройка на практике</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Frontend-технологии </h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">После этого модуля вы сможете самостоятельно реализовывать клиентский интерфейс, как с помощью Razor, так и на основе React.JS. Также вам будет дано обзорное представление фреймворков в современном фронтенде и различные способы взаимодействия Фронтенд и Бекенд частей.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Blazor</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Современный фронтенд</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Введение в React </p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: React //ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Ретроспектива и планирование</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: React Router & Redux // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 7: React хуки и популярные библиотеки</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 8: Как подружить React.JS с Asp.net Core // ДЗ</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Микросервисная архитектура </h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">Вы узнаете, как и когда следует делить монолит на микросервисы, как правильно организовывать взаимодействие микросервисов с базами данных и другими микросервисами.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Монолиты и микросервисы: что есть что</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Как превратить монолит в микросервисы // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Работа с данными в микросервисах: Архитектура</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Работа с данными в микросервисах: Работа с NoSQL // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Ретроспектива и планирование</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: Работа с данными в микросервисах: Работа с реляционными БД</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 7: Обзор популярных брокеров сообщений и работа с RabbitMQ // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 8: Kafka</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Прокачиваем проект</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">После этого модуля вы сможете легко отделить интеграционное тестирование от нагрузочного, разбираться в последовательности вызовов Middleware, правильно организовывать логи, валидацию данных и кеширование. Приятным бонусом станет детальный разбор различных способов организации API.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Конвейеры ПО промежуточного слоя (Middleware)</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Aутентификация и авторизация в Asp.Net Core</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Протоколы OAuth, OIDC и их реализация в Keycloak</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Asp.Net Identity и IdentityServer</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Ретроспектива и планирование</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: Как устроено логгирование в ASP.NET Core</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 7: Различные способы валидации данных</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 8: Кеширование: внутреннее и внешнее</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 9: Интеграционное, нагрузочное тестирование</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 10: Стандартный и нестандартные DI контейнеры: что и когда использовать</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 11: Реализация паттерна CQRS и доменных событий через MediatR</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 12: Настройка гибких политик через Polly, и другие библиотеки, упрощающие разработку</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 13: Ретроспектива и планирование</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Работа с API</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">Уроки этого модуля научат вас правильной организации авторизации/аутентификации, разграничению прав доступа и защите от различных хакерских атак.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Пишем свой API: OData</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Пишем свой API: GraphQL</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Пишем свой API: gRPC // ДЗ</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Пишем свой API: SignalR Core</p></div></div></div></div><div class="sc-li015i-2 jbRzwu sc-yxq6ju-1 bTvRzO" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Проектная работа </h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS"><p class="sc-1x9oq14-0 sc-12j3cf5-1 doSDez jTjgBj">Заключительный модуль курса посвящен проектной работе. Проект — это отличная возможность объединить все полученные на курсе знания в одной системе.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Консультация по проектам и домашним заданиям</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Защита проектных работ</p></div></div></div></div></div></div><div class="sc-hqry8z-0 fKOpVc"><h5 class="sc-1x9oq14-0 sc-hqry8z-1 fPZiIk byqrft">Также вы можете получить полную программу,
чтобы убедиться, что обучение вам подходит</h5><button class="sc-1qig7zt-0 bYRRHi sc-hqry8z-2 ipIyzP">Получить</button></div></div><div class="sc-x072mc-0 sc-130tum6-0 hOtCic jjMVIs"><div class="sc-1x9oq14-0 sc-130tum6-1 fPZiIk leLsGR"><h2>Проектная работа</h2>
<p><br>Задача проекта — разработать с нуля полнофункциональное ASP.NET Core приложение, распространяемое в виде docker-compose файла, использующее современные frontend-технологии (Razor или React.JS), REST API и Swagger с GraphQL/gRPC/SignalR на выбор, нестандартный DI-контейнер, собственный обработчик промежуточного слоя (Middleware) и работающее с базой данных через EntityFramework Core. Также, должна быть настроена автоматическая сборка CI на GitLab. Тема проекта может быть выбрана самостоятельно.</p></div><svg viewBox="0 0 512 460" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-wqbts8-0 coDgWq"><path d="M245.655 442C367.71 442 466.655 343.055 466.655 221C466.655 98.9451 367.71 0 245.655 0C123.6 0 24.6548 98.9451 24.6548 221C24.6548 343.055 123.6 442 245.655 442Z" fill="url(#GraduationProjects0)"></path><path d="M339.351 330.984C408.966 330.984 465.399 274.623 465.399 205.097C465.399 135.571 408.966 79.2095 339.351 79.2095C269.737 79.2095 213.304 135.571 213.304 205.097C213.304 274.623 269.737 330.984 339.351 330.984Z" fill="url(#GraduationProjects1)"></path><path d="M190.363 320.725C201.556 273.813 172.551 226.722 125.58 215.544C78.6085 204.366 31.4575 233.333 20.2651 280.245C9.07273 327.157 38.0773 374.248 85.0486 385.426C132.02 396.604 179.171 367.636 190.363 320.725Z" fill="url(#GraduationProjects1)"></path><path d="M396.694 335.224V363.622C396.694 377.186 385.671 388.63 371.68 388.63H115.172C101.604 388.63 90.1567 377.61 90.1567 363.622V335.224H396.694Z" fill="white"></path><path d="M396.694 335.224V363.622C396.694 377.186 385.671 388.63 371.68 388.63H115.172C101.604 388.63 90.1567 377.61 90.1567 363.622V335.224H396.694Z" fill="url(#GraduationProjects2)"></path><path d="M371.679 391.595H115.171C99.4834 391.595 87.188 378.879 87.188 363.62V335.221C87.188 333.526 88.4599 331.83 90.5798 331.83H396.693C398.389 331.83 400.085 333.102 400.085 335.221V363.62C399.661 378.879 387.366 391.595 371.679 391.595ZM93.5477 338.612V363.62C93.5477 375.488 103.299 385.237 115.171 385.237H371.679C383.55 385.237 393.302 375.488 393.302 363.62V338.612H93.5477Z" fill="url(#GraduationProjects1)"></path><path d="M397.456 188.138V335.218H90.583V188.138C90.583 174.574 101.619 163.13 115.625 163.13H372.414C385.996 163.13 397.456 174.574 397.456 188.138Z" fill="white"></path><path d="M397.842 338.612H90.5835C88.3095 338.612 87.188 337.34 87.188 335.221V188.14C87.188 172.457 99.9213 160.165 115.201 160.165H371.99C387.694 160.165 400.003 172.881 400.003 188.14L400.085 336.348C400.085 337.468 398.964 338.612 397.842 338.612ZM93.9791 332.254H394.061V188.14C394.061 176.272 384.298 166.523 372.414 166.523H115.626C103.741 166.523 93.9791 176.272 93.9791 188.14V332.254Z" fill="url(#GraduationProjects1)"></path><path d="M57.122 177.118C53.7268 177.118 50.756 174.575 50.756 171.184C50.756 169.065 49.0584 167.369 46.9364 167.369C44.8144 167.369 43.1167 169.065 43.1167 171.184C43.1167 174.575 40.5703 177.118 37.1751 177.118C35.0531 177.118 33.3555 178.814 33.3555 180.933C33.3555 183.052 35.0531 184.748 37.1751 184.748C40.5703 184.748 43.1167 187.291 43.1167 190.682C43.1167 192.801 44.8144 194.497 46.9364 194.497C49.0584 194.497 50.756 192.801 50.756 190.682C50.756 187.291 53.3024 184.748 56.6976 184.748C58.8197 184.748 60.5173 183.052 60.5173 180.933C60.9417 178.814 59.2441 177.118 57.122 177.118Z" fill="url(#GraduationProjects1)"></path><path d="M494.257 351.754C490.862 351.754 487.891 349.211 487.891 345.82C487.891 343.7 486.194 342.005 484.072 342.005C481.95 342.005 480.252 343.7 480.252 345.82C480.252 349.211 477.706 351.754 474.31 351.754C472.188 351.754 470.491 353.449 470.491 355.569C470.491 357.688 472.188 359.383 474.31 359.383C477.706 359.383 480.252 361.926 480.252 365.317C480.252 367.437 481.95 369.132 484.072 369.132C486.194 369.132 487.891 367.437 487.891 365.317C487.891 361.926 490.438 359.383 493.833 359.383C495.955 359.383 497.653 357.688 497.653 355.569C497.653 353.449 495.955 351.754 494.257 351.754Z" fill="url(#GraduationProjects1)"></path><path d="M79.6176 149.566C83.3679 149.566 86.4081 146.53 86.4081 142.784C86.4081 139.039 83.3679 136.002 79.6176 136.002C75.8673 136.002 72.8271 139.039 72.8271 142.784C72.8271 146.53 75.8673 149.566 79.6176 149.566Z" fill="url(#GraduationProjects1)"></path><path d="M71.5515 92.7706C65.6098 92.7706 60.9414 88.1081 60.9414 82.174C60.9414 76.2399 65.6098 71.5774 71.5515 71.5774C77.4931 71.5774 82.1616 76.2399 82.1616 82.174C82.1616 88.1081 77.4931 92.7706 71.5515 92.7706ZM71.5515 78.3592C69.4295 78.3592 67.3075 80.0547 67.3075 82.5978C67.3075 85.141 69.0051 86.8365 71.5515 86.8365C73.6735 86.8365 75.7955 85.141 75.7955 82.5978C75.7955 80.0547 73.6735 78.3592 71.5515 78.3592Z" fill="url(#GraduationProjects1)"></path><path d="M431.446 391.597C435.196 391.597 438.237 388.561 438.237 384.815C438.237 381.07 435.196 378.033 431.446 378.033C427.696 378.033 424.656 381.07 424.656 384.815C424.656 388.561 427.696 391.597 431.446 391.597Z" fill="url(#GraduationProjects1)"></path><path d="M463.278 317.841C457.336 317.841 452.668 313.178 452.668 307.244C452.668 301.31 457.336 296.648 463.278 296.648C469.22 296.648 473.888 301.31 473.888 307.244C473.888 313.178 469.22 317.841 463.278 317.841ZM463.278 303.43C461.156 303.43 459.034 305.125 459.034 307.668C459.034 310.211 460.732 311.907 463.278 311.907C465.4 311.907 467.522 310.211 467.522 307.668C467.522 305.125 465.824 303.43 463.278 303.43Z" fill="url(#GraduationProjects1)"></path><path d="M305.398 426.355L299.881 423.812C285.875 417.454 279.085 403.89 279.085 388.207H212.454C212.454 403.466 206.088 417.454 191.658 423.812L186.141 426.355H305.398Z" fill="url(#GraduationProjects1)"></path><path d="M305.399 429.319H186.142C184.444 429.319 183.171 428.472 183.171 426.776C182.747 425.505 183.595 423.809 184.869 423.385L190.386 420.842C202.269 415.756 209.06 403.888 209.06 388.205C209.06 386.509 210.333 384.814 212.455 384.814H279.51C281.208 384.814 282.906 386.085 282.906 388.205C282.906 403.464 289.696 415.332 301.579 420.842L307.097 423.385C308.37 423.809 309.219 425.505 308.794 426.776C308.37 428.472 307.097 429.319 305.399 429.319ZM199.723 422.961H292.243C282.906 416.18 276.964 405.159 276.54 391.596H215.426C215.001 405.159 209.06 416.18 199.723 422.961Z" fill="url(#GraduationProjects1)"></path><path d="M85.1337 445.001H36.3274C34.6297 445.001 32.9321 443.73 32.9321 441.61C32.9321 439.915 34.2053 438.219 36.3274 438.219H85.1337C86.8313 438.219 88.5289 439.491 88.5289 441.61C88.5289 443.73 86.8313 445.001 85.1337 445.001Z" fill="url(#GraduationProjects1)"></path><path d="M450.121 445.001H431.872C430.174 445.001 428.477 443.73 428.477 441.61C428.477 439.915 429.75 438.219 431.872 438.219H450.121C451.819 438.219 453.516 439.491 453.516 441.61C453.092 443.73 451.819 445.001 450.121 445.001Z" fill="url(#GraduationProjects1)"></path><path d="M332.986 321.657H139.458C127.999 321.657 118.662 312.332 118.662 300.888V198.313C118.662 186.868 127.999 177.543 139.458 177.543H333.41C344.869 177.543 354.206 186.868 354.206 198.313V300.888C353.781 312.332 344.445 321.657 332.986 321.657ZM139.458 183.901C131.394 183.901 125.028 190.259 125.028 198.313V300.888C125.028 308.941 131.394 315.299 139.458 315.299H333.41C341.474 315.299 347.84 308.941 347.84 300.888V198.313C347.84 190.259 341.474 183.901 333.41 183.901H139.458Z" fill="url(#GraduationProjects1)"></path><path d="M139.458 183.901C131.394 183.901 125.028 190.259 125.028 198.313V300.888C125.028 308.941 131.394 315.299 139.458 315.299H333.41C341.474 315.299 347.84 308.941 347.84 300.888V198.313C347.84 190.259 341.474 183.901 333.41 183.901H139.458Z" fill="url(#GraduationProjects1)"></path><path d="M314.284 292.413H239.688C231.933 292.413 225.655 285.208 225.655 276.306V239.43C225.655 230.529 231.933 223.323 239.688 223.323H314.284C322.039 223.323 328.317 230.529 328.317 239.43V276.306C328.317 285.208 322.039 292.413 314.284 292.413ZM239.688 229.681C234.887 229.681 231.194 233.92 231.194 239.43V276.306C231.194 281.817 234.887 286.055 239.688 286.055H314.284C319.084 286.055 322.777 281.817 322.777 276.306V239.43C322.777 233.92 319.084 229.681 314.284 229.681H239.688Z" fill="white"></path><path d="M239.688 229.681C234.887 229.681 231.194 233.92 231.194 239.43V276.306C231.194 281.817 234.887 286.055 239.688 286.055H314.284C319.084 286.055 322.777 281.817 322.777 276.306V239.43C322.777 233.92 319.084 229.681 314.284 229.681H239.688Z" fill="white"></path><mask id="mask0" maskType="alpha" maskUnits="userSpaceOnUse" x="144" y="222" width="77" height="70"><rect x="144.655" y="222.999" width="76" height="69" rx="16" fill="#C4C4C4"></rect></mask><g mask="url(#mask0)"><rect x="144.655" y="222.813" width="76" height="70.3704" fill="white"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M154.589 291.24L148.034 296.924C148.034 296.924 150.758 273.834 170.151 253.646L167.852 255.265C167.699 254.186 167.58 252.702 167.58 251.2C167.58 247.726 168.533 244.505 170.185 241.789C170.185 241.789 171.513 242.228 172.994 242.076C172.994 242.076 171.155 241.907 170.1 241.267C168.193 240.086 167.818 236.73 167.818 236.73C169.044 238.686 172.262 237.978 174.05 237.387C176.774 235.144 180.196 233.829 183.908 233.829C187.398 233.829 191.11 234.959 194.106 237.337C195.877 237.927 199.163 238.686 200.389 236.696C200.389 236.696 199.981 240.12 198.108 241.317C196.729 242.211 195.435 242.245 195.435 242.245C196.66 242.346 197.937 241.874 197.937 241.874C199.964 245.584 200.815 250.627 199.521 257.12C199.282 258.301 198.295 261.033 197.324 263.327L199.317 259.616C200.866 264.339 202.586 281.947 183.448 293.399L183.355 293.454L183.239 293.523C181.858 294.342 180.448 295.179 179.362 296.367C179.311 296.426 179.26 296.481 179.209 296.536C179.157 296.59 179.106 296.645 179.055 296.704C178.204 297.682 178.408 299.116 179.379 299.858C179.532 299.976 179.719 300.094 179.924 300.162C183.193 301.46 187.994 304.378 183.005 309.286C183.005 309.286 184.776 304.901 181.626 304.193C181.626 304.193 182.478 306.992 180.179 308.898C180.179 308.898 180.741 305.896 178.766 303.957C178.119 303.323 177.176 303.287 176.134 303.247C174.872 303.198 173.465 303.144 172.262 302.017C171.428 301.224 170.713 299.926 170.202 297.733C170.1 297.311 169.248 293.871 169.248 293.871L169.401 296.654C166.541 296.789 163.034 296.671 159.628 296.333L160.871 293.213L151.967 307.33L154.589 291.24ZM187.313 247.827C187.313 250.268 189.463 252.246 192.114 252.246C194.766 252.246 196.916 250.268 196.916 247.827C196.916 245.387 194.766 243.409 192.114 243.409C189.463 243.409 187.313 245.387 187.313 247.827ZM189.407 247.827C189.407 249.197 190.619 250.307 192.114 250.307C193.61 250.307 194.822 249.197 194.822 247.827C194.822 247.276 194.625 246.766 194.292 246.355C194.267 246.79 193.873 247.136 193.391 247.136C192.893 247.136 192.489 246.766 192.489 246.309C192.489 245.942 192.752 245.63 193.114 245.523C192.805 245.41 192.468 245.348 192.114 245.348C190.619 245.348 189.407 246.458 189.407 247.827ZM176.587 252.246C173.935 252.246 171.785 250.268 171.785 247.827C171.785 245.387 173.935 243.409 176.587 243.409C179.238 243.409 181.388 245.387 181.388 247.827C181.388 250.268 179.238 252.246 176.587 252.246ZM176.587 250.307C175.091 250.307 173.879 249.197 173.879 247.827C173.879 246.458 175.091 245.348 176.587 245.348C176.94 245.348 177.278 245.41 177.588 245.523C177.232 245.631 176.978 245.943 176.978 246.309C176.978 246.765 177.387 247.136 177.881 247.136C178.358 247.136 178.741 246.804 178.765 246.355C179.097 246.767 179.294 247.276 179.294 247.827C179.294 249.197 178.082 250.307 176.587 250.307ZM184.368 250.205C188.403 250.172 184.35 257.002 184.35 257.002C184.35 257.002 180.298 250.189 184.333 250.205H184.368ZM180.537 260.46C180.128 260.494 179.907 260.527 179.907 260.527C179.907 260.527 180.111 260.477 180.537 260.308C180.628 260.293 180.731 260.278 180.843 260.261C180.981 260.241 181.134 260.218 181.303 260.19C181.353 260.187 181.405 260.184 181.458 260.181C181.728 260.164 182.031 260.145 182.358 260.173C183.159 260.224 184.129 260.426 185.134 260.898C185.193 260.932 185.257 260.962 185.321 260.991C185.385 261.021 185.449 261.05 185.508 261.084C185.568 261.118 185.632 261.156 185.696 261.193C185.759 261.231 185.823 261.269 185.883 261.303C185.934 261.354 186.002 261.387 186.07 261.421C186.104 261.446 186.134 261.468 186.164 261.489C186.194 261.51 186.223 261.531 186.257 261.556C186.317 261.598 186.381 261.645 186.445 261.691C186.509 261.737 186.572 261.784 186.632 261.826L186.99 262.13C187.018 262.154 187.047 262.178 187.077 262.202C187.172 262.28 187.269 262.36 187.347 262.45C187.568 262.669 187.807 262.905 187.994 263.175C188.42 263.698 188.743 264.305 189.033 264.946L189.051 264.994L189.078 265.068C189.185 265.351 189.297 265.648 189.356 265.958C189.373 266.051 189.394 266.139 189.416 266.228C189.437 266.316 189.458 266.405 189.475 266.498C189.483 266.576 189.495 266.657 189.507 266.741C189.52 266.838 189.534 266.938 189.543 267.037C189.561 267.122 189.578 267.206 189.578 267.307V267.594V268.167C189.546 268.339 189.529 268.524 189.513 268.698L189.509 268.741L189.475 269.028C189.475 269.093 189.461 269.151 189.447 269.211C189.439 269.244 189.43 269.278 189.424 269.314C189.407 269.407 189.386 269.504 189.365 269.601C189.343 269.698 189.322 269.795 189.305 269.888C189.284 270.014 189.243 270.134 189.202 270.252C189.178 270.322 189.154 270.392 189.135 270.461C189.084 270.664 189.016 270.849 188.948 271.035C188.879 271.22 188.794 271.406 188.709 271.591C188.045 273.059 187.041 274.442 185.849 275.673C184.657 276.904 183.295 278.017 181.865 279.029L180.758 279.754C180.588 279.872 180.4 279.99 180.213 280.108L179.651 280.446C179.277 280.665 178.902 280.884 178.51 281.103L177.387 281.711L176.263 282.318C176.027 282.43 175.797 282.548 175.57 282.664C175.42 282.741 175.271 282.818 175.122 282.891C174.583 283.171 174.034 283.432 173.496 283.689C173.287 283.789 173.08 283.888 172.875 283.988C171.444 284.672 170.028 285.278 168.691 285.85L168.55 285.91C168.136 286.081 167.727 286.245 167.324 286.407C167.049 286.518 166.777 286.627 166.507 286.737C166.207 286.851 165.91 286.962 165.618 287.071L165.617 287.072C165.264 287.204 164.918 287.333 164.583 287.462C164.308 287.557 164.04 287.656 163.779 287.753C163.44 287.877 163.112 287.998 162.795 288.103C162.51 288.197 162.228 288.291 161.954 288.383L161.949 288.385L161.948 288.385L161.947 288.386C161.684 288.474 161.427 288.56 161.178 288.642C160.278 288.94 159.483 289.172 158.794 289.372C158.702 289.399 158.611 289.426 158.522 289.452C157.826 289.656 157.263 289.801 156.873 289.902L156.872 289.902L156.871 289.902L156.785 289.924C156.393 290.025 156.172 290.076 156.172 290.076C156.172 290.076 156.972 289.739 158.369 289.132C158.686 288.993 159.032 288.838 159.406 288.67L159.407 288.669L159.408 288.669C159.855 288.467 160.343 288.248 160.871 288.018C161.633 287.682 162.481 287.291 163.39 286.873C163.619 286.767 163.853 286.66 164.089 286.551C164.668 286.281 165.281 285.995 165.911 285.691C166.23 285.537 166.554 285.379 166.882 285.219L166.882 285.219L166.884 285.218C167.202 285.062 167.525 284.904 167.852 284.746C169.18 284.089 170.576 283.38 172.006 282.638L172.126 282.576C172.209 282.533 172.292 282.49 172.376 282.447C172.972 282.139 173.576 281.827 174.169 281.491C174.413 281.356 174.657 281.223 174.901 281.09L174.901 281.09C175.389 280.824 175.877 280.558 176.365 280.277C176.471 280.217 176.578 280.156 176.686 280.094L176.688 280.093L176.689 280.093L176.69 280.092C176.946 279.945 177.209 279.795 177.472 279.653C177.651 279.543 177.829 279.438 178.008 279.333C178.187 279.227 178.366 279.122 178.545 279.012L179.089 278.692C179.277 278.59 179.447 278.472 179.617 278.354L180.656 277.663C182.001 276.702 183.278 275.673 184.402 274.56C184.963 274.003 185.474 273.413 185.934 272.822C186.377 272.215 186.785 271.608 187.109 270.967C187.151 270.891 187.19 270.811 187.228 270.731C187.266 270.651 187.305 270.571 187.347 270.495C187.376 270.423 187.402 270.352 187.427 270.282C187.462 270.186 187.495 270.093 187.534 270.006C187.556 269.936 187.582 269.869 187.609 269.803C187.647 269.709 187.685 269.616 187.705 269.517C187.73 269.432 187.751 269.352 187.773 269.272C187.794 269.192 187.815 269.112 187.841 269.028C187.848 269 187.857 268.97 187.868 268.938C187.883 268.892 187.899 268.842 187.909 268.791L187.943 268.555C187.959 268.477 187.971 268.399 187.983 268.322C187.997 268.234 188.01 268.148 188.028 268.066C188.037 267.99 188.041 267.91 188.045 267.83C188.049 267.75 188.054 267.67 188.062 267.594L188.079 267.358C188.09 267.302 188.087 267.254 188.083 267.204C188.081 267.177 188.079 267.151 188.079 267.122C188.079 267.035 188.075 266.953 188.07 266.873C188.066 266.797 188.062 266.723 188.062 266.65C188.054 266.574 188.041 266.498 188.028 266.422C188.015 266.346 188.003 266.27 187.994 266.194C187.971 265.987 187.916 265.788 187.862 265.592C187.837 265.5 187.811 265.409 187.79 265.317C187.585 264.744 187.364 264.204 187.041 263.732C186.428 262.77 185.593 262.028 184.742 261.505C183.891 260.999 183.022 260.696 182.29 260.561C182.034 260.503 181.793 260.485 181.574 260.468C181.473 260.461 181.377 260.454 181.286 260.443C180.996 260.443 180.741 260.443 180.537 260.46Z" fill="url(#GraduationProjects1)"></path></g><path d="M217.122 212.722H147.095C145.398 212.722 143.7 211.45 143.7 209.331C143.7 207.635 144.973 205.94 147.095 205.94H217.122C218.82 205.94 220.517 207.211 220.517 209.331C220.093 211.026 218.82 212.722 217.122 212.722Z" fill="white"></path><path d="M263.384 212.722H229.008C227.31 212.722 225.612 211.45 225.612 209.331C225.612 207.635 226.886 205.94 229.008 205.94H263.384C265.082 205.94 266.779 207.211 266.779 209.331C266.355 211.026 265.082 212.722 263.384 212.722Z" fill="white"></path><path d="M285.026 212.722H274.416C272.719 212.722 271.021 211.45 271.021 209.331C271.021 207.635 272.294 205.94 274.416 205.94H285.026C286.724 205.94 288.422 207.211 288.422 209.331C287.997 211.026 286.724 212.722 285.026 212.722Z" fill="white"></path><path d="M325.346 212.722H296.063C294.365 212.722 292.667 211.45 292.667 209.331C292.667 207.635 293.941 205.94 296.063 205.94H325.346C327.044 205.94 328.742 207.211 328.742 209.331C328.317 211.026 327.044 212.722 325.346 212.722Z" fill="white"></path><path d="M319.829 436.522V442.032H167.469V436.522C167.469 431.011 172.137 426.349 177.654 426.349H310.068C315.585 426.349 319.829 430.588 319.829 436.522Z" fill="white"></path><path d="M319.83 445.001H167.469C165.772 445.001 164.074 443.73 164.074 441.61V436.524C164.074 429.318 170.016 423.384 177.231 423.384H309.645C316.859 423.384 322.801 429.318 322.801 436.524V442.034C323.225 443.73 321.528 445.001 319.83 445.001ZM170.44 438.643H316.435V436.524C316.435 432.709 313.464 429.742 309.645 429.742H177.655C173.835 429.742 170.865 432.709 170.865 436.524V438.643H170.44Z" fill="url(#GraduationProjects1)"></path><path d="M421.686 445.001H105.081C103.384 445.001 101.686 443.73 101.686 441.61C101.686 439.915 102.959 438.219 105.081 438.219H421.262C422.959 438.219 424.657 439.491 424.657 441.61C424.657 443.73 423.384 445.001 421.686 445.001Z" fill="url(#GraduationProjects1)"></path><defs><linearGradient id="GraduationProjects0" x1="228.598" y1="252.519" x2="264.261" y2="62.8264" gradientUnits="userSpaceOnUse"><stop stop-color="#EFEFEF"></stop><stop offset="1" stop-color="white" stop-opacity="0.56"></stop></linearGradient><linearGradient id="GraduationProjects1" x1="233.752" y1="160.296" x2="449.892" y2="197.12" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient><linearGradient id="GraduationProjects2" x1="347.655" y1="388.999" x2="213.549" y2="470.528" gradientUnits="userSpaceOnUse"><stop stop-color="#EFEFEF"></stop><stop offset="1" stop-color="white" stop-opacity="0.56"></stop></linearGradient></defs></svg></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-1ddwpfq-1 hnlXxp sc-7bqyxh-1 eTWzoY"><i class="sc-1ddwpfq-0 kGrPZV"></i><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><section class="sc-7bqyxh-0 iJNhSn sc-x072mc-0 hOtCic"><div class="sc-7bqyxh-2 imGcoX"><h2 class="sc-1x9oq14-0 sc-7bqyxh-3 kswXpy gvtgmJ">Преподаватели</h2><div></div><div class="sc-1bkbgbz-0 cInatB swiper-ui sc-7bqyxh-5 gCZLLN"><div class="sc-1bkbgbz-1 cPJghB"><div class="swiper"><div class="swiper-wrapper"><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/eb/13/eb13d2ffca3b45adbf61f4b11889f182.png" class="sc-jotj87-0 XkBuU"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Андрей Сорокин</p><p class="sc-1x9oq14-0 sc-1s527z5-2 dvqddq jSHKpX">Ведущий разработчик C# ASP.NET | Архитектор программного обеспечения</p><p class="sc-1x9oq14-0 sc-1s527z5-3 eMZyoN kLSaHO">FinTech компания</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg" class="sc-jotj87-0 ildkjA"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Алексей Ягур</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png" class="sc-jotj87-0 iCZAU"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Эдгар Пилипсон</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/ee/04/ee045664d2af4d23acf5f99eed616b95.jpg" class="sc-jotj87-0 eKIGkP"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Родион Мостовой</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/9a/93/9a93e389c2f14d63ae66f99d01076b37.jpg" class="sc-jotj87-0 lkcwQG"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Роман Приходько</p><p class="sc-1x9oq14-0 sc-1s527z5-2 dvqddq jSHKpX">Senior SDET</p><p class="sc-1x9oq14-0 sc-1s527z5-3 eMZyoN kLSaHO">Ozon</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png" class="sc-jotj87-0 BpJs"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Виктор Дзицкий</p><p class="sc-1x9oq14-0 sc-1s527z5-2 dvqddq jSHKpX">Тимлид, full-stack .NET Developer</p><p class="sc-1x9oq14-0 sc-1s527z5-3 eMZyoN kLSaHO">SolarLab</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg" class="sc-jotj87-0 igTkz"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Михаил Дмитриев</p><p class="sc-1x9oq14-0 sc-1s527z5-2 dvqddq jSHKpX">инженер-программист</p><p class="sc-1x9oq14-0 sc-1s527z5-3 eMZyoN kLSaHO">НИПК Электрон</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg" class="sc-jotj87-0 epJsoR"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Антон Герасименко</p></div><div class="swiper-slide sc-1s527z5-0 fxMjmR"><div class="sc-jotj87-1 fjUCpx"><div src="https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg" class="sc-jotj87-0 izRHOr"></div></div><p class="sc-1x9oq14-0 sc-1s527z5-1 gGtEnS iiYkXk">Дмитрий Гурьянов</p><p class="sc-1x9oq14-0 sc-1s527z5-2 dvqddq jSHKpX">Senior Developer</p><p class="sc-1x9oq14-0 sc-1s527z5-3 eMZyoN kLSaHO">SKL Group</p></div></div></div></div><div color="#fff" class="sc-1bkbgbz-6 hcbJSK"><button color="#fff" class="sc-1bkbgbz-2 sc-1bkbgbz-4 dQlnjC biZjNh"><div class="sc-1bqzqc9-0"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button><div class="sc-1bkbgbz-5 hGKrlu"></div><button color="#fff" class="sc-1bkbgbz-2 sc-1bkbgbz-3 dQlnjC iPzpLW"><div class="sc-1bqzqc9-0 dzJeEt"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button></div></div><p class="sc-1x9oq14-0 sc-7bqyxh-4 fPZiIk hgzLIf">Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания</p></div></section></div><div id="pastevents" class="sc-x072mc-0 sc-g9zqla-0 hOtCic frFtzw"><h2 class="sc-1x9oq14-0 sc-g9zqla-1 bTMeHF jqTCqB">Прошедшие <br class="sc-g9zqla-2 nExnN"/>мероприятия</h2><div class="sc-g9zqla-3 cmzqGo"><div id="video-6753" class="sc-1l3meww-0 gAbnmq"><div src="https://i.mycdn.me/getVideoPreview?id=11253096647313&idx=8&type=39&tkn=79kESg7l_JrC2D29BXavulX-NF8&fn=vid_l" class="sc-1l3meww-1 etLWhg"><svg width="48" height="48" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1l3meww-7 hkpcCk"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 12.0058C2 6.48625 6.48842 2 12 2C17.5116 2 22 6.48625 22 12.0058C22 17.5137 17.5116 22 12 22C6.48842 22 2 17.5137 2 12.0058ZM15.668 13.0178C15.7741 12.9117 15.9093 12.7477 15.9382 12.7091C16.0927 12.5065 16.1699 12.2557 16.1699 12.0058C16.1699 11.725 16.083 11.4645 15.9189 11.2523C15.9055 11.2388 15.8791 11.2102 15.8448 11.1728C15.7806 11.103 15.6885 11.0026 15.6004 10.9146C14.8089 10.0656 12.7432 8.67631 11.6622 8.25181C11.4981 8.18524 11.083 8.03956 10.861 8.02991C10.6486 8.02991 10.4459 8.07815 10.2529 8.17463C10.0116 8.3097 9.81853 8.52195 9.71236 8.77279C9.64479 8.94645 9.53861 9.46744 9.53861 9.47709C9.43243 10.0463 9.37452 10.9725 9.37452 11.9952C9.37452 12.9706 9.43243 13.8572 9.51931 14.4361C9.52169 14.4385 9.53 14.4799 9.5429 14.5442C9.58211 14.7397 9.6638 15.1471 9.75097 15.314C9.96332 15.7192 10.3784 15.9701 10.8224 15.9701H10.861C11.1506 15.9604 11.7587 15.7096 11.7587 15.7C12.7819 15.2754 14.7992 13.9537 15.61 13.0757L15.668 13.0178Z" fill="currentColor"></path></svg></div><div class="sc-1l3meww-2 cHxJxf"><div class="sc-1x9oq14-0 sc-1l3meww-3 dvqddq blhXzJ">Михаил Дмитриев</div><div class="sc-1x9oq14-0 sc-1l3meww-4 iFeEEh dePnfm">Открытый вебинар</div><div class="sc-1x9oq14-0 sc-1l3meww-5 doSDez gnNvLT">Реализация паттерна CQRS с использованием библиотеки MediatR и ASP.NET CORE</div></div></div><div id="video-6752" class="sc-1l3meww-0 gAbnmq"><div src="https://sun9-13.userapi.com/impg/CsfDIOnQmx15crfdPXlMfdN33Y1eS6G3kdOEIg/PAnky1e1J3M.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=869aabda4abfb109748d9a5089579090&c_uniq_tag=t9KrP4c0kQckOX7f0lf9q33JkWPSGt1GIba-PyP-Kmw&type=video_thumb" class="sc-1l3meww-1 jsBpWB"><svg width="48" height="48" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1l3meww-7 hkpcCk"><path fill-rule="evenodd" clip-rule="evenodd" d="M2 12.0058C2 6.48625 6.48842 2 12 2C17.5116 2 22 6.48625 22 12.0058C22 17.5137 17.5116 22 12 22C6.48842 22 2 17.5137 2 12.0058ZM15.668 13.0178C15.7741 12.9117 15.9093 12.7477 15.9382 12.7091C16.0927 12.5065 16.1699 12.2557 16.1699 12.0058C16.1699 11.725 16.083 11.4645 15.9189 11.2523C15.9055 11.2388 15.8791 11.2102 15.8448 11.1728C15.7806 11.103 15.6885 11.0026 15.6004 10.9146C14.8089 10.0656 12.7432 8.67631 11.6622 8.25181C11.4981 8.18524 11.083 8.03956 10.861 8.02991C10.6486 8.02991 10.4459 8.07815 10.2529 8.17463C10.0116 8.3097 9.81853 8.52195 9.71236 8.77279C9.64479 8.94645 9.53861 9.46744 9.53861 9.47709C9.43243 10.0463 9.37452 10.9725 9.37452 11.9952C9.37452 12.9706 9.43243 13.8572 9.51931 14.4361C9.52169 14.4385 9.53 14.4799 9.5429 14.5442C9.58211 14.7397 9.6638 15.1471 9.75097 15.314C9.96332 15.7192 10.3784 15.9701 10.8224 15.9701H10.861C11.1506 15.9604 11.7587 15.7096 11.7587 15.7C12.7819 15.2754 14.7992 13.9537 15.61 13.0757L15.668 13.0178Z" fill="currentColor"></path></svg></div><div class="sc-1l3meww-2 cHxJxf"><div class="sc-1x9oq14-0 sc-1l3meww-3 dvqddq blhXzJ">Виктор Дзицкий</div><div class="sc-1x9oq14-0 sc-1l3meww-4 iFeEEh dePnfm">Открытый вебинар</div><div class="sc-1x9oq14-0 sc-1l3meww-5 doSDez gnNvLT">Настройка CI/CD на практике с помощью Docker для ASP.NET‑приложений</div></div></div></div><div class="sc-1x9oq14-0 sc-n3p609-1 doSDez caypgj">Оставьте заявку, чтобы получить доступ ко всем записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке</div><div class="sc-1lrh8w5-0 ftkQLi sc-n3p609-0 fYPwsY"><button class="sc-1qig7zt-0 czpnNJ sc-1lrh8w5-3 JTsAm"><span class="sc-1lrh8w5-4 jTrfLJ">Сообщить о старте набора</span><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-1lrh8w5-5 kfzfcV"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.7071 8.79633C18.7071 10.0523 19.039 10.7925 19.7695 11.6456C20.3231 12.2741 20.5 13.0808 20.5 13.956C20.5 14.8302 20.2128 15.6601 19.6373 16.3339C18.884 17.1417 17.8215 17.6573 16.7372 17.747C15.1659 17.8809 13.5937 17.9937 12.0005 17.9937C10.4063 17.9937 8.83505 17.9263 7.26375 17.747C6.17846 17.6573 5.11602 17.1417 4.36367 16.3339C3.78822 15.6601 3.5 14.8302 3.5 13.956C3.5 13.0808 3.6779 12.2741 4.23049 11.6456C4.98384 10.7925 5.29392 10.0523 5.29392 8.79633V8.3703C5.29392 6.68834 5.71333 5.58852 6.577 4.51186C7.86106 2.9417 9.91935 2 11.9558 2H12.0452C14.1254 2 16.2502 2.98702 17.5125 4.62466C18.3314 5.67916 18.7071 6.73265 18.7071 8.3703V8.79633ZM9.07367 20.0608C9.07367 19.5573 9.53582 19.3266 9.96318 19.2279C10.4631 19.1222 13.5093 19.1222 14.0092 19.2279C14.4366 19.3266 14.8987 19.5573 14.8987 20.0608C14.8738 20.5402 14.5926 20.9653 14.204 21.2352C13.7001 21.628 13.1088 21.8767 12.4906 21.9664C12.1487 22.0107 11.8128 22.0117 11.4828 21.9664C10.8636 21.8767 10.2723 21.628 9.76938 21.2342C9.37978 20.9653 9.09852 20.5402 9.07367 20.0608Z" fill="currentColor"></path></svg></button></div></div><div class="sc-1ddwpfq-1 hnlXxp sc-1xm68ya-2 isRQVJ"><i class="sc-1ddwpfq-0 bKfgwd"></i><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-x072mc-0 sc-1xm68ya-1 hOtCic hqEzLD sc-x072mc-0 hOtCic"><h2 class="sc-1x9oq14-0 sc-1xm68ya-3 kswXpy cXcqyt">Этот курс может оплатить ваш работодатель</h2><div class="sc-1xm68ya-4 kscGdX"><div class="sc-1x9oq14-0 sc-1xm68ya-5 fPZiIk">Обучайтесь за счёт работодателя или разделите оплату 50/50</div><ul class="sc-1xm68ya-6 jEIquP"><li class="sc-1xm68ya-0 eNgslB">Подробно расскажем об интересующем вас курсе</li><li class="sc-1xm68ya-0 eNgslB">Объясним, как договориться с работодателем</li><li class="sc-1xm68ya-0 eNgslB">Сообщим стоимость обучения и варианты оплаты</li><li class="sc-1xm68ya-0 eNgslB">Ответим на вопросы</li><li class="sc-1xm68ya-0 eNgslB">Предоставим шаблон договора и счёт на оплату</li></ul><div><a class="sc-1xm68ya-7 eOihnY" target="_blank" rel="noopener noreferrer" href="/b2b">Подробнее о корпоративном обучении</a></div></div><div class="sc-32ejay-1 bnqryM"><button class="sc-1qig7zt-0 czpnNJ">Оставить заявку</button></div></div></div><div class="sc-x072mc-0 sc-h0c1ca-0 hOtCic dXezGA"><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><h2 class="sc-1x9oq14-0 sc-h0c1ca-4 kswXpy dygiGU">Отзывы</h2><div class="sc-h0c1ca-1 gaiDWC"><div class="sc-1bkbgbz-0 haeyZv swiper-ui sc-h0c1ca-5 vuxta"><div class="sc-1bkbgbz-1 jssxGI"><div class="swiper"><div class="swiper-wrapper"><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Александр Заворотный</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">08.12.2025</div></div><div class="sc-h3yero-6 bXBhOa"><a target="_blank" rel="noopener noreferrer" href="https://telegram.me/telegram" class="sc-e8trbg-0 ervbDS"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M31.9995 16.001C31.9995 24.8375 24.836 32.001 15.9995 32.001C7.16298 32.001 -0.000488281 24.8375 -0.000488281 16.001C-0.000488281 7.16444 7.16298 0.000976562 15.9995 0.000976562C24.836 0.000976562 31.9995 7.16444 31.9995 16.001ZM10.7138 14.5353C9.11105 15.2351 7.46425 15.9542 5.95835 16.7836C5.17203 17.3594 6.2171 17.7666 7.19758 18.1486C7.35345 18.2094 7.50765 18.2694 7.65265 18.3294C7.77331 18.3666 7.89598 18.4056 8.02031 18.4452C9.11078 18.7926 10.3266 19.18 11.3853 18.5973C13.1244 17.5983 14.7655 16.4434 16.4054 15.2893C16.9427 14.9112 17.4798 14.5332 18.0202 14.1608C18.0456 14.1446 18.0741 14.126 18.1054 14.1058C18.5657 13.8074 19.6011 13.1362 19.2181 14.061C18.3125 15.0514 17.3424 15.9281 16.3672 16.8096C15.7098 17.4037 15.0501 18 14.4061 18.6346C13.8452 19.0904 13.2628 20.0068 13.8908 20.645C15.3374 21.6577 16.8066 22.6458 18.275 23.6334C18.7528 23.9548 19.2306 24.2761 19.7074 24.5982C20.5155 25.2434 21.7785 24.7215 21.9562 23.7133C22.0352 23.2495 22.1145 22.7858 22.1938 22.322C22.6322 19.7588 23.0708 17.1948 23.4582 14.6233C23.5108 14.2199 23.5705 13.8166 23.6302 13.413C23.775 12.435 23.9199 11.4557 23.9652 10.4724C23.8485 9.49104 22.6586 9.70684 21.9965 9.92751C18.593 11.2226 15.2236 12.6136 11.8674 14.0292C11.4872 14.1976 11.1018 14.3659 10.7138 14.5353Z" fill="url(#PromoReviewSocialTg)"></path><defs><linearGradient id="PromoReviewSocialTg" x1="2.59519" y1="10.3069" x2="30.0331" y2="14.9755" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></a></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Курс достаточно хорошо организован. Информирование о событиях, изменение расписания занятий выше всяких похвал. Хорошо работает команда методистов.
Курс постоянно актуализируется под изменения затрагиваемых технологий.
Преподаватели - не замшелые теоретики, а производственники, уделяют достаточно времени на практические аспекты использования. Компетентные, вежливые, отзывчивые.</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Айнур Минигалиев</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">24.07.2025</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Очень качественный материал, хорошие преподаватели</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Павел Скрябин</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">23.07.2025</div></div><div class="sc-h3yero-6 bXBhOa"><a target="_blank" rel="noopener noreferrer" href="https://telegram.me/telegram" class="sc-e8trbg-0 ervbDS"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M31.9995 16.001C31.9995 24.8375 24.836 32.001 15.9995 32.001C7.16298 32.001 -0.000488281 24.8375 -0.000488281 16.001C-0.000488281 7.16444 7.16298 0.000976562 15.9995 0.000976562C24.836 0.000976562 31.9995 7.16444 31.9995 16.001ZM10.7138 14.5353C9.11105 15.2351 7.46425 15.9542 5.95835 16.7836C5.17203 17.3594 6.2171 17.7666 7.19758 18.1486C7.35345 18.2094 7.50765 18.2694 7.65265 18.3294C7.77331 18.3666 7.89598 18.4056 8.02031 18.4452C9.11078 18.7926 10.3266 19.18 11.3853 18.5973C13.1244 17.5983 14.7655 16.4434 16.4054 15.2893C16.9427 14.9112 17.4798 14.5332 18.0202 14.1608C18.0456 14.1446 18.0741 14.126 18.1054 14.1058C18.5657 13.8074 19.6011 13.1362 19.2181 14.061C18.3125 15.0514 17.3424 15.9281 16.3672 16.8096C15.7098 17.4037 15.0501 18 14.4061 18.6346C13.8452 19.0904 13.2628 20.0068 13.8908 20.645C15.3374 21.6577 16.8066 22.6458 18.275 23.6334C18.7528 23.9548 19.2306 24.2761 19.7074 24.5982C20.5155 25.2434 21.7785 24.7215 21.9562 23.7133C22.0352 23.2495 22.1145 22.7858 22.1938 22.322C22.6322 19.7588 23.0708 17.1948 23.4582 14.6233C23.5108 14.2199 23.5705 13.8166 23.6302 13.413C23.775 12.435 23.9199 11.4557 23.9652 10.4724C23.8485 9.49104 22.6586 9.70684 21.9965 9.92751C18.593 11.2226 15.2236 12.6136 11.8674 14.0292C11.4872 14.1976 11.1018 14.3659 10.7138 14.5353Z" fill="url(#PromoReviewSocialTg)"></path><defs><linearGradient id="PromoReviewSocialTg" x1="2.59519" y1="10.3069" x2="30.0331" y2="14.9755" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></a></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">В целом курс понравился. Полезные домашние задания, которые позволили закрепить материал на практике. Особенно ценным был командный проект — он дал возможность не только изучить технологии, но и поработать вместе с более опытными коллегами, что дало ценный практический опыт.
Отдельное спасибо преподавателям — Антону Герасименко, Роману Приходько и Елене Сычёвой. Они — лучшие преподаватели курса!</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Роман Кириллов</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">03.09.2024</div></div><div class="sc-h3yero-6 bXBhOa"><a target="_blank" rel="noopener noreferrer" href="https://telegram.me/telegram" class="sc-e8trbg-0 ervbDS"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M31.9995 16.001C31.9995 24.8375 24.836 32.001 15.9995 32.001C7.16298 32.001 -0.000488281 24.8375 -0.000488281 16.001C-0.000488281 7.16444 7.16298 0.000976562 15.9995 0.000976562C24.836 0.000976562 31.9995 7.16444 31.9995 16.001ZM10.7138 14.5353C9.11105 15.2351 7.46425 15.9542 5.95835 16.7836C5.17203 17.3594 6.2171 17.7666 7.19758 18.1486C7.35345 18.2094 7.50765 18.2694 7.65265 18.3294C7.77331 18.3666 7.89598 18.4056 8.02031 18.4452C9.11078 18.7926 10.3266 19.18 11.3853 18.5973C13.1244 17.5983 14.7655 16.4434 16.4054 15.2893C16.9427 14.9112 17.4798 14.5332 18.0202 14.1608C18.0456 14.1446 18.0741 14.126 18.1054 14.1058C18.5657 13.8074 19.6011 13.1362 19.2181 14.061C18.3125 15.0514 17.3424 15.9281 16.3672 16.8096C15.7098 17.4037 15.0501 18 14.4061 18.6346C13.8452 19.0904 13.2628 20.0068 13.8908 20.645C15.3374 21.6577 16.8066 22.6458 18.275 23.6334C18.7528 23.9548 19.2306 24.2761 19.7074 24.5982C20.5155 25.2434 21.7785 24.7215 21.9562 23.7133C22.0352 23.2495 22.1145 22.7858 22.1938 22.322C22.6322 19.7588 23.0708 17.1948 23.4582 14.6233C23.5108 14.2199 23.5705 13.8166 23.6302 13.413C23.775 12.435 23.9199 11.4557 23.9652 10.4724C23.8485 9.49104 22.6586 9.70684 21.9965 9.92751C18.593 11.2226 15.2236 12.6136 11.8674 14.0292C11.4872 14.1976 11.1018 14.3659 10.7138 14.5353Z" fill="url(#PromoReviewSocialTg)"></path><defs><linearGradient id="PromoReviewSocialTg" x1="2.59519" y1="10.3069" x2="30.0331" y2="14.9755" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></a></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">В настоящее время работаю в компании ГазпромНефть-Автоматизация в должности ведущего инженера-программиста.
Я искал курс по .NET на продвинутом уровне, где была возможность задавать вопросы лектору, получать обратную связь по ДЗ от ментора.
Благодаря этому курсу я получил новые знания и навыки, которые применял в рамках домашних заданий и проекта.
У меня есть перспективы для новой должности в будущем.</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div src="https://cdn.otus.ru/media/public/36/e4/avatar-511013-36e4b0.png" class="sc-h3yero-4 bEocPc"></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Антон Климков</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">03.09.2024</div></div><div class="sc-h3yero-6 bXBhOa"><a target="_blank" rel="noopener noreferrer" href="https://telegram.me/telegram" class="sc-e8trbg-0 ervbDS"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M31.9995 16.001C31.9995 24.8375 24.836 32.001 15.9995 32.001C7.16298 32.001 -0.000488281 24.8375 -0.000488281 16.001C-0.000488281 7.16444 7.16298 0.000976562 15.9995 0.000976562C24.836 0.000976562 31.9995 7.16444 31.9995 16.001ZM10.7138 14.5353C9.11105 15.2351 7.46425 15.9542 5.95835 16.7836C5.17203 17.3594 6.2171 17.7666 7.19758 18.1486C7.35345 18.2094 7.50765 18.2694 7.65265 18.3294C7.77331 18.3666 7.89598 18.4056 8.02031 18.4452C9.11078 18.7926 10.3266 19.18 11.3853 18.5973C13.1244 17.5983 14.7655 16.4434 16.4054 15.2893C16.9427 14.9112 17.4798 14.5332 18.0202 14.1608C18.0456 14.1446 18.0741 14.126 18.1054 14.1058C18.5657 13.8074 19.6011 13.1362 19.2181 14.061C18.3125 15.0514 17.3424 15.9281 16.3672 16.8096C15.7098 17.4037 15.0501 18 14.4061 18.6346C13.8452 19.0904 13.2628 20.0068 13.8908 20.645C15.3374 21.6577 16.8066 22.6458 18.275 23.6334C18.7528 23.9548 19.2306 24.2761 19.7074 24.5982C20.5155 25.2434 21.7785 24.7215 21.9562 23.7133C22.0352 23.2495 22.1145 22.7858 22.1938 22.322C22.6322 19.7588 23.0708 17.1948 23.4582 14.6233C23.5108 14.2199 23.5705 13.8166 23.6302 13.413C23.775 12.435 23.9199 11.4557 23.9652 10.4724C23.8485 9.49104 22.6586 9.70684 21.9965 9.92751C18.593 11.2226 15.2236 12.6136 11.8674 14.0292C11.4872 14.1976 11.1018 14.3659 10.7138 14.5353Z" fill="url(#PromoReviewSocialTg)"></path><defs><linearGradient id="PromoReviewSocialTg" x1="2.59519" y1="10.3069" x2="30.0331" y2="14.9755" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></a></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">До обучения в OTUS и прохождения курса "C# ASP.NET Core разработчик" работал в роли QA Automation C#. Возник интерес к разработке и желание отойти от тестирования, поэтому решил развивать компетенции backend разработчика. Так как был коммерческий опыт работы с C#, то и развиваться в контексте разработки решил также с использованием C#.
Курс по ASP.NET от OTUS выбрал во многом из-за наличия возможности командной разработки выпускного проекта - это для меня было неоспоримым преимуществом. При обучении нравилось большое количество практических ДЗ и возможность "покопаться" с изученным в рамках проекта.
По окончании обучения на курсе получил возможность в роли QA Automation заниматься разработкой проекта, который используется в тестировании в нашей компании. Это было мини-целью при старте обучения.</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Ирина Дыдышко</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">17.08.2022</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Училась в НИЯУ МИФИ, прикладная математика и информатика.
На данный момент живу в Москве и работаю в Лаборатории Касперского как Software Development Engineer in Test. Курс “C# ASP.NET Core разработчик“ выбрала для того, что бы узнать новое и систематизировать уже имеющиеся знания в разработке. В Otus мне понравилась подача информации преподавателями, домашние задания по темам, которые помогли отработать полученную информацию, и работа над курсовым проектом, которая так же помогла отработать полученные знания и прокачать коммуникативные навыки работы в команде. Обучение дало мне новые знания, помогло отработать их на практике и, в перспективе, надеюсь, получить повышение по должности и/или реализовать свой проект.
Спасибо команде Otus!</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Артем Карпец</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">02.12.2021</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Отличный курс, получил много полезных навыков. Классный формат лекций когда преподаватели делятся своим опытом в применению той или иной технологии в компании.
Формат ДЗ мне тоже понравился, тебе выдают уже созданный и подготовленный проект и ты сосредоточен только на нужной теме и тебе не нужно проделывать по несколько раз одну и ту же работу.
Что хотелось бы предложить: добавить в ДЗ работу, по применению потерна SAGA так как паттерн очень важный и размытый в описании на разных ресурсах, хотелось бы попробовать сделать его самому и получить фидбэк от проверяющего.</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Сергей Толстых</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">28.08.2021</div></div><div class="sc-h3yero-6 bXBhOa"><a target="_blank" rel="noopener noreferrer" href="https://telegram.me/telegram" class="sc-e8trbg-0 ervbDS"><svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M31.9995 16.001C31.9995 24.8375 24.836 32.001 15.9995 32.001C7.16298 32.001 -0.000488281 24.8375 -0.000488281 16.001C-0.000488281 7.16444 7.16298 0.000976562 15.9995 0.000976562C24.836 0.000976562 31.9995 7.16444 31.9995 16.001ZM10.7138 14.5353C9.11105 15.2351 7.46425 15.9542 5.95835 16.7836C5.17203 17.3594 6.2171 17.7666 7.19758 18.1486C7.35345 18.2094 7.50765 18.2694 7.65265 18.3294C7.77331 18.3666 7.89598 18.4056 8.02031 18.4452C9.11078 18.7926 10.3266 19.18 11.3853 18.5973C13.1244 17.5983 14.7655 16.4434 16.4054 15.2893C16.9427 14.9112 17.4798 14.5332 18.0202 14.1608C18.0456 14.1446 18.0741 14.126 18.1054 14.1058C18.5657 13.8074 19.6011 13.1362 19.2181 14.061C18.3125 15.0514 17.3424 15.9281 16.3672 16.8096C15.7098 17.4037 15.0501 18 14.4061 18.6346C13.8452 19.0904 13.2628 20.0068 13.8908 20.645C15.3374 21.6577 16.8066 22.6458 18.275 23.6334C18.7528 23.9548 19.2306 24.2761 19.7074 24.5982C20.5155 25.2434 21.7785 24.7215 21.9562 23.7133C22.0352 23.2495 22.1145 22.7858 22.1938 22.322C22.6322 19.7588 23.0708 17.1948 23.4582 14.6233C23.5108 14.2199 23.5705 13.8166 23.6302 13.413C23.775 12.435 23.9199 11.4557 23.9652 10.4724C23.8485 9.49104 22.6586 9.70684 21.9965 9.92751C18.593 11.2226 15.2236 12.6136 11.8674 14.0292C11.4872 14.1976 11.1018 14.3659 10.7138 14.5353Z" fill="url(#PromoReviewSocialTg)"></path><defs><linearGradient id="PromoReviewSocialTg" x1="2.59519" y1="10.3069" x2="30.0331" y2="14.9755" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></a></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Очень хороший курс , сделан с душой и любовью. Дает много материала, знакомит с основными подходами и технологиями.
Много разных преподавателей, кто-то хорошо преподносит материал и пошагово разбирает его на примерах (и это просто супер, очень полезно и понятно, легче делать домашку), кто-то дает только общее представление о технологии в формате лекции, но если захочешь, все равно в домашке разберешься (гуглить проще, когда знаешь что гуглить) или задашь все вопросы преподавателю.
Отдельная часть это командный проект, в нем получается посмотреть как работают изученные технологии более подробно и уже в менее комнатных условиях. Понятно, что уровень знаний у всех людей разный, но в целом у всех команд получились хорошие проекты, много технологий применено, и главное, что у всех разные подходы. Получается, ты сразу же видишь много примеров, как можно или нужно делать в разных условиях. Я проходил курс имея оочень поверхностное представление о всем том, что тут рассказывается, но с командой проще было втянуться, и преподаватели всегда рады помочь.
Однозначно, рекомендасьен!</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Федор Чеппель</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">04.06.2021</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Курс очень насыщенный, интересный. Для выполнения домашних заданий нужно сразу планировать по 4-5 часов на каждую (всего было 14). К сожалению я не успел сдать все, но планирую по мере возможности доделать.
Лично мне курс помог получить повышение по зарплате.
Благодарю преподавателей и организаторов курса за проделанную работу.</div></div><div class="swiper-slide sc-h3yero-0 gQNEkq"><div class="sc-h3yero-2 dOvyBf"><div class="sc-h3yero-3 keJcdl"><div size="88" class="sc-i28ik1-0 gsweRb"><div class="sc-i28ik1-1 gNVXtU"><svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg"><rect y="0.405762" width="88" height="87.5945" rx="43.7972" fill="url(#LessonSlugReviewsDefaultAvatar)"></rect><path fill-rule="evenodd" clip-rule="evenodd" d="M57.3454 32.1294C57.3454 39.5331 51.4091 45.4697 44.0002 45.4697C36.5937 45.4697 30.6549 39.5331 30.6549 32.1294C30.6549 24.7256 36.5937 18.7915 44.0002 18.7915C51.4091 18.7915 57.3454 24.7256 57.3454 32.1294ZM44.0002 69.2082C33.0657 69.2082 23.8335 67.431 23.8335 60.5742C23.8335 53.715 33.1237 52.0008 44.0002 52.0008C54.9371 52.0008 64.1668 53.778 64.1668 60.6347C64.1668 67.494 54.8766 69.2082 44.0002 69.2082Z" fill="white"></path><defs><linearGradient id="LessonSlugReviewsDefaultAvatar" x1="7.1381" y1="28.6163" x2="82.5726" y2="41.5112" gradientUnits="userSpaceOnUse"><stop stop-color="#0A4489"></stop><stop offset="1" stop-color="#00316B"></stop></linearGradient></defs></svg></div></div></div><div class="sc-h3yero-5 dYfXnT"><p class="sc-1x9oq14-0 sc-h3yero-1 enpOeQ kaQYTv">Иван Шеломов</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">13.05.2021</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">До обучения необходимо было разработать программу перештабелирования досок на деревообрабатывающем производстве. И если с работой по программированию "железа" (ПЛК) вопросов не было, то по программе учёта объемов, кол-ва пакетов, поставщиков и т.п возникли вопросы, т.к. стандартной SCADA - системой тут было не обойтись, да и бюджет был ограничен.
Выбор пал на c#, т.к. поискав в интернете, обнаружил библиотеки обмена данными с ПЛК именно на С#. И я решил пойти на курс.
Курс понравился продолжительностью и плотностью. Как новичку было тяжеловато. Приходилось с нуля знакомиться с темами, которые по умолчанию подразумевались всем известными. Но мне понравилось. В итоге:
Для меня примерно 90% затрагиваемых тем оказались в новинку. Кругозор свой существенно увеличил.
Сделал проект и им сейчас пользуются на производстве. Я горжусь этим
Я бы рекомендовал этот курс каждому веб программисту вне зависимости от его квалификации.</div></div></div></div></div><div color="#005ECE" class="sc-1bkbgbz-6 fIA-dgx"><button color="#005ECE" class="sc-1bkbgbz-2 sc-1bkbgbz-4 jNiVJq biZjNh"><div class="sc-1bqzqc9-0"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button><div class="sc-1bkbgbz-5 hGKrlu"></div><button color="#005ECE" class="sc-1bkbgbz-2 sc-1bkbgbz-3 jNiVJq iPzpLW"><div class="sc-1bqzqc9-0 dzJeEt"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button></div></div></div></div><div class="sc-x072mc-0 sc-1r62a6q-0 hOtCic lliDuJ"><h2 class="sc-1x9oq14-0 sc-1r62a6q-1 bTMeHF llFwsA">Подтверждение знаний и навыков</h2><div class="sc-1x9oq14-0 sc-1r62a6q-2 fPZiIk dtnelf"><div>OTUS осуществляет лицензированную образовательную деятельность. Вы получите сертификат о прохождении обучения, а также можете получить удостоверение о повышении квалификации.</div></div><div class="sc-1r62a6q-3 eNyjzK"><div class="sc-1oz275d-0 ddfkAs"><div class="sc-1bkbgbz-0 giOpNO swiper-ui sc-1oz275d-3 hXVWHD"><div class="sc-1oz275d-2 cmjKRy sc-1bkbgbz-1 ehnata"><div class="swiper"><div class="swiper-wrapper"><div class="swiper-slide"><img src="/_next/static/images/img/otus-certificate-832bf0e82aba1cde68e7417b12683728.png" class="sc-1oz275d-1 dCggDS"/></div><div class="swiper-slide"><img src="/_next/static/images/img/upk-diploma-d6bca6c33b9795bec7d04fb91a431230.png" class="sc-1oz275d-1 dCggDS"/></div></div></div></div><div color="#005ECE" class="sc-1bkbgbz-6 fIA-dgx"><button color="#005ECE" class="sc-1bkbgbz-2 sc-1bkbgbz-4 jNiVJq biZjNh"><div class="sc-1bqzqc9-0"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button><div class="sc-1bkbgbz-5 hGKrlu"></div><button color="#005ECE" class="sc-1bkbgbz-2 sc-1bkbgbz-3 jNiVJq iPzpLW"><div class="sc-1bqzqc9-0 dzJeEt"><div size="28" class="sc-i28ik1-0 cvcsLz"><div class="sc-i28ik1-1 gNVXtU"><svg width="28" height="28" viewBox="0 0 28 28" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M3.57771 12.2111C2.10361 12.9482 2.10361 15.0518 3.57771 15.7889L25.1056 26.5528C26.4354 27.2177 28 26.2507 28 24.7639L28 3.23607C28 1.7493 26.4354 0.782312 25.1056 1.44721L3.57771 12.2111Z" fill="currentColor"></path></svg></div></div></div></button></div></div></div><div class="sc-1r62a6q-4 cOojXt"><h3>После обучения вы:</h3>
<ul>
<li class="list_item">
<p class="">Удостоверение о повышении квалификации: если вы успешно защитили выпускной проект и готовы предоставить копию документа о высшем или среднем профессиональном образовании</p>
</li>
<li class="list_item">
<p class="">Доступ к учебным материалам курса</p>
</li>
<li class="list_item">
<p class="">Ваш личный проект, который поможет проходить собеседования</p>
</li>
</ul></div></div></div><div class="sc-x072mc-0 sc-1mszhjn-0 hOtCic irTCnx"><h2 class="sc-1x9oq14-0 sc-1mszhjn-1 kswXpy kPNZqQ">Частые вопросы</h2><div class="sc-tqrjzo-0 doKOqQ"><div class="sc-li015i-2 jbRzwu sc-tqrjzo-1 htYSLI" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Что, если в середине курса я не смогу продолжать обучение?</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS">У Вас есть право одного бесплатного трансфера в другую группу.</div></div></div></div><div class="sc-li015i-2 jbRzwu sc-tqrjzo-1 htYSLI" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Обязательно ли защищать выпускной проект?</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS">Для получения сертификата Отус необходимо сдать проект. Необязательно защищать проект перед аудиторией, можно это сделать в чате с преподавателем</div></div></div></div><div class="sc-li015i-2 jbRzwu sc-tqrjzo-1 htYSLI" color="#005ECE"><div class="sc-li015i-0 hdRZtB"><h5 class="sc-1x9oq14-0 sc-li015i-1 fPZiIk bqYpKB">Я могу вернуть деньги?</h5><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl sc-li015i-3 dbNuvG"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.0001 22C6.48012 22 2.00012 17.51 2.00012 12C2.00012 6.48 6.48012 2 12.0001 2C17.5101 2 22.0001 6.48 22.0001 12C22.0001 17.51 17.5101 22 12.0001 22ZM16.0001 10.02C15.7001 9.73 15.2301 9.73 14.9401 10.03L12.0001 12.98L9.06012 10.03C8.77012 9.73 8.29012 9.73 8.00012 10.02C7.70012 10.32 7.70012 10.79 8.00012 11.08L11.4701 14.57C11.6101 14.71 11.8001 14.79 12.0001 14.79C12.2001 14.79 12.3901 14.71 12.5301 14.57L16.0001 11.08C16.1501 10.94 16.2201 10.75 16.2201 10.56C16.2201 10.36 16.1501 10.17 16.0001 10.02Z" fill="currentColor"></path></svg></div><div style="height:0" class="sc-ptxdl6-1 kyVtIH"><div class="sc-ptxdl6-2 kVdrfk"><div class="sc-1x9oq14-0 sc-ptxdl6-0 doSDez ciEuHS">Да, при необходимости Вы сможете сделать возврат пропорционально оставшимся месяцам обучения.</div></div></div></div></div></div></div></main><!--$--><footer class="sc-oy98rf-0 jliiMx"><div class="sc-oy98rf-2 bLWaqJ sc-1ddwpfq-1 hnlXxp sc-oy98rf-3 fMEenG"><div class="sc-oy98rf-1 jDvWdq sc-1ddwpfq-0 jPkREO"></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-x072mc-0 hOtCic"><!--$--><div class="sc-176eli6-0 kVOlcO"><div class="sc-176eli6-1 bIqTVy"><div class="sc-s8yol2-0 dmOCHb"><div class="sc-s8yol2-1 sc-s8yol2-2 fSkxQH jinSfn"><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/about">О нас</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/smi">СМИ о нас</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/reviews">Отзывы</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/contacts">Контакты</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/journal">Блог</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/faq">FAQ</a></div><div class="sc-s8yol2-1 sc-s8yol2-3 fSkxQH nSSml"><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/b2b">Корпоративное обучение</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/lessons">Каталог курсов</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/about/loyalty">Программы лояльности</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/professions">Каталог профессий</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/employers/all">Наши партнеры</a><a class="sc-1x9oq14-0-Component sc-s8yol2-4 eibrwt dopIUT" href="/teach">Стать преподавателем</a></div></div><div class="sc-15qczmr-0 MecOH"><div class="sc-15qczmr-1 dpoRMu"><a target="_blank" rel="nofollow noopener" href="https://vk.com/club145052891" src="/_next/static/images/img/footerUivk-1a499178c819de0f4161a07172b27f6b.svg" class="sc-15qczmr-2 jKMwie"></a><a target="_blank" rel="nofollow noopener" href="https://www.youtube.com/channel/UCetgtvy93o3i3CvyGXKFU3g" src="/_next/static/images/img/footerUiyt-84e5fa7c2e582191762486a7be2c2652.svg" class="sc-15qczmr-2 eFVTJV"></a><a target="_blank" rel="nofollow noopener" href="https://zen.yandex.ru/id/5bbcbc1ba5bd5400a990e7d9" src="/_next/static/images/img/footerUidzen-cfe01a671b9064c8e5d54b2ac5895a0c.png" class="sc-15qczmr-2 hUuIIY"></a></div><div class="sc-15qczmr-3 foluGF"><a target="_blank" rel="nofollow noopener" href="https://t.me/Otusjava" class="sc-15qczmr-4 hMqYlN"><div src="/_next/static/images/img/footerUitg-326baa373419d1a193621a597320c652.svg" class="sc-15qczmr-5 kmPvgJ"></div><div class="sc-1x9oq14-0 sc-15qczmr-6 CWfAH driyCh">Канал в Telegram</div></a><a target="_blank" rel="nofollow noopener" href="https://t.me/joinchat/JMakp0NXc-L8nNneHCtx7A" class="sc-15qczmr-4 hMqYlN"><div src="/_next/static/images/img/footerUitg-326baa373419d1a193621a597320c652.svg" class="sc-15qczmr-5 kmPvgJ"></div><div class="sc-1x9oq14-0 sc-15qczmr-6 CWfAH driyCh">Группа в Telegram</div></a></div></div><div class="sc-176eli6-2 hRGcmY"><section class="sc-des2oc-0 fYuJAI"><div class="sc-1x9oq14-0 sc-des2oc-1 bDRAny hbxrvB">Подписка на новости IT, анонсы открытых уроков, спец. предложения</div><div class="sc-des2oc-2 iHEhCu"><div class="sc-7tecya-1 igoKuA sc-des2oc-3 heMBup"><div class="sc-1uo0fn1-0 chwycb sc-7tecya-2 dUXfnG"><label class="sc-7tecya-3 ewcVbw">Введите Email</label><input placeholder="" class="sc-7tecya-4 bkPfUD" type="text" value=""/></div></div><button class="sc-1qig7zt-0 bYRRHi sc-des2oc-4 dqoHct">OK</button><div class="sc-1x9oq14-0 sc-dusc05-0 doSDez fyzNNQ sc-1x9oq14-0-Component sc-des2oc-5 fvUGfA kSlCOl"><div class="sc-1fry39v-0 eAOVcR" value="true"><div class="sc-12fwr4-0 eZuRED"><input id="1ad2bcd66501685d5dae3412" type="checkbox" class="sc-j40lj7-0 ceClWZ" checked=""/><svg class="sc-hd7keq-0 dWxMps sc-12fwr4-1 exsZZC" xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.26022 12.5541C7.60716 12.2072 8.16964 12.2072 8.51658 12.5541L10.3433 14.3808L15.4311 8.31742C15.7465 7.94157 16.3068 7.89254 16.6827 8.20792C17.0585 8.52329 17.1075 9.08364 16.7921 9.45949L11.1045 16.2377C11.0816 16.2674 11.0565 16.2959 11.0293 16.3232C10.6824 16.6701 10.1199 16.6701 9.77293 16.3232L7.26022 13.8104C6.91329 13.4635 6.91329 12.901 7.26022 12.5541Z" fill="currentColor"></path></svg></div><label for="1ad2bcd66501685d5dae3412" class="sc-1fry39v-1 kMJHVN">Я принимаю условия<!-- --> <a class="sc-1vdp0yy-0 ldwIhb sc-dusc05-1 fgICvQ" href="/legal/privacy" target="_blank">Политики обработки персональных данных</a> <!-- -->и<!-- --> <a class="sc-1vdp0yy-0 ldwIhb sc-dusc05-1 fgICvQ" href="/legal/terms" target="_blank">Пользовательского соглашения</a> <!-- -->и даю свое<!-- --> <a class="sc-1vdp0yy-0 ldwIhb sc-dusc05-1 fgICvQ" href="/legal/lead_privacy_agree" target="_blank">согласие на обработку персональных данных</a></label></div></div></div></section><div class="sc-b223p8-0 jbfvPl"><span class="sc-b223p8-1 kexDMw"><span class="sc-1x9oq14-0 sc-b223p8-2 CWfAH cpJPIb">По всем вопросам<!-- --> <!-- -->пишите на</span> <a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="mailto:help@otus.ru"> <!-- -->help@otus.ru</a></span><a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="/legal/common">Сведения об образовательной организации</a><a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="/legal/it_company_accreditation">OTUS является аккредитованной IT-компанией</a><a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="https://reestr.digital.gov.ru/reestr/2704482/" target="_blank">В реестре отечественного ПО №24216</a><a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="/legal/terms">Условия использования сервиса</a><a class="sc-1x9oq14-0-Component sc-b223p8-3 eibrwt kqoeNm" href="/legal/recommendations">Сведения о рекомендательных технологиях</a></div></div></div><div class="sc-19c5cbt-0 kXtOIJ"><div class="sc-1x9oq14-0 eMZyoN">© 2015-2026 OTUS</div><!--$--><div class="sc-19c5cbt-1 fvpIrL"><div class="sc-1jb0vz0-0 fEJhZn"></div><a target="_blank" rel="noopener noreferrer" href="http://sk.ru/?utm_source=otus" class="sc-1jb0vz0-1 bQKtqJ"></a><a target="_blank" href="https://ktsstudio.com/?utm_source=otus" class="sc-1urziip-1 cPEbNj"><img src="/_next/static/images/img/light-3dd56d782c43dc1e78b7e0da7bb3fb50.svg" alt="KTS Logo" class="sc-ed2fvu-0 sc-1urziip-0 kmquqg fCchjz"/></a></div><!--/$--></div></div><!--/$--></div></div></footer><!--/$--><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--></div><div class="smart-captcha"></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--></div><div id="__PORTAL__"></div><noscript><div><img src="https://mc.yandex.ru/watch/44973232" style="position:absolute;left:-9999px;top:0" alt=""/></div></noscript><noscript><img src="https://vk.com/rtrg?p=VK-RTRG-410987-bLXUv" style="position:fixed;left:-999px" alt=""/></noscript><noscript><div><img src="https://top-fwz1.mail.ru/counter?id=3316675;js=na" style="position:absolute;left:-9999px" alt="Top.Mail.Ru"/></div></noscript><script src="/_next/static/chunks/webpack-3018d93ec30a05b2.js" async=""></script><style data-styled="" data-styled-version="5.3.10"></style><script>(self.__next_f=self.__next_f||[]).push([0]);self.__next_f.push([2,null])</script><script>self.__next_f.push([1,"1:HL[\"/_next/static/css/8cc264f7ea39f5c5.css\",\"style\"]\n2:HL[\"/_next/static/css/369ab862ca923128.css\",\"style\"]\n3:HL[\"/_next/static/css/1eb8edb263c0b31d.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"4:I[69521,[],\"\"]\n6:I[38895,[],\"\"]\n8:I[35725,[],\"\"]\nc:I[63988,[],\"NotFoundBoundary\"]\n17:I[27927,[],\"\"]\n7:[\"slug\",\"asp-net\",\"d\"]\nf:{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/8cc264f7ea39f5c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}\ne:[\"$\",\"link\",\"0\",\"$f\"]\n11:{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/369ab862ca923128.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}\n10:[\"$\",\"link\",\"1\",\"$11\"]\n13:{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1eb8edb263c0b31d.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}\n12:[\"$\",\"link\",\"2\",\"$13\"]\nd:[\"$e\",\"$10\",\"$12\"]\n18:[]\n"])</script><script>self.__next_f.push([1,"0:[\"$\",\"$L4\",null,{\"buildId\":\"NbqG4_TtV1FbFpGan6e4s\",\"assetPrefix\":\"\",\"urlParts\":[\"\",\"lessons\",\"asp-net\"],\"initialTree\":[\"\",{\"structuredData\":[\"children\",{\"children\":[\"lessons\",{\"children\":[[\"slug\",\"asp-net\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]}],\"children\":[\"lessons\",{\"children\":[[\"slug\",\"asp-net\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"structuredData\":[\"children\",{\"children\":[\"lessons\",{\"children\":[[\"slug\",\"asp-net\",\"d\"],{\"children\":[\"__PAGE__\",{},[[\"$undefined\",\"$L5\",null],null],null]},[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"structuredData\",\"children\",\"children\",\"lessons\",\"children\",\"$7\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"structuredData\",\"children\",\"children\",\"lessons\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"structuredData\",\"children\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null],\"children\":[\"lessons\",{\"children\":[[\"slug\",\"asp-net\",\"d\"],{\"children\":[\"__PAGE__\",{},[[\"$L9\",\"$La\",null],null],null]},[[null,\"$Lb\"],null],null]},[null,[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"lessons\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]],null]},[[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/8cc264f7ea39f5c5.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"1\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/369ab862ca923128.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}],[\"$\",\"link\",\"2\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/1eb8edb263c0b31d.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\"}]],[\"$\",\"$Lc\",null,{\"notFound\":[\"$d\",\"$L14\"],\"children\":\"$L15\"}]],null],null],\"couldBeIntercepted\":false,\"initialHead\":[null,\"$L16\"],\"globalErrorComponent\":\"$17\",\"missingSlots\":\"$W18\"}]\n"])</script><script>self.__next_f.push([1,"19:[\"slug\",\"asp-net\",\"d\"]\nb:[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\",\"lessons\",\"children\",\"$19\",\"children\"],\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":\"$undefined\"}]\n"])</script><script>self.__next_f.push([1,"1a:I[58890,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"3242\",\"static/chunks/3242-4559e666a92af915.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"3185\",\"static/chunks/app/layout-37aaf27e992c5aeb.js\"],\"default\"]\n1b:I[49866,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"3242\",\"static/chunks/3242-4559e666a92af915.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"3185\",\"static/chunks/app/layout-37aaf27e992c5aeb.js\"],\"Providers\"]\n1c:I[78444,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"4419\",\"static/chunks/4419-cfc7a5f44d08cc1b.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"5632\",\"static/chunks/5632-5ae1d5cde11086be.js\",\"3118\",\"static/chunks/3118-3c71903ee058260c.js\",\"7670\",\"static/chunks/7670-88498cb7f740ea45.js\",\"5873\",\"static/chunks/5873-a84150cef512c203.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"8212\",\"static/chunks/8212-ad195a1ac639b812.js\",\"428\",\"static/chunks/428-b85ac0b1d8ebbe87.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"9374\",\"static/chunks/9374-dedf9cc8b15c395b."])</script><script>self.__next_f.push([1,"js\",\"4485\",\"static/chunks/4485-9ab23cf29f3d4493.js\",\"4089\",\"static/chunks/4089-38c618b1e8038db2.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"1598\",\"static/chunks/1598-4e9e0a333affae09.js\",\"7234\",\"static/chunks/7234-0a01e49f09a75afe.js\",\"1701\",\"static/chunks/1701-caea77cd580b46da.js\",\"1589\",\"static/chunks/1589-5e9d65a97827bc49.js\",\"8817\",\"static/chunks/8817-f756b1c7094aa889.js\",\"3742\",\"static/chunks/3742-cf316c1014abe42c.js\",\"7624\",\"static/chunks/7624-a0236e3eec1f6b3c.js\",\"5588\",\"static/chunks/5588-acf8559ddd553204.js\",\"1613\",\"static/chunks/1613-9988dde0bcc22cd3.js\",\"7601\",\"static/chunks/app/error-37bbf3f7388748a0.js\"],\"default\"]\n1f:I[17776,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"4419\",\"static/chunks/4419-cfc7a5f44d08cc1b.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"5632\",\"static/chunks/5632-5ae1d5cde11086be.js\",\"3118\",\"static/chunks/3118-3c71903ee058260c.js\",\"7670\",\"static/chunks/7670-88498cb7f740ea45.js\",\"5873\",\"static/chunks/5873-a84150cef512c203.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"8212\",\"static/chunks/8212-ad195a1ac639b812.js\",\"428\",\"static/chunks/428-b85ac0b1d8ebbe87.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"9374\",\"static/chunks/9374-dedf9cc8b15c395b.js\",\"4485\",\"static/chunks/4485-9ab23cf29f3d4493.js\",\"4089\",\"static/chunks/4089-38c618b1e8038db2.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"1598\",\"static/chunks/1598-4e9e0a333affae09.js\",\"7234\",\"static/chunks/7234-0a01e49f09a75afe.js\",\"1701\",\"static/chunks/1701-caea77cd580b46da.js\",\"1589\",\"static/chunks/1589-5e9d65a97827bc49.js\",\"8817\",\"static/chunks/8817-f756b1c7094aa889.js\",\"3742\",\"static/chunks/3742-cf316c1014abe42c.js\",\"7624\",\"static/chunks/7624-a0236e3eec1f6b3c.js\",\"5588\",\"static/chunks/5588-acf8559ddd553204.js\",\"1613\",\"static/chunks/1613-9988dde0bcc22cd3.j"])</script><script>self.__next_f.push([1,"s\",\"9160\",\"static/chunks/app/not-found-6846642e53dd56ba.js\"],\"default\"]\n21:I[27869,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"3242\",\"static/chunks/3242-4559e666a92af915.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"3185\",\"static/chunks/app/layout-37aaf27e992c5aeb.js\"],\"default\"]\n1d:[]\n1e:[]\n20:[]\n"])</script><script>self.__next_f.push([1,"15:[\"$\",\"html\",null,{\"lang\":\"ru\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"charSet\":\"UTF-8\"}],[\"$\",\"meta\",null,{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no, viewport-fit=cover\"}],[\"$\",\"link\",null,{\"rel\":\"image_src\",\"href\":\"/__new_static__/img/meta-image.png\"}],[\"$\",\"link\",null,{\"rel\":\"shortcut icon\",\"type\":\"image/x-icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/_next/static/images/img/owl-flight-5d7d1106ce62f5dd4057eb334384e529.gif\",\"as\":\"image\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"type\":\"image/png\",\"sizes\":\"16x16\",\"href\":\"/_next/static/images/img/favicon-16x16-3dc5220f18624c2a6fd3aa3b081da00a.png\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"type\":\"image/png\",\"sizes\":\"32x32\",\"href\":\"/_next/static/images/img/favicon-32x32-dd124835ecce421e1bb2c8f849e49a3f.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"href\":\"/_next/static/images/img/apple-touch-icon-a4721dddcfb741a7e41d52e619f3820d.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"57x57\",\"href\":\"/_next/static/images/img/apple-touch-icon-57x57-92769d5e197783e63f3bb3c8519c8912.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"60x60\",\"href\":\"/_next/static/images/img/apple-touch-icon-60x60-dfaaf3934bc7ed111c8c306b967afeeb.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"72x72\",\"href\":\"/_next/static/images/img/apple-touch-icon-72x72-693f0d64a225d5f0fe26ba5d088c8f14.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"76x76\",\"href\":\"/_next/static/images/img/apple-touch-icon-76x76-f3487d673c3e7ae975cf190fb758ab10.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"114x114\",\"href\":\"/_next/static/images/img/apple-touch-icon-114x114-98609536fdaa492edede039bdd03cff2.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"120x120\",\"href\":\"/_next/static/images/img/apple-touch-icon-120x120-169d5a3cf2a78fa8e7dfa780f15abcb7.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"144x144\",\"href\":\"/_next/static/images/img/apple-touch-icon-144x144-9b1aa25d8b37e9b97af4717495fd71bf.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"152x152\",\"href\":\"/_next/static/images/img/apple-touch-icon-152x152-e04100124be68d4151efe4eb96227866.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"180x180\",\"href\":\"/_next/static/images/img/apple-touch-icon-180x180-a4721dddcfb741a7e41d52e619f3820d.png\"}],[\"$\",\"link\",null,{\"rel\":\"mask-icon\",\"href\":\"/_next/static/images/img/safari-pinned-tab-9b975a1bbe6e965061daed04a88d48e8.svg\",\"color\":\"#000000\"}],[\"$\",\"meta\",null,{\"name\":\"msapplication-TileColor\",\"content\":\"#ffffff\"}],[\"$\",\"meta\",null,{\"name\":\"msapplication-TileImage\",\"content\":\"/_next/static/images/img/mstile-144x144-c363ac4f42a2d7656bae44c971f5deab.png\"}],[\"$\",\"script\",null,{\"src\":\"https://vk.com/js/api/openapi.js?162\",\"type\":\"text/javascript\"}],[\"$\",\"$L1a\",null,{}]]}],[\"$\",\"body\",null,{\"children\":[[\"$\",\"div\",null,{\"id\":\"__next\",\"children\":[\"$\",\"$L1b\",null,{\"data\":{\"headerStoreInitialData\":{\"categories\":[{\"objectType\":\"category\",\"coursesCount\":117,\"id\":1,\"imageUrl\":\"https://cdn.otus.ru/media/public/df/68/df68cab51573450db618e44501ae4c57.jpg\",\"slug\":\"programming\",\"title\":\"Программирование\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":17,\"id\":12,\"imageUrl\":\"https://cdn.otus.ru/media/public/69/0b/690b6d40c17c484d9130d57eb344260e.png\",\"slug\":\"architecture\",\"title\":\"Архитектура\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":27,\"id\":2,\"imageUrl\":\"https://cdn.otus.ru/media/public/4a/72/4a72106d85b8465c9d744cc0efe28a47.jpg\",\"slug\":\"data-science\",\"title\":\"Data Science\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":58,\"id\":3,\"imageUrl\":\"https://cdn.otus.ru/media/public/5d/74/5d74d97874e84236a8094f3e0246e6a8.jpg\",\"slug\":\"operations\",\"title\":\"Инфраструктура\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":10,\"id\":8,\"imageUrl\":\"https://cdn.otus.ru/media/public/35/df/35dfb4a92fe140f6a1a3839fb8717f97.jpeg\",\"slug\":\"gamedev\",\"title\":\"GameDev\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":15,\"id\":11,\"imageUrl\":\"https://cdn.otus.ru/media/public/c7/7e/c77e523bd935455ab0e0bd0c92c760b6.png\",\"slug\":\"information-security-courses\",\"title\":\"Безопасность\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":46,\"id\":5,\"imageUrl\":\"https://cdn.otus.ru/media/public/84/43/8443c0d256c04ca698665c673afc866c.jpg\",\"slug\":\"marketing-business\",\"title\":\"Управление\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":25,\"id\":9,\"imageUrl\":\"https://cdn.otus.ru/media/public/75/ae/75ae55064f7345e3aab0301a7f42c66e.png\",\"slug\":\"analytics\",\"title\":\"Аналитика и анализ\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":26,\"id\":15,\"imageUrl\":null,\"slug\":\"business-product\",\"title\":\"Бизнес и продукт в IT\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":15,\"id\":16,\"imageUrl\":null,\"slug\":\"import-substitution\",\"title\":\"Импортозамещение\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":12,\"id\":6,\"imageUrl\":\"https://cdn.otus.ru/media/public/f2/fa/f2fa758623834ad1b320efd6cd5166b5.png\",\"slug\":\"testing\",\"title\":\"Тестирование\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":9,\"id\":17,\"imageUrl\":null,\"slug\":\"neural_networks\",\"title\":\"Нейросети\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":19,\"id\":13,\"imageUrl\":null,\"slug\":\"it-bez-programmirovanija\",\"title\":\"IT без программирования\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":27,\"id\":4,\"imageUrl\":\"https://cdn.otus.ru/media/public/2f/ac/2fac7d21d6534f50b383405656782275.jpg\",\"slug\":\"corporate\",\"title\":\"Корпоративные курсы\",\"isShowOnMainPage\":true},{\"objectType\":\"specialization\",\"coursesCount\":13,\"slug\":\"spec\",\"title\":\"Специализации\",\"isShowOnMainPage\":\"$undefined\"},{\"objectType\":\"online\",\"coursesCount\":14,\"slug\":\"online\",\"title\":\"Подготовительные курсы\",\"isShowOnMainPage\":true}]},\"headChunkStoreInitialData\":{\"type\":1,\"data\":{\"html\":\"\u003cdiv class=\\\"before-header-ui\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__ellipse1\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__ellipse2\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__container\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__img before-header-ui__img_sales\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__content\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__title hide-phone\\\"\u003eКурсы по нейросетям со скидкой до 30%\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__title show-phone\\\"\u003eКурсы по нейросетям со скидкой до 30%\u003c/div\u003e\\r\\n \u003c/div\u003e\\r\\n \u003ca href=\\\"https://otus.ru/catalog/courses?categories=neural_networks\u0026utm_source=internal\u0026utm_medium=free\u0026utm_campaign=otus\u0026utm_term=chank\u0026utm_content=sla_sale_20-02-2026-10-04-2026\\\" rel=\\\"nofollow noreferrer noopener\\\" target=\\\"_blank\\\" class=\\\"before-header-ui__button\\\"\u003eВыбрать курс\u003c/a\u003e\\r\\n \u003c/div\u003e\\r\\n\u003c/div\u003e\",\"id\":425,\"namespace\":null,\"key\":\"before-header-ui\",\"title\":\"Скидки на курсы по нейросетям\",\"include_paths\":null,\"exclude_paths\":null}}},\"children\":[[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"structuredData\",\"segmentPath\":[\"structuredData\"],\"error\":\"$1c\",\"errorStyles\":[],\"errorScripts\":[],\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":\"$undefined\",\"notFoundStyles\":[]}],[\"$\",\"$L6\",null,{\"parallelRouterKey\":\"children\",\"segmentPath\":[\"children\"],\"error\":\"$1c\",\"errorStyles\":\"$1d\",\"errorScripts\":\"$1e\",\"template\":[\"$\",\"$L8\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[\"$\",\"$L1f\",null,{}],\"notFoundStyles\":\"$20\"}],[\"$\",\"$L21\",null,{}]]}]}],[\"$\",\"div\",null,{\"id\":\"__PORTAL__\"}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"div\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://mc.yandex.ru/watch/44973232\",\"style\":{\"position\":\"absolute\",\"left\":\"-9999px\",\"top\":\"0\"},\"alt\":\"\"}]}]}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://vk.com/rtrg?p=VK-RTRG-410987-bLXUv\",\"style\":{\"position\":\"fixed\",\"left\":\"-999px\"},\"alt\":\"\"}]}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"div\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://top-fwz1.mail.ru/counter?id=3316675;js=na\",\"style\":{\"position\":\"absolute\",\"left\":\"-9999px\"},\"alt\":\"Top.Mail.Ru\"}]}]}]]}]]}]\n"])</script><style data-styled="" data-styled-version="5.3.10"></style><script>self.__next_f.push([1,"16:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС\"}],[\"$\",\"link\",\"4\",{\"rel\":\"manifest\",\"href\":\"/site.webmanifest\",\"crossOrigin\":\"use-credentials\"}],[\"$\",\"meta\",\"5\",{\"name\":\"is_app_seo_default\",\"content\":\"false\"}],[\"$\",\"meta\",\"6\",{\"name\":\"vk:image\",\"content\":\"/__new_static__/img/meta-image.png\"}],[\"$\",\"meta\",\"7\",{\"name\":\"fb:app_id\",\"content\":\"486413851704844\"}],[\"$\",\"link\",\"8\",{\"rel\":\"canonical\",\"href\":\"https://otus.ru/lessons/asp-net/\"}],[\"$\",\"meta\",\"9\",{\"name\":\"yandex-verification\",\"content\":\"3019a35aeda6b45d\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:title\",\"content\":\"Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:description\",\"content\":\"Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:url\",\"content\":\"https://otus.ru/lessons/asp-net/\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"Курс «C# ASP.NET Core разработчик»: обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"Онлайн-курс по C# ASP.NET Core разработке. Курс для Си Шарп разработчиков с опытом, кто хочет улучшить свои навыки в создании web-приложений и стать fullstack-специалистом. Записаться на курс «C# ASP.NET Core разработчик» на сайте ОТУС\"}]]\n"])</script><script>self.__next_f.push([1,"9:null\n"])</script><script>self.__next_f.push([1,"14:[\"$\",\"html\",null,{\"lang\":\"ru\",\"children\":[[\"$\",\"head\",null,{\"children\":[[\"$\",\"meta\",null,{\"charSet\":\"UTF-8\"}],[\"$\",\"meta\",null,{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no, viewport-fit=cover\"}],[\"$\",\"link\",null,{\"rel\":\"image_src\",\"href\":\"/__new_static__/img/meta-image.png\"}],[\"$\",\"link\",null,{\"rel\":\"shortcut icon\",\"type\":\"image/x-icon\",\"href\":\"/favicon.ico\"}],[\"$\",\"link\",null,{\"rel\":\"preload\",\"href\":\"/_next/static/images/img/owl-flight-5d7d1106ce62f5dd4057eb334384e529.gif\",\"as\":\"image\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"type\":\"image/png\",\"sizes\":\"16x16\",\"href\":\"/_next/static/images/img/favicon-16x16-3dc5220f18624c2a6fd3aa3b081da00a.png\"}],[\"$\",\"link\",null,{\"rel\":\"icon\",\"type\":\"image/png\",\"sizes\":\"32x32\",\"href\":\"/_next/static/images/img/favicon-32x32-dd124835ecce421e1bb2c8f849e49a3f.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"href\":\"/_next/static/images/img/apple-touch-icon-a4721dddcfb741a7e41d52e619f3820d.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"57x57\",\"href\":\"/_next/static/images/img/apple-touch-icon-57x57-92769d5e197783e63f3bb3c8519c8912.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"60x60\",\"href\":\"/_next/static/images/img/apple-touch-icon-60x60-dfaaf3934bc7ed111c8c306b967afeeb.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"72x72\",\"href\":\"/_next/static/images/img/apple-touch-icon-72x72-693f0d64a225d5f0fe26ba5d088c8f14.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"76x76\",\"href\":\"/_next/static/images/img/apple-touch-icon-76x76-f3487d673c3e7ae975cf190fb758ab10.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"114x114\",\"href\":\"/_next/static/images/img/apple-touch-icon-114x114-98609536fdaa492edede039bdd03cff2.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"120x120\",\"href\":\"/_next/static/images/img/apple-touch-icon-120x120-169d5a3cf2a78fa8e7dfa780f15abcb7.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"144x144\",\"href\":\"/_next/static/images/img/apple-touch-icon-144x144-9b1aa25d8b37e9b97af4717495fd71bf.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"152x152\",\"href\":\"/_next/static/images/img/apple-touch-icon-152x152-e04100124be68d4151efe4eb96227866.png\"}],[\"$\",\"link\",null,{\"rel\":\"apple-touch-icon\",\"sizes\":\"180x180\",\"href\":\"/_next/static/images/img/apple-touch-icon-180x180-a4721dddcfb741a7e41d52e619f3820d.png\"}],[\"$\",\"link\",null,{\"rel\":\"mask-icon\",\"href\":\"/_next/static/images/img/safari-pinned-tab-9b975a1bbe6e965061daed04a88d48e8.svg\",\"color\":\"#000000\"}],[\"$\",\"meta\",null,{\"name\":\"msapplication-TileColor\",\"content\":\"#ffffff\"}],[\"$\",\"meta\",null,{\"name\":\"msapplication-TileImage\",\"content\":\"/_next/static/images/img/mstile-144x144-c363ac4f42a2d7656bae44c971f5deab.png\"}],[\"$\",\"script\",null,{\"src\":\"https://vk.com/js/api/openapi.js?162\",\"type\":\"text/javascript\"}],[\"$\",\"$L1a\",null,{}]]}],[\"$\",\"body\",null,{\"children\":[[\"$\",\"div\",null,{\"id\":\"__next\",\"children\":[\"$\",\"$L1b\",null,{\"data\":{\"headerStoreInitialData\":{\"categories\":[{\"objectType\":\"category\",\"coursesCount\":117,\"id\":1,\"imageUrl\":\"https://cdn.otus.ru/media/public/df/68/df68cab51573450db618e44501ae4c57.jpg\",\"slug\":\"programming\",\"title\":\"Программирование\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":17,\"id\":12,\"imageUrl\":\"https://cdn.otus.ru/media/public/69/0b/690b6d40c17c484d9130d57eb344260e.png\",\"slug\":\"architecture\",\"title\":\"Архитектура\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":27,\"id\":2,\"imageUrl\":\"https://cdn.otus.ru/media/public/4a/72/4a72106d85b8465c9d744cc0efe28a47.jpg\",\"slug\":\"data-science\",\"title\":\"Data Science\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":58,\"id\":3,\"imageUrl\":\"https://cdn.otus.ru/media/public/5d/74/5d74d97874e84236a8094f3e0246e6a8.jpg\",\"slug\":\"operations\",\"title\":\"Инфраструктура\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":10,\"id\":8,\"imageUrl\":\"https://cdn.otus.ru/media/public/35/df/35dfb4a92fe140f6a1a3839fb8717f97.jpeg\",\"slug\":\"gamedev\",\"title\":\"GameDev\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":15,\"id\":11,\"imageUrl\":\"https://cdn.otus.ru/media/public/c7/7e/c77e523bd935455ab0e0bd0c92c760b6.png\",\"slug\":\"information-security-courses\",\"title\":\"Безопасность\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":46,\"id\":5,\"imageUrl\":\"https://cdn.otus.ru/media/public/84/43/8443c0d256c04ca698665c673afc866c.jpg\",\"slug\":\"marketing-business\",\"title\":\"Управление\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":25,\"id\":9,\"imageUrl\":\"https://cdn.otus.ru/media/public/75/ae/75ae55064f7345e3aab0301a7f42c66e.png\",\"slug\":\"analytics\",\"title\":\"Аналитика и анализ\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":26,\"id\":15,\"imageUrl\":null,\"slug\":\"business-product\",\"title\":\"Бизнес и продукт в IT\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":15,\"id\":16,\"imageUrl\":null,\"slug\":\"import-substitution\",\"title\":\"Импортозамещение\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":12,\"id\":6,\"imageUrl\":\"https://cdn.otus.ru/media/public/f2/fa/f2fa758623834ad1b320efd6cd5166b5.png\",\"slug\":\"testing\",\"title\":\"Тестирование\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":9,\"id\":17,\"imageUrl\":null,\"slug\":\"neural_networks\",\"title\":\"Нейросети\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":19,\"id\":13,\"imageUrl\":null,\"slug\":\"it-bez-programmirovanija\",\"title\":\"IT без программирования\",\"isShowOnMainPage\":true},{\"objectType\":\"category\",\"coursesCount\":27,\"id\":4,\"imageUrl\":\"https://cdn.otus.ru/media/public/2f/ac/2fac7d21d6534f50b383405656782275.jpg\",\"slug\":\"corporate\",\"title\":\"Корпоративные курсы\",\"isShowOnMainPage\":true},{\"objectType\":\"specialization\",\"coursesCount\":13,\"slug\":\"spec\",\"title\":\"Специализации\",\"isShowOnMainPage\":\"$undefined\"},{\"objectType\":\"online\",\"coursesCount\":14,\"slug\":\"online\",\"title\":\"Подготовительные курсы\",\"isShowOnMainPage\":true}]},\"headChunkStoreInitialData\":{\"type\":1,\"data\":{\"html\":\"\u003cdiv class=\\\"before-header-ui\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__ellipse1\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__ellipse2\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__container\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__img before-header-ui__img_sales\\\"\u003e\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__content\\\"\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__title hide-phone\\\"\u003eКурсы по нейросетям со скидкой до 30%\u003c/div\u003e\\r\\n \u003cdiv class=\\\"before-header-ui__title show-phone\\\"\u003eКурсы по нейросетям со скидкой до 30%\u003c/div\u003e\\r\\n \u003c/div\u003e\\r\\n \u003ca href=\\\"https://otus.ru/catalog/courses?categories=neural_networks\u0026utm_source=internal\u0026utm_medium=free\u0026utm_campaign=otus\u0026utm_term=chank\u0026utm_content=sla_sale_20-02-2026-10-04-2026\\\" rel=\\\"nofollow noreferrer noopener\\\" target=\\\"_blank\\\" class=\\\"before-header-ui__button\\\"\u003eВыбрать курс\u003c/a\u003e\\r\\n \u003c/div\u003e\\r\\n\u003c/div\u003e\",\"id\":425,\"namespace\":null,\"key\":\"before-header-ui\",\"title\":\"Скидки на курсы по нейросетям\",\"include_paths\":null,\"exclude_paths\":null}}},\"children\":[\"$undefined\",[\"$20\",[\"$\",\"$L1f\",null,{}]],[\"$\",\"$L21\",null,{}]]}]}],[\"$\",\"div\",null,{\"id\":\"__PORTAL__\"}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"div\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://mc.yandex.ru/watch/44973232\",\"style\":{\"position\":\"absolute\",\"left\":\"-9999px\",\"top\":\"0\"},\"alt\":\"\"}]}]}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://vk.com/rtrg?p=VK-RTRG-410987-bLXUv\",\"style\":{\"position\":\"fixed\",\"left\":\"-999px\"},\"alt\":\"\"}]}],[\"$\",\"noscript\",null,{\"children\":[\"$\",\"div\",null,{\"children\":[\"$\",\"img\",null,{\"src\":\"https://top-fwz1.mail.ru/counter?id=3316675;js=na\",\"style\":{\"position\":\"absolute\",\"left\":\"-9999px\"},\"alt\":\"Top.Mail.Ru\"}]}]}]]}]]}]\n"])</script><script>self.__next_f.push([1,"5:[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"{\\n \\\"@context\\\": \\\"https://schema.org\\\",\\n \\\"@type\\\": \\\"Organization\\\",\\n \\\"name\\\": \\\"Otus\\\",\\n \\\"url\\\": \\\"https://otus.ru\\\",\\n \\\"logo\\\": \\\"https://otus.ru/__new_static__/img/meta-image.png\\\",\\n \\\"sameAs\\\": [\\n \\\"https://vk.com/otusru\\\",\\n \\\"https://t.me/Otusjava\\\"\\n ]\\n}\"}}]\n"])</script><script>self.__next_f.push([1,"22:I[20056,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"4419\",\"static/chunks/4419-cfc7a5f44d08cc1b.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"5632\",\"static/chunks/5632-5ae1d5cde11086be.js\",\"3118\",\"static/chunks/3118-3c71903ee058260c.js\",\"7670\",\"static/chunks/7670-88498cb7f740ea45.js\",\"5873\",\"static/chunks/5873-a84150cef512c203.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chunks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"8212\",\"static/chunks/8212-ad195a1ac639b812.js\",\"428\",\"static/chunks/428-b85ac0b1d8ebbe87.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"9374\",\"static/chunks/9374-dedf9cc8b15c395b.js\",\"5408\",\"static/chunks/5408-7304a011593a4e7b.js\",\"4485\",\"static/chunks/4485-9ab23cf29f3d4493.js\",\"4089\",\"static/chunks/4089-38c618b1e8038db2.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"1598\",\"static/chunks/1598-4e9e0a333affae09.js\",\"7234\",\"static/chunks/7234-0a01e49f09a75afe.js\",\"1589\",\"static/chunks/1589-5e9d65a97827bc49.js\",\"8817\",\"static/chunks/8817-f756b1c7094aa889.js\",\"3742\",\"static/chunks/3742-cf316c1014abe42c.js\",\"7624\",\"static/chunks/7624-a0236e3eec1f6b3c.js\",\"5588\",\"static/chunks/5588-acf8559ddd553204.js\",\"1613\",\"static/chunks/1613-9988dde0bcc22cd3.js\",\"4514\",\"static/chunks/4514-28d343fc6e2d14e0.js\",\"9697\",\"static/chunks/app/lessons/%5Bslug%5D/page-56f47397b9d2307e.js\"],\"Page\"]\n23:I[18927,[\"8330\",\"static/chunks/b57a0ff0-f64b6c8491bc987c.js\",\"7761\",\"static/chunks/7761-f25228226f9fd7b1.js\",\"3260\",\"static/chunks/3260-e663d3aeeb454c53.js\",\"4419\",\"static/chunks/4419-cfc7a5f44d08cc1b.js\",\"7844\",\"static/chunks/7844-5a1706e76e0167fe.js\",\"5632\",\"static/chunks/5632-5ae1d5cde11086be.js\",\"3118\",\"static/chunks/3118-3c71903ee058260c.js\",\"7670\",\"static/chunks/7670-88498cb7f740ea45.js\",\"5873\",\"static/chunks/5873-a84150cef512c203.js\",\"7985\",\"static/chunks/7985-5aa503ef1e488f37.js\",\"8012\",\"static/chu"])</script><script>self.__next_f.push([1,"nks/8012-ba13e2afafa1b32c.js\",\"4944\",\"static/chunks/4944-c0f1c1dc3dd5ddc8.js\",\"8212\",\"static/chunks/8212-ad195a1ac639b812.js\",\"428\",\"static/chunks/428-b85ac0b1d8ebbe87.js\",\"4888\",\"static/chunks/4888-09a084700e30f3b2.js\",\"2633\",\"static/chunks/2633-d7e691d1179a550f.js\",\"9374\",\"static/chunks/9374-dedf9cc8b15c395b.js\",\"5408\",\"static/chunks/5408-7304a011593a4e7b.js\",\"4485\",\"static/chunks/4485-9ab23cf29f3d4493.js\",\"4089\",\"static/chunks/4089-38c618b1e8038db2.js\",\"8308\",\"static/chunks/8308-a718381dbc33cfb4.js\",\"1598\",\"static/chunks/1598-4e9e0a333affae09.js\",\"7234\",\"static/chunks/7234-0a01e49f09a75afe.js\",\"1589\",\"static/chunks/1589-5e9d65a97827bc49.js\",\"8817\",\"static/chunks/8817-f756b1c7094aa889.js\",\"3742\",\"static/chunks/3742-cf316c1014abe42c.js\",\"7624\",\"static/chunks/7624-a0236e3eec1f6b3c.js\",\"5588\",\"static/chunks/5588-acf8559ddd553204.js\",\"1613\",\"static/chunks/1613-9988dde0bcc22cd3.js\",\"4514\",\"static/chunks/4514-28d343fc6e2d14e0.js\",\"9697\",\"static/chunks/app/lessons/%5Bslug%5D/page-56f47397b9d2307e.js\"],\"default\"]\n24:T8f6,"])</script><script>self.__next_f.push([1,"Вы сможете \u003cstrong\u003eсоздавать\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eразличные\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eинформационные\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eсистемы\u003c/strong\u003e\u003cstrong\u003e, \u003c/strong\u003e\u003cstrong\u003eсостоящие\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eиз\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eсайтов\u003c/strong\u003e\u003cstrong\u003e, \u003c/strong\u003e\u003cstrong\u003eмобильных\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eклиентов\u003c/strong\u003e\u003cstrong\u003e, \u003c/strong\u003e\u003cstrong\u003eтелеграмм\u003c/strong\u003e\u003cstrong\u003e-\u003c/strong\u003e\u003cstrong\u003eботов\u003c/strong\u003e\u0026nbsp;и т.д., используя фреймворк C# ASP.NET Core и смежные технологии, такие как ReactJS и другие. Фреймворк позволяет быстро разрабатывать сложный функционал и высоконагруженные системы, требовательные к производительности. Вы научитесь решать задачи бэкенда и фронтенда, а также получите необходимые навыки работы с базами данных, UI, бизнес-логикой, настройками безопасности. \u003cbr /\u003e\n\u003ch3\u003e\u003cstrong\u003e\u003cbr /\u003eВы\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eнаучитесь\u003c/strong\u003e\u003cstrong\u003e:\u003cbr /\u003e\u003cbr /\u003e\u003c/strong\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eСамостоятельно реализовывать веб-приложения на ASP.Net Core\u003c/li\u003e\n\u003cli\u003eСоздавать высоконагруженные API на GraphQL, gRPC и SignalR Core\u003c/li\u003e\n\u003cli\u003eОсвоите JavaScript, познакомитесь с ReactJS и научитесь интегрировать его с ASP.NET Core\u003c/li\u003e\n\u003cli\u003eПокрывать веб-приложения интеграционными и нагрузочными тестами\u003c/li\u003e\n\u003cli\u003eРазворачивать веб-приложения в Docker-контейнерах и в облаках\u003c/li\u003e\n\u003cli\u003eНастраивать CI/CD и использовать Kubernetes\u003c/li\u003e\n\u003cli\u003eРеализовывать микросервисную архитектуру и использовать RabbitMQ\u003c/li\u003e\n\u003cli\u003eУправлять безопасностью и защищаться от хакерских атак\u003c/li\u003e\n\u003c/ul\u003e"])</script><style data-styled="" data-styled-version="5.3.10"></style><script>self.__next_f.push([1,"25:T842,"])</script><script>self.__next_f.push([1,"#### Для всех\n\n1. Написать результат прохождения теста https://testograd.com/test/test-belbina-komandnye-roli/. Также, если у вас нет опыта в JS, приступить к самостоятельному изучению видеокурса \"Javascript-для начинающих разработчиков\". Если у вас нет к нему доступа, пожалуйста, напишите запрос на help@otus.ru. Вам нужно освоить его до начала модуля \"Frontend-технологии\".\n2. Зарегистрироваться на GitHub или аналоге (согласовать с командой что именно вы выбираете) и сделать коммит в общий проект, который создаст Scrum-master, при сдаче ДЗ необходимо приложить ссылку на коммит в репозитории;\n[Если присоединились к курсу после первого занятия, то нужно написать в Telegram руководителю программы Алексею Ягур (@Alex_Yagur) и он определит вас в подходящую команду.]\n3. Написать \"О себе\" в закрытой группе команды, при сдаче ДЗ также приложить скриншот сообщения в Telegram;\n4. Выбрать название для команды;\n5. Выбрать тему для командного проекта;\n6. Написать три способа траты баллов.\n\n#### Для SCRUM-мастеров\n\n7. Создать публичный проект на GitHub или аналоге;\n8. Добавить в корень проекта открытую лицензию (https://opensource.org/licenses/MIT);\n9. Создать доску задач с колонками \"Беклог\", \"В работе\", \"Сделано\";\n10. Наполнить беклог верхнеуровневыми задачами."])</script><script>self.__next_f.push([1,"26:Ta63,"])</script><script>self.__next_f.push([1,"Ссылка на [GitHub](https://github.com/OTUS-NET/ASP.NET/blob/main/Homeworks/02%20%D0%97%D0%BD%D0%B0%D0%BA%D0%BE%D0%BC%D1%81%D1%82%D0%B2%D0%BE%20%D1%81%20%D0%BF%D1%80%D0%BE%D0%B5%D0%BA%D1%82%D0%BE%D0%BC%20%D0%B8%20%D1%80%D0%B5%D0%B0%D0%BB%D0%B8%D0%B7%D0%B0%D1%86%D0%B8%D1%8F%20CRUD-%D0%BE%D0%BF%D0%B5%D1%80%D0%B0%D1%86%D0%B8%D0%B9/Task.md)\n\nПеред выполнением нужно ознакомится с [Правила отправки домашнего задания на проверку](../docs/homework-rules.md)\n\n1. Знакомство с проектом\n - Проект использует .NET 10.0, поэтому нужно убедиться, что у установлен SDK https://dotnet.microsoft.com/en-us/download/dotnet/10.0 \n - Собрать решение PromocodeFactory.sln\n - Запустить проект ProcodeFactory.WebHost\n - Проверить работу методов API через Swagger UI\n2. Добавить метод GetById в EmployeesController\n - Реализовать метод GetById в InMemoryRepository\n - Использовать EmployeeResponse из папки Models\n - Использовать Mapper для получения EmployeeResponse\n - Реализовать метод GetById в EmployeesController\n - Если Employee по Id не найден, то возвращать NotFound\n3. Добавить метод Create в EmployeesController\n - Реализовать метод Add в InMemoryRepository\n - Использовать EmployeeCreateRequest из папки Models\n - Использовать Mapper для получения Employee\n - Если запрос не прошёл валидацию, то возвращать BadRequest\n - Если не найден Role, то возвращать BadRequest\n4. Добавить метод Update в EmployeesController\n - Реализовать метод Update в InMemoryRepository. Возвращать EntityNotFoundException, если не найдена сущность\n - Использовать EmployeeUpdateRequest из папки Models\n - Если Employee по Id не найден, то возвращать NotFound\n - Если запрос не прошёл валидацию, то возвращать BadRequest\n5. Добавить метод Delete в EmployeesController\n - Реализовать метод Delete в InMemoryRepository. Возвращать EntityNotFoundException, если не найдена сущность\n - Если Employee по Id не найден, то возвращать NotFound"])</script><script>self.__next_f.push([1,"27:T855,"])</script><script>self.__next_f.push([1,"Ссылка на [GitHub](https://github.com/OTUS-NET/ASP.NET/blob/main/Homeworks/03%20%D0%9F%D0%BE%D0%B4%D0%BA%D0%BB%D1%8E%D1%87%D0%B5%D0%BD%D0%B8%D0%B5%20%D0%B1%D0%B0%D0%B7%D1%8B%20%D0%B4%D0%B0%D0%BD%D0%BD%D1%8B%D1%85%20%D1%87%D0%B5%D1%80%D0%B5%D0%B7%20Entity%20Framework/Task.md)\n\nПеред выполнением нужно ознакомиться с [Правилами отправки домашнего задания на проверку](../docs/homework-rules.md)\n\n1. Подключение Entity Framework и SQLite\n - Добавить DbSet сущностей в PromoCodeFactoryDbContext\n - Настроить маппинг доменных моделей через OnModelCreating (доменные модели менять нельзя)\n - Добавить ограничения на длину для текстовых полей: FirstName/LastName — 50, Email — 256, Name — 100, Description — 500, Code/ServiceInfo/PartnerName — 100–256\n - Реализовать методы в EfRepository\n - Заменить InMemoryRepository на EfRepository в регистрации сервисов\n2. Реализация контроллера CustomersController\n - Реализовать методы Get, GetById (с Preferences и CustomerPromoCodes), Create, Update, Delete\n3. Реализация контроллера PreferencesController\n - Реализовать метод Get\n4. Реализация контроллера PromoCodesController\n - Реализовать методы Get, GetById, Create (промокод + выдача клиентам с указанным предпочтением), Apply (отметить использование промокода клиентом)\n5. Миграции\n - Создать миграцию InitialCreate\n\n\nДополнительная информация:\n1. Установка EF Core Tools. dotnet tool install --global dotnet-ef\n2. Добавить миграцию. dotnet ef migrations add ИмяМиграции --project PromoCodeFactory.DataAccess --startup-project PromoCodeFactory.WebHost"])</script><script>self.__next_f.push([1,"28:T104c,"])</script><script>self.__next_f.push([1,"В домашнем задании нужно протестировать установку лимитов партнеру.\n\nТесты можно писать в файле SetPartnerPromoCodeLimitAsyncTests в проекте UnitTests.\n\nСделать форк репозитория домашнего задания и реализовать пункты в нем.\n\nНужно протестировать следующие Test Cases для установки партнеру (класс Partner) лимита (класс PartnerLimit) метод SetPartnerPromoCodeLimitAsync в PartnersController):\n\n1. Если партнер не найден, то также нужно выдать ошибку 404;\n2. Если партнер заблокирован, то есть поле IsActive=false в классе Partner, то также нужно выдать ошибку 400;\n3. Если партнеру выставляется лимит, то мы должны обнулить количество промокодов, которые партнер выдал NumberIssuedPromoCodes, если лимит закончился, то количество не обнуляется;\n4. При установке лимита нужно отключить предыдущий лимит;\n5. Лимит должен быть больше 0;\n6. Нужно убедиться, что сохранили новый лимит в базу данных (это нужно проверить Unit-тестом);\n\nЕсли в текущей реализации найдутся ошибки, то их нужно исправить и желательно написать тест, чтобы они больше не повторялись.\n\nТесты должны соответствовать следующим условиям:\n1. Использовать именование: ИмяЕдиницыТестирования_Условие_ОжидаемыйРезультат;\n2. Для Arrange этапа должен использоваться фабричный метод при определении данных;\n3. Для Stub и Mock использовать Moq;\n4. Для создания тестируемого класса, например, PartnersController можно использовать AutoFixture (https://habr.com/ru/post/262435/), чтобы избежать ошибок компиляции при добавлении новых зависимостей в конструктор или также использовать фабричный метод;\n5. Для проверки утверждения в тестах должен использоваться FluentAssertions;\n6. В качестве дополнительного условия тестовые данные должны формироваться с помощью Builder, если не будет использоваться AutoFixture, то Mock и Stub также должны настраиваться через Builder;\n7. В качестве дополнительного условия можно провести рефакторинг PartnersController или только метода SetPartnerPromoCodeLimitAsync на свое усмотрение, может быть ввести дополнительные классы для повышения удобства тестирования и сопровождения, если появятся дополнительные классы и методы, то они тоже должны быть протестированы, принцип расположения тестов в проекте соответствующий тестам в примере (Например, WebHost/Controllers/PartnersControllerTests); Если будет сделан рефакторинг, то при сдаче ДЗ поясните какие классы были введены;\n8. В качестве дополнительного условия можно добавить прогон тестов CI и при сдаче ДЗ прислать ссылку на прогон."])</script><script>self.__next_f.push([1,"29:T1119,"])</script><script>self.__next_f.push([1,"Сделать форк репозитория и реализовать ДЗ в нем.\nНеобходимо подключить NoSql базу данных к одному из микросервисов или распределенный кеш на Redis, на выбор.\n\nMongo\nВ качестве NoSQL базы можно использовать Mongo и перенести туда данные и работу с ними для одного из микросервисов на выбор: модуля Администрирование либо модуля Предложение промокодов клиентам.\nMongo образ нужно будет добавить в docker-compose: image: \"mongo:4.2.3\"\n\nМодуль \"Администрирование\"\n\nВ модуле Администрирование (Otus.Teaching.Pcf.Administration) нужно изменить хранение сущностей Employee и Role в MongoDb, реализовать новый репозиторий для работы с Mongo, плюс обеспечить работу текущих контроллеров с новым хранилищем.\n\nМодуль \"Предложение промокодов клиентам\"\n\nЕсли хочется лучше познакомиться с Mongo, то можно реализовать более сложный функционал из микросервиса Предложение промокодов клиентам (Otus.Teaching.Pcf.GivingToCustomer). Необходимо перенести хранение сущностей в Mongo вместо Postgress и реализовать функционал, приведенный в контроллерах на новом хранилище.\n\nRedis\nЕсли вместо Mongo хочется поработать с Redis, то в Redis кэш можно перенести справочник предпочтений Preference и во всех микросервисах обращаться к этим данным через Redis кэш и интерфейс IDistributedCache.\nТак как предпочтения сейчас нужны в двух микросервисах, то при получении промокода от партнера и при выдаче клиентам выглядит правильным реализовать микросервис со справочной информацией, где сохранять предпочтений в СУБД, а для быстрого доступа использовать распределенный кеш или локальный кеш микросервиса. Тогда сервис справочной информации нужно будет добавить в docker-compose и сделать его сборку в Dockerfile по аналогии с другими сервисами, плюс при получении данных предпочтений в Otus.Teaching.Pcf.GivingToCustomer и Otus.Teaching.Pcf.ReceivingFromPartner вызывать новый микросервис, который будет использовать кеш.\nОднако, для простоты реализации кеш можно добавить только в один из текущих микросервисов и вместо базы получать предпочтения из него.\n\nИнструкция по запуску:\nПроект состоит из трех микросервисов и их баз данных, настройка Posgress баз для них приведена в docker-compose файле в корне репозитория, чтобы запустить только базы данных выполняем команду:\ndocker-compose up promocode-factory-administration-db promocode-factory-receiving-from-partner-db promocode-factory-giving-to-customer-db\nСами сервисы доступны в общем solution: Otus.Teaching.Pcf.sln\nЕсли базы данных запущены, то в Visual Studio или Rider настраиваем запуск нескольких проектов сразу и работаем с API через Swagger, для API в Swagger добавлены примеры данных для вызова и тестирования."])</script><script>self.__next_f.push([1,"2a:Tcb3,"])</script><script>self.__next_f.push([1,"Сделать форк репозитория и реализовать ДЗ в нем.\n\n1. Добавляем RabbitMq в compose.yml файл.\n2. Подключаем RabbitMq в микросервисы Выдача промокода клиенту (Pcf.GivingToCustomer), Администрирование (Pcf.Administration) и по желанию в Получение промокода от партнера (Pcf.ReceivingFromPartner). Можно использовать драйвер RabbitMq для .NET, тогда вероятно нужно будет использовать Hosted Service для прослушивания очереди, также можно использовать MassTransit или NServiceBus.\n3. При получении промокода от партнера в микросервисе Pcf.ReceivingFromPartner в методе ReceivePromoCodeFromPartnerWithPreferenceAsync контроллера PartnersController в конце выполнения сейчас происходят вызовы _givingPromoCodeToCustomerGateway и _administrationGateway, где через HTTPClient изменяются данных в других микросервисах, такой способ является синхронным и при росте нагрузке или отказе одного из сервисов приведет к отказу всей операции.\n4. Для повышения надежности вместо синхронных вызовов нужно отправлять одно событие в RabbitMq, тогда в микросервисах Pcf.Administration и по желанию в Pcf.GivingToCustomer нужно сделать подписку на данное событие и реализовать аналог текущих синхронных операций, вызываемых через API.\n5. Для того, чтобы ту же логику можно было вызвать из консюмера очереди ее надо перенести из контроллера в класс-сервис, который нужно разместить в проекте Core, в контроллере и консюмере очереди надо вызывать метод этого сервиса.\n\n\nИнструкция по запуску:\nПроект состоит из трех микросервисов и их баз данных, настройка Posgress баз для них приведена в docker-compose файле в корне репозитория, чтобы запустить только базы данных выполняем команду:\ndocker-compose up promocode-factory-administration-db promocode-factory-receiving-from-partner-db promocode-factory-giving-to-customer-db\nСами сервисы доступны в общем solution: Pcf.sln\nЕсли базы данных запущены, то в Visual Studio или Rider настраиваем запуск нескольких проектов сразу и работаем с API через Swagger, для API в Swagger добавлены примеры данных для вызова и тестирования."])</script><style data-styled="" data-styled-version="5.3.10"></style><script>self.__next_f.push([1,"2b:T7f9,Team Lead в компании YouDo в Москве.\r\n\r\nПолучил первое высшее образование по специальности «Информационные Системы и Технологии», параллельно работая программистом в Информационно-Вычислительном Центре, председателем факультета в профсоюзе и заместителем председателя в студенческом совете.\r\nПока получал второе высшее образование по специальности «Менеджмент Организации», создал сайт студентов потока, делал сайты на заказ, работал программистом в компании, разрабатывающей сканирующие установки для предприятий лесоперерабатывающей отрасли и старшим лаборантом в Институте Физиологии Коми Научного Центра. В 2013 году отправился покорять Москву, где до YouDo успел поработать в Актион-МЦФЭР, Social Discovery Ventures и Лаборатории Касперского.\r\n\r\nОпыт программирования начинается с 2000 года, который включает в себя 10 лет оплачиваемого опыта работы с C#. Благодаря девизу «Постоянно учиться и расти», помимо двух высших образований, за его плечами большое количество всевозможных курсов и профессиональных переподготовок.\r\n\r\nВ Отус Алексей руководит курсами по направлению С#: \"C# Developer Basic\", \"C# Developer Professional\" и \"C# ASP.NET Core разработчик"])</script><script>self.__next_f.push([1,"\"2c:T7c6,Очень хороший курс , сделан с душой и любовью. Дает много материала, знакомит с основными подходами и технологиями. \r\n\r\nМного разных преподавателей, кто-то хорошо преподносит материал и пошагово разбирает его на примерах (и это просто супер, очень полезно и понятно, легче делать домашку), кто-то дает только общее представление о технологии в формате лекции, но если захочешь, все равно в домашке разберешься (гуглить проще, когда знаешь что гуглить) или задашь все вопросы преподавателю. \r\n\r\nОтдельная часть это командный проект, в нем получается посмотреть как работают изученные технологии более подробно и уже в менее комнатных условиях. Понятно, что уровень знаний у всех людей разный, но в целом у всех команд получились хорошие проекты, много технологий применено, и главное, что у всех разные подходы. Получается, ты сразу же видишь много примеров, как можно или нужно делать в разных условиях. Я проходил курс имея оочень поверхностное представление о всем том, что тут рассказывается, но с командой проще было втянуться, и преподаватели всегда рады помочь. \r\n\r\nОднозначно, рекомендасьен!2e:{\"start\":\"#0A4489\",\"stop\":\"#00316B\"}\n2d:{\"grad"])</script><script>self.__next_f.push([1,"ient\":\"$2e\",\"secondColor\":\"#005ECE\",\"textIsBlack\":false}\n"])</script><script>self.__next_f.push([1,"a:[\"$\",\"$L22\",null,{\"hideOverlayBanner\":true,\"withTopPadding\":false,\"theme\":{\"gradient\":{\"start\":\"#0A4489\",\"stop\":\"#00316B\"},\"secondColor\":\"#005ECE\",\"textIsBlack\":false},\"children\":[\"$\",\"$L23\",null,{\"initialData\":{\"course\":{\"id\":144,\"slug\":\"asp-net\",\"title\":\"C# ASP.NET Core разработчик\",\"isSpecialization\":false,\"difficultyLevel\":null,\"partnerLink\":null,\"partnerText\":\"При поддержке\",\"partnerImageUrl\":null,\"partnerHeaderText\":null,\"partnerImageAlt\":\"логотип партнера\",\"category\":{\"title\":\"Программирование\",\"slug\":\"programming\"},\"scheduleGroup\":null,\"headerIconUrl\":\"https://cdn.otus.ru/media/public/07/34/07349e8c6bdf4eb9b0b9b09718a0c57e.svg\",\"headerIconInvtUrl\":\"https://cdn.otus.ru/media/public/82/01/820122b14f1d43d1a56ba5fc2f2b5cf9.svg\",\"employers\":[{\"id\":238,\"title\":\"ООО \\\"Примо РПА\\\"\",\"logoUrl\":\"https://cdn.otus.ru/media/public/fc/11/fc113557264c49d7bac5bdd51ca49652.JPG\"},{\"id\":190,\"title\":\"Ozon Tech\",\"logoUrl\":\"https://cdn.otus.ru/media/public/7a/13/7a13906b56804a5f94d7bbb6e61f69e3.jpg\"},{\"id\":70,\"title\":\"МТС\",\"logoUrl\":\"https://cdn.otus.ru/media/public/1b/33/1b33438b7e4e4570b5b5562fa99eb42d.png\"},{\"id\":146,\"title\":\"ТранскапиталБанк\",\"logoUrl\":\"https://cdn.otus.ru/media/public/20/8f/208ff2da9f884484803b5640705525e4.jpg\"},{\"id\":166,\"title\":\"Navicon\",\"logoUrl\":\"https://cdn.otus.ru/media/public/71/c0/71c02ba9fa734047a4661c68a46df829.png\"},{\"id\":151,\"title\":\"Akvelon\",\"logoUrl\":\"https://cdn.otus.ru/media/public/bf/88/bf8819c8a4ad4d6b8e1cf2763d4eeffd.png\"},{\"id\":177,\"title\":\"IT NOVATION\",\"logoUrl\":\"https://cdn.otus.ru/media/public/a3/72/a37244579b91430fbdf5219acad59615.png\"},{\"id\":149,\"title\":\"eKassir\",\"logoUrl\":\"https://cdn.otus.ru/media/public/79/31/793190d3f9484cffb6f1cf0b057a1bd1.png\"}],\"gaGoalDodWithoutAssessment\":\"asp-net_claim_event_ok\",\"yaGoalDodWithoutAssessment\":\"asp-net_claim_event_ok\",\"isForChildren\":false,\"linkTg\":null,\"linkVk\":null},\"blocks\":[{\"desc\":\"\u003cdiv\u003eСоздайте свое web-приложение и научитесь эффективно работать в Scrum-команде.\u003cspan style=\\\"display: inline-block;\\\"\u003e\u003c/span\u003e\u003c/div\u003e\",\"isSpecialPriceShow\":false,\"isCourseUpdateShow\":false,\"specialPriceText\":\"Специальная цена\",\"specialPriceHelpText\":\"Для прошедших тест - специальная цена.\",\"courseUpdateText\":\"Промокод asp_net_08\",\"courseUpdateHelpText\":\"При оплате этого курса введите в личном кабинете промокод asp_net_08 и получите общую скидку до 15% до 26.08. Действует при полной оплате\",\"id\":5529,\"type\":\"specialization_header\"},{\"desc\":\" \u003ch2\u003e\u003cstrong\u003eДля\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eкого\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eэтот\u003c/strong\u003e\u003cstrong\u003e \u003c/strong\u003e\u003cstrong\u003eкурс\u003c/strong\u003e\u003cstrong\u003e?\u003c/strong\u003e\u003c/h2\u003e\\n\u003cbr /\u003eДля C#-разработчиков с опытом от 2-3 лет, которые хотят углубиться в создание web-приложений, стать fullstack-специалистами.\u003cbr /\u003e\\n\u003ch2\u003e\u003cstrong\u003e\u003cbr /\u003eНеобходимые знания\u003cbr /\u003e\u003cbr /\u003e\u003c/strong\u003e\u003c/h2\u003e\\n\u003cul\u003e\\n\u003cli\u003eопыт разработки на C# от 3 лет;\u003c/li\u003e\\n\u003cli\u003eбазовые знания по HTML и CSS;\u003c/li\u003e\\n\u003cli\u003eпонимание работы .NET и CLR;\u003c/li\u003e\\n\u003cli\u003eопыт работы в VisualStudio или Rider;\u003c/li\u003e\\n\u003cli\u003eнавыки работы с Git.\u003c/li\u003e\\n\u003c/ul\u003e\",\"visitCardLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456250391\",\"visitCardPreviewUrl\":null,\"verticalBanner\":{\"link\":\"https://otus.ru/lessons/asp-net/assessment/?utm_source=internal\u0026utm_medium=free\u0026utm_campaign=asp-net\u0026utm_term=banner\u0026utm_content=cite\",\"imgAlt\":\"Баннер про тест\",\"imgUrl\":\"https://cdn.otus.ru/media/public/0b/61/Banners_C_ASPNET_320x400-475823-0b6110.png\"},\"horizontalBanner\":{\"link\":\"https://otus.ru/lessons/asp-net/assessment/?utm_source=internal\u0026utm_medium=free\u0026utm_campaign=asp-net\u0026utm_term=banner\u0026utm_content=cite\",\"imgAlt\":\"Баннер про тест\",\"imgUrl\":\"https://cdn.otus.ru/media/public/f5/eb/Banners_C_ASPNET_1120x220-475823-f5eb20.png\"},\"id\":5530,\"type\":\"SPECIALIZATION_COURSE_PRESENTATION\"},{\"title\":\"Что вам даст этот курс?\",\"text\":\"$24\",\"sideText\":\"\u003ch3\u003eБонус\u003c/h3\u003e\\n\u003cbr /\u003eВидеокурс\u003cstrong\u003e\u0026nbsp;\u003c/strong\u003e\u003cstrong\u003e\u003ca href=\\\"../../../../../online/online-js/\\\"\u003e\u0026laquo;JavaScript для начинающих\u0026raquo;\u003c/a\u003e\u003c/strong\u003e\u0026nbsp;для самостоятельного прохождения. Эти знания вам понадобятся для освоения Модуля 5, если до этого у вас не было опыта работы с JavaScript.\",\"id\":5531,\"type\":\"SPECIALIZATION_COURSE_GOAL\"},{\"iconUrl\":null,\"title\":\"Процесс обучения\",\"text\":\"\u003cspan\u003eОбучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в телеграм-чате курса, сдача домашних работ и получение обратной связи от преподавателя.\u003c/span\u003e\u003cbr /\u003e\u003cbr /\u003e\u003cspan\u003eВебинары проводятся 2 раза в неделю по 1,5 часа и сохраняются в записи в личном кабинете. Вы можете посмотреть их в любое удобное для вас время.\u003c/span\u003e\u003cbr /\u003e\u003cbr /\u003eВсе практические задания курса делятся на три составляющие:\u0026nbsp;\u003cstrong\u003eперсональные домашние задания, групповая разработка в рамках занятий и итоговая проектная работа\u003c/strong\u003e. На первых занятиях вы объединитесь с другими студентами в команды от 1 до 8 человек для совместной разработки с использованием инструментов Scrum-фреймворка.\u0026nbsp;\",\"id\":5532,\"type\":\"SPECIALIZATION_TEACHING_PROCESS\"},{\"columns\":[{\"imageUrl\":null,\"text\":\"\u003ch3\u003eДополнительные навыки\u003c/h3\u003e\\n\u003cbr /\u003eНаучитесь соблюдать code style и лучше разбираться в архитектуре проекта\"},{\"imageUrl\":null,\"text\":\"\u003ch3\u003eПрактика в Scrum-команде\u003c/h3\u003e\\n\u003cbr /\u003eКомандная работа с с использованием инструментов Scrum-фреймворка\"},{\"imageUrl\":null,\"text\":\"\u003ch3\u003eПроект для портфолио\u003c/h3\u003e\\n\u003cbr /\u003eСерьезный проект в портфолио, с которым вам будет легко произвести впечатление на собеседованиях\"}],\"id\":5533,\"type\":\"textcolumns\"},{\"title\":\"Карьерная поддержка\",\"sliderTitle\":\"Работодатели курса\",\"desc\":\"\",\"advantages\":\"\u003cul\u003e\\n\u003cli\u003e\u003cstrong\u003eРазместите свое резюме в базе OTUS\u003c/strong\u003e и сможете получать приглашения на собеседования от партнеров\u003c/li\u003e\\n\u003cli\u003e\u003cstrong\u003eКарьерные мероприятия в сообществе\u003c/strong\u003e\u003cbr /\u003e\u003cspan\u003eПубличный разбор резюме\u003c/span\u003e\u003cbr /\u003e\u003cspan\u003eПубличное прохождение собеседования и воркшопы\u003c/span\u003e\u003c/li\u003e\\n\u003c/ul\u003e\",\"vacancyDesc\":{\"title\":\"C# Developer / .NET Backend Developer\",\"count\":2500,\"salaryJunior\":100000,\"salaryMiddle\":180000,\"salarySenior\":300000},\"id\":5534,\"type\":\"SPECIALIZATION_EMPLOYMENT\"},{\"header\":\"\u003ch3\u003eФормат обучения\u003c/h3\u003e\",\"columns\":[{\"text\":\"\u003ch3\u003eИнтерактивные вебинары\u003c/h3\u003e\\n\u003cp\u003e\u003cbr /\u003e2 занятия по 2 ак. часа в неделю. Доступ к записям и материалам остается у вас навсегда\u003c/p\u003e\",\"imageUrl\":null},{\"text\":\"\u003ch3\u003eПрактика\u003c/h3\u003e\\n\u003cp\u003e\u003cbr /\u003eДомашние задания + проектная работа, которая усилит ваше портфолио\u003c/p\u003e\",\"imageUrl\":null},{\"text\":\"\u003ch3\u003eАктивное комьюнити\u003c/h3\u003e\\n\u003cp\u003e\u003cbr /\u003eОбщайтесь с преподавателями голосом на вебинарах и в Telegram-чате\u003c/p\u003e\",\"imageUrl\":null}],\"id\":5535,\"type\":\"SPECIALIZATION_EDUCATION_FORMAT\"},{\"id\":5536,\"type\":\"program\",\"program\":{\"data\":{\"id\":3466,\"title\":\"asp-net-2026-02\",\"duration\":156,\"modules\":[{\"id\":20881,\"number\":1,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Введение в ASP.NET Core и WebApi\",\"description\":\"В этом модуле вы узнаете об устройстве ASP.NET Core, контроллерах и работе с двумя базовыми инструментами - DI-контейнеры и Entity Framework Core.\",\"type\":\"common\",\"lessons\":[{\"id\":122042,\"likeDown\":0,\"likeUp\":0,\"description\":\"познакомиться с преподавателями курса;\\nопределиться с персональными целями;\\nобсудить формат Scrum-команд.\",\"title\":\"Вводное занятие в курс // ДЗ\",\"summary\":\"знакомство с командой курса;\\nзнакомство со студентам;\\nцели курса;\\nформат Scrum-команд;\\nкраткий обзор модулей.\",\"likeUser\":null,\"homeworks\":[{\"id\":46517,\"title\":\"Знакомство с курсом\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Сделать первые шаги по разработке командного проекта, а также познакомиться с командой.\",\"likeUser\":null,\"description\":\"$25\"}]},{\"id\":122043,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, что такое ASP.NET Core и какую проблему он решает;\\nрассказать, какие функции и модули есть внутри фреймворка (MVC, Model Binding, Request LifeCycle);\\nиспользовать шаблон для домашних работ:\\nAsp.net Core vs Asp.net 5;\\nRequest LifeCycle.\",\"title\":\"Знакомимся с ASP.NET Core // ДЗ\",\"summary\":\"Asp.net Core в целом;\\nВерхнеуровневый обзор основных функций;\\nAsp.net Core vs Asp.net 5;\\nMVC;\\nRequest LifeCycle;\\nшаблон для домашних работ.\",\"likeUser\":null,\"homeworks\":[{\"id\":46518,\"title\":\"Знакомство с проектом и реализация CRUD-операций\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Познакомиться с проектом домашнего здания и реализовать CRUD методы в контроллере\",\"likeUser\":null,\"description\":\"$26\"}]},{\"id\":122044,\"likeDown\":0,\"likeUp\":0,\"description\":\"конфигурировать запуск приложения;\\nнастраивать маршрутизацию запросов;\\nсоздавать свои Контроллеры и Действия;\\nиспользовать Swagger для описания своего API и генерации клиентов.\",\"title\":\"Конфигурирование приложения, разработка контроллеров и подключение Swagger-а\",\"summary\":\"конфигурирование Startup.cs;\\nкак запускается приложение;\\nмаршрутизация;\\nконтроллеры;\\nswagger.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122047,\"likeDown\":0,\"likeUp\":0,\"description\":\"Цели занятия:\\nизучить основные HTTP-методы (HTTP Verbs) и их применение в веб-разработке;\\nпознакомиться с инструментом Postman для тестирования и отладки HTTP-запросов;\\nнаучиться использовать DevTools браузера для анализа и отладки HTTP-трафика.\\n\",\"title\":\"HTTP Verbs, Postman, DevTools\",\"summary\":\"обзор основных HTTP-методов (GET, POST, PUT, PATCH, DELETE);\\nназначение, применение, примеры использования каждого HTTP-метода;\\nвведение в Postman (назначение и возможности);\\nсоздание и отправка HTTP-запросов в Postman;\\nобзор DevTools браузера и их назначение;\\nиспользование DevTools для отладки веб-приложений.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122045,\"likeDown\":0,\"likeUp\":0,\"description\":\"настроить работу с реляционной БД через EF;\\nобъяснить, что представляет из себя паттерн Репозиторий и паттерн Unit Of Work.\",\"title\":\"Работа с базой данных с помощью Entity Framework Core // ДЗ\",\"summary\":\"EntityFramework Core;\\nкратко о SQLite и подключении в проект;\\nпаттерн Репозиторий.\\nпаттерн Unit Of Work \",\"likeUser\":null,\"homeworks\":[{\"id\":46519,\"title\":\"Подключение базы данных через Entity Framework\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Добавить использование Entity Framework на базе SQLite вместо in-memory хранения данных. Реализовать EfRepository, методы контроллеров для Customer, PromoCode и Preference. Добавить Entity Framework миграции и первоначальное заполнение БД данными.\",\"likeUser\":null,\"description\":\"$27\"}]},{\"id\":122046,\"likeDown\":0,\"likeUp\":0,\"description\":\"изучить основные отличия между популярными фреймворками для тестирования на .NET и посмотреть возможности XUnit;\\nразобраться с шаблонами написания поддерживаемых тестов (AAA, именование, создание тестовых данных через фабричные методы, билдеры и Autofixture);\\nиспользовать Fluent Assertion для написания удобных утверждений в тестах;\\nразобраться, как тестировать контроллеры и почему тесты на состояние бывают предпочтительнее тестов на поведение, поработать с Moq;\\nнаписать несколько Unit-тестов на предложенные сценарии на XUnit.\",\"title\":\"Юнит тестирование: фреймворки и инструменты // ДЗ\",\"summary\":\"xUnit vs Ms test vs NUnit;\\nнаписание тестов на XUnit и обзор его возможностей;\\nAAA-шаблон;\\nпаттерны написания поддерживаемых тестов (как создавать тестовые данные, когда полезен AutoFixture, утверждения на Fluent Assertions и фабричные методы для тестовых данных);\\nименование тестов;\\nтесты на поведение через Moq, тестирование контроллеров и тесты на состояние;\\nпрактическая часть с написанием тестов на предложенные сценарии.\",\"likeUser\":null,\"homeworks\":[{\"id\":46520,\"title\":\"Написать тесты к своему проекту и добавить их прогон в CI\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Задание поможет отработать навыки написания тестов в ASP.NET Core проектах на xUnit.\\n\\nНовые требования:\\n1. Для нормальной работы с партнерами решили добавить в систему список партнеров и вести их активность, также будет сохраняться количество промокодов, которые выдал партнер;\\n2. Приняли решение для части партнеров в ручном порядке продавать подписку на использование API. Для контроля подписки вводим лимиты на выдачу промокодов для партнеров и при попытке выдать промокод будем контролировать лимиты;\\n3. Лимиты будем задавать и отменять через API. Лимиты должны иметь дату создания, окончания и если отменим до даты окончания, то дату отмены, а также количество промокодов в лимите.\",\"likeUser\":null,\"description\":\"$28\"}]}]},{\"id\":20882,\"number\":2,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Разворачивание приложения в облаке \",\"description\":\"Здесь вы познакомитесь с Докером и Kubernetes, самостоятельно создадите докер образ и научитесь настраивать билд-систему, а также разворачивать ваше приложение в облаке. Также, это первый модуль, в котором будет \\\"Ретроспектива и планирование\\\" - занятие, ориентированное на прокачку командного взаимодействия, а также ваших навыков декомпозиции и планирования задач.\",\"type\":\"common\",\"lessons\":[{\"id\":122049,\"likeDown\":0,\"likeUp\":0,\"description\":\"различать способы размещения приложений для ASP.NET Core;\\nназвать различия, плюсы и минусы использования различных web-серверов для ASP.NET Core и конфигурировать их;\\nиспользовать Generic Host и Web Host, писать свои Hosted Service для фоновых задач;\\n\",\"title\":\"Способы размещения приложения, Kestrel, IIS\",\"summary\":\"различия между Generic Host и Web Host, что делает CreateDefaultBuilder;\\nкраткое сравнение с моделью размещения ASP.NET Framework, преимущества ASP.NET Core для контейнеризации в Docker\\nнемного об обобщенной инфраструктуре хостинга, которая позволяет использовать все преимущества ASP.NET Core для консольных приложений, пример реализации HostedService для фоновой задачи или задачи по расписанию;\\nобзор веб-серверов для ASP.NET Core;\\nизучение возможностей Kestrel, как стандартного сервера, для каких случаев его не хватит, например, windows авторизация;\\nIIS и ASP.NET Core IIS Module, как работает размещение в IIS внутри процесса и в качестве внешнего процесса;\\nNGINX в качестве web-сервера для ASP.NET Core, что такое обратный прокси-сервер и зачем нужен, балансировка нагрузки;\\nобзор .NET Aspire\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122048,\"likeDown\":0,\"likeUp\":0,\"description\":\"уверенно участвовать в ретроспективах;\\nпланировать объём работ на будущее.\\n\",\"title\":\"Ретроспектива и планирование\",\"summary\":\"проведение ретроспективы прошедшего спринта;\\nпроведение планирования будущего спринта.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122050,\"likeDown\":0,\"likeUp\":0,\"description\":\"узнать, что такое Docker и зачем нужна контейнеризация приложений;\\nсоставить Dockerfile для ASP.NET Core приложения на основе примера;\\nчитать и понимать содержимое docker-compose файлов;\\nсоставлять docker-compose файлы самостоятельно и настраивать конфигурацию ASP.NET Core сервиса по переменным окружения.\",\"title\":\"Введение в docker, обзор docker compose // ДЗ\",\"summary\":\"почему появилась необходимость в контейнеризации приложений и какие преимущества она дает;\\nчто такое Docker, пример Docker файла для ASP.NET Core сервиса;\\ndocker-compose, как средство описания всей инфраструктуры для приложения;\\nпример настройки Docker-compose файла для ASP.NET Core сервиса и Redis-кеша;\\nиспользование конфигурации ASP.NET Core для работы в контейнере, установка переменных окружения DOTNET_, ASPNETCORE_ из Docker-compose для переопределения настроек конфигурации.\",\"likeUser\":null,\"homeworks\":[{\"id\":46521,\"title\":\"Сделать docker compose file + Настроить CI для своего проекта\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"В этом ДЗ вы сделаете docker compose file + настроите CI для своего проекта\",\"likeUser\":null,\"description\":\"1. Добавляем docker-compose файл, где конфигурируем PostgreSQL БД.\\n2. Добавляем начальную миграцию БД\\n3. Настраиваем сборку на выбранном CI\"}]},{\"id\":122052,\"likeDown\":0,\"likeUp\":0,\"description\":\"узнать, что из себя представляет система оркестрации контейнеров;\\nназвать плюсы и минусы Kubernetes по сравнению с остальными.\",\"title\":\"Использование Kubernetes в качестве системы оркестрации контейнеров\",\"summary\":\"почему оркестрация актуальна, внутренне устройство k8s, взаимодействие компонентов между собой в рамках кластера, основные сущности k8s (pod, deployment, replicaset, stateful set, etc.).\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122051,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, что представляет собой понятие DevOps и зачем нужно;\\nобъяснить, что из себя представляет процесс CI/CD;\\nсформулировать основные инструменты для CI и CD, их отличия;\\nнастроить собственный CI/CD для ASP.NET Core сервиса;\",\"title\":\"DevOps, CI/CD и настройка на практике\",\"summary\":\"кратко о DevOps и почему эта философия стала так востребована;\\nContinious Integration, почему важно не делать долгоживущие ветки, часто делать сборки и прогонять тесты;\\nнебольшой обзор популярных Build-серверов для CI;\\nContionious Delivery и почему важно не только написать код, но также быстро и правильно разместить его на Production, еще раз про преимущества Docker;\\nнебольшой обзор популярных инструментов для Continious Delivery;\\nчем Continious Delivery отличается от Continious Deployment?\\nпример настройки сборки, прогона тестов для ASP.NET Core сервиса и размещения образа в репозитории.\",\"likeUser\":null,\"homeworks\":[]}]},{\"id\":20883,\"number\":3,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Frontend-технологии \",\"description\":\"После этого модуля вы сможете самостоятельно реализовывать клиентский интерфейс, как с помощью Razor, так и на основе React.JS. Также вам будет дано обзорное представление фреймворков в современном фронтенде и различные способы взаимодействия Фронтенд и Бекенд частей.\",\"type\":\"common\",\"lessons\":[{\"id\":122060,\"likeDown\":0,\"likeUp\":0,\"description\":\"познакомиться с webasm;\\nизучить компонентный подход в организации приложения;\\nпознакомиться с Razor;\\nизучить основы Blazor;\\nотличие server side Blazor от client side Blazor.\",\"title\":\"Blazor\",\"summary\":\"краткий обзор webasm;\\nобзор Razor;\\nобзор Blazor.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122056,\"likeDown\":0,\"likeUp\":0,\"description\":\"различать современный JS синтаксис (JS, ES5/ES6/ES8);\\nиспользовать CSS-preprocessors для стилизации;\\nсоздавать JS проект с NPM;\\nполучать данные с AJAX в браузере;\\nрасширять webpack config.\",\"title\":\"Современный фронтенд\",\"summary\":\"JS, ES5/ES6/ES8;\\nNPM, package.json;\\nWebpack;\\nCSS-preprocessors;\\nAJAX;\\n$.ajax/fetch/axios.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122058,\"likeDown\":0,\"likeUp\":0,\"description\":\"провести обзор современных JS-фреймворков;\\nразвернуть react приложение;\\nсделать eject;\\nнаписать разметку компонента на JSX;\\nдобавить валидацию props.\",\"title\":\"Введение в React \",\"summary\":\"компонентный подход;\\nCreate-react-app;\\nJSX;\\nProps.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122057,\"likeDown\":0,\"likeUp\":0,\"description\":\"добавить state к компоненту;\\nсоздать обмен данными parent-child components;\\nрассмотреть очередность и условия вызова lifecycle hooks;\\n\",\"title\":\"React //ДЗ\",\"summary\":\"state;\\nevents;\\ncontext / Render props;\\none-way data flow;\\nlifecycle компонент.\\n\",\"likeUser\":null,\"homeworks\":[{\"id\":46524,\"title\":\"Базовый сетап фронтенд части проекта с React\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Научиться разворачивать фронтенд проекты с npm, webpack, React;\\nРазобраться с настройками webpack;\\nПодключить axios.\",\"likeUser\":null,\"description\":\"1. Создать проект с npm create vite@latest my-app;\\n2. Добавить компонент, делающий запрос к некоторому API\\nНа компоненте кнопка, при нажатии на которую проходит вызов API (например, https://catfact.ninja/facts) и данные от запроса отображаются на форме в отдельной компоненте (например, плашка с зеленым фоном и текстом)\\n\\nЗадача со звездочкой: Кроме обычной компоненты, есть еще и обработка ошибок: если с API пришел код ответа, отличный от 2**, выводить отдельный компонент с красным фоном и текстом ошибки. Отображать только в случае ошибок\\n\"}]},{\"id\":122053,\"likeDown\":0,\"likeUp\":0,\"description\":\"уверенно участвовать в ретроспективах;\\nпланировать объём работ на будущее.\",\"title\":\"Ретроспектива и планирование\",\"summary\":\"проведение ретроспективы прошедшего спринта;\\nпроведение планирования будущего спринта.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122054,\"likeDown\":0,\"likeUp\":0,\"description\":\"добавить многостраничность с React Router;\\nдобавить работу с стейтом через Redux.\\n\",\"title\":\"React Router \u0026 Redux // ДЗ\",\"summary\":\"React Router;\\nRedux;\\nRedux thunks.\",\"likeUser\":null,\"homeworks\":[{\"id\":46522,\"title\":\"Роутинг и управление стейтом с React\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Научиться писать сложный фронтенд с роутингом и управлением стейтом\\nРазобраться с подключением сторонних плагинов и UI компонентов\\n\",\"likeUser\":null,\"description\":\"1. Установить react-router;\\n2. Добавить отдельные компоненты страниц - Login / Register / HomePage / 404;\\n3. Добавить стейт-менеджемент с Redux;\\n4. Найти возможное дублирование кода и применить HOC паттерн.\"}]},{\"id\":122059,\"likeDown\":0,\"likeUp\":0,\"description\":\"знать отличия и использовать современную версию react;\\nкакие есть готовые библиотеки компонентов;\\nкак тестировать react приложения.\",\"title\":\"React хуки и популярные библиотеки\",\"summary\":\"React hooks;\\nCustom hooks;\\nMaterial-UI, React Bootstrap;\\nJest, Testing library.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122055,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, в каких случаях и как разделять фронтовое и бекенд приложения;\\nопределить плюсы и минусы подобного разделения, а также влияния этого на архитектуру приложения в целом и появляющихся особенностей разворачивания и поддержки.\",\"title\":\"Как подружить React.JS с Asp.net Core // ДЗ\",\"summary\":\"разворачивание SPA на отдельном хосте;\\nнастройка CORS;\\nнастройка middleware для разворачивания SPA и Asp.net Core на одном хосте.\",\"likeUser\":null,\"homeworks\":[{\"id\":46523,\"title\":\"Создать проект для React.js и связать с проектом по API\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Развернуть ASP.NET Core и React на одном и отдельном хосте.\",\"likeUser\":null,\"description\":\"Развёртывание на одном хосте:\\n1. Создайте новый проект из шаблона ASP.NET Core Web Application with React.js.\\n2. Убедитесь, что в файле Startup.cs добавлено SPA-middleware.\\n3. Запустите ваш проект и убедитесь что фронтенд и бекенд работают правильно.\\n4. Также можете запустить сборку фронтенда отдельно от процесса сборки бекенда. Для этого используйте метод UseProxyToSpaDevelopmentServer().\\n\\nРазвёртывание на разных хостах:\\n1. Создайте новый бекенд проект из шаблона ASP.NET Core Web Application with API.\\n2. Создайте новый фронтенд проект с помощью vite.\\n3. На бекенде настройте CORS для адреса вашего фронтенд приложения.\\n4. На фронтенде создайте страницу с отображением погоды. Данные о погоде получайте с вашего бекенд приложения.\"}]}]},{\"id\":20884,\"number\":4,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Микросервисная архитектура \",\"description\":\"Вы узнаете, как и когда следует делить монолит на микросервисы, как правильно организовывать взаимодействие микросервисов с базами данных и другими микросервисами.\",\"type\":\"common\",\"lessons\":[{\"id\":122062,\"likeDown\":0,\"likeUp\":0,\"description\":\"отличать монолит от микросервиса;\\nобъяснить, что и в каких случаях лучше использовать;\\nперечислить плюсы и минусы различных способов построения систем.\",\"title\":\"Монолиты и микросервисы: что есть что\",\"summary\":\"зачем разделять монолит на микросервисы;\\nпреимущества микросервисов для масштабирования процесса разработки и нагрузки на систему;\\nвертикальное и горизонтальное масштабирование;\\nStateful и Stateless сервисы;\\nбольшие Stateful сервисы (БД), как основная проблема масштабирования.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122063,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, в каких случаях стоит, а в каких - не стоит разделять систему на более мелкие части;\\nпроводить декомпозицию большой монолитной системы на подсистемы;\\nвыделять микросервисы по функциям и доменам (DDD) системы;\\nпланировать разделение большой системы на подсистемы с помощью шаблонов интеграции приложений.\",\"title\":\"Как превратить монолит в микросервисы // ДЗ\",\"summary\":\"как можно делить монолит: ограниченные контексты и бизнес-процессы;\\nDomain Driven Design, стратегические шаблоны, декомпозиция монолита на ограниченные контексты и модель предметной области, как инструменты правильной декомпозиции бизнес-логики и данных; \\nшаблон Anticorruption Layer;\\nразделение монолита, как задача интеграции;\\nподходы к интеграции систем: обмен файлами, общая база данных, синхронные вызовы и обмен сообщениями.\",\"likeUser\":null,\"homeworks\":[{\"id\":46525,\"title\":\"Выделить часть функционала монолита в микросервис\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Подготовить документ-план распила монолита на микросервисы.\",\"likeUser\":null,\"description\":\"0. Выбрать крупную, известную вам информационную систему, в примере по ссылке https://docs.google.com/spreadsheets/d/1Y-0ExAXsmt-tyQOgjAZv43ReCvMUR5kVcpGN1ppQWGw/edit?usp=sharing представлено Яндекс.Такси. Описать ее назначение и один или несколько ее бизнес процессов\\n1. Определить необходимые микросервисы, и их назначение (должно быть не менее 5)\\n2. Описать взаимодействие сервисов в рамках одного из бизнес-сценариев. Т.е. какой микросервис с кем взаимодействует, какие данные передает, какие ожидает и способ взаимодействия (синхронно (какая технология?) или асинхронно (какая технология?)) Например, при запросе от пользователя нам необходимо:\\n проверить не исключен ли он,\\n затем построить маршрут\\nна основе маршрута у тарификатора получить данные о стоимости\\nи т.д.\\n3. Использовать паттер strangler для одного из микросервисов\"}]},{\"id\":122064,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить различные способы организации согласованности данных в микросервисах;\\nразделять потоки данных между микросервисами через CQRS;\\nаргументировать за и против использования синхронных и асинхронных каналов взаимодействия;\\nиспользовать MassTransit и RabbitMq для реализации асинхронного обмена данными между микросервисами;\\nобъяснить, в каких случаях и как использовать CQRS и Event Sourcing, саги и распределенные транзакции.\\n\",\"title\":\"Работа с данными в микросервисах: Архитектура\",\"summary\":\"почему появляется необходимость дублирования данных;\\nпонятие конечной согласованности данных, ACID свойства транзакции;\\nметоды реализации согласованности данных в микросервисах;\\nасинхронные вызовы для реализации конечной согласованности на примере MassTransit и RabbitMq, почему является более надежной альтернативой, чем синхронные вызовы сервисов; \\nподход CQRS с примером реализации, CQRS/Event Sourcing;\\nчто делать если процесс изменения данных в нескольких сервисах должен быть подконтрольным?\\nраспределенные транзакции, как работают и зачем нужны, почему не являются лучшим вариантом в микросервисах;\\nпаттерн сага, как альтернатива распределенной транзакции и пример реализации на Mass Transit.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122065,\"likeDown\":0,\"likeUp\":0,\"description\":\"- понять, как выбирать между реляционными и NoSQL СУБД в своих проектах;\\n- уметь проектировать оптимальную для хранения в NoSQL СУБД модель данных;\\n- освоить базовые приемы работы с одной из NoSQL СУБД: Redis, MongoDb, или Cassandra(по выбору преподавателя);\",\"title\":\"Работа с данными в микросервисах: Работа с NoSQL // ДЗ\",\"summary\":\"- ACID и BASE\\n- отличия реляционной структуры от агрегатной структуры хранения, паттерн агрегат, как основная единица группировки данных в большинстве NoSql СУБД;\\n- CAP теорема, PACELC\\n- основные подходы к разделению данных в СУБД \\n- шардирование и репликации\\n- обзор основных видов NoSql баз данных: ключ-значение (Redis), документоориентированные (Mongo), семейство столбцов (Cassandra), графоориентированные (Neo4j);\\n- обзор плюсов и минусов различных NoSQL баз и задач, в которых они могут быть полезны;\\n- примеры использования на одной из NoSQL СУБД по выбору преподавателя ( Redis, MongoDb или Cassandra) в ASP.NET Core проекте, использование драйверов для NoSQL СУБД под .NET.\",\"likeUser\":null,\"homeworks\":[{\"id\":46526,\"title\":\"Добавить NoSQL базу в микросервис\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Домашнее задание поможет получить навыки работы с NoSQL базами данных и распределенным кэшем в микросервисном варианте проекта.\",\"likeUser\":null,\"description\":\"$29\"}]},{\"id\":122061,\"likeDown\":0,\"likeUp\":0,\"description\":\"уверенно участвовать в ретроспективах;\\nпланировать объём работ на будущее.\",\"title\":\"Ретроспектива и планирование\",\"summary\":\"проведение ретроспективы прошедшего спринта;\\nпроведение планирования будущего спринта.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122067,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить основную идею реляционных баз данных и необходимость их использования, индексы и уровни изоляции транзакций;\\nиспользовать ADO.NET для работы с базой данных в приложении;\\nиспользовать Dapper для упрощения работы с объектами, используемыми при взаимодействии с базой данных.\",\"title\":\"Работа с данными в микросервисах: Работа с реляционными БД\",\"summary\":\"еще раз про реляционные базы данных на примере PostgreSQL, виды связей и таблицы;\\nкластеризованные и некластеризованные индексы;\\nуровни изоляции транзакций;\\nкак бороться с Deadlock в БД в нагруженных приложениях; \\nкак повысить производительность запросов на чтение и запись, если Entity Framework строит не оптимальные запросы, когда стоит использовать ADO.NET или Dapper;\\nпримеры работы с БД через ADO.NET и Dapper.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122066,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассказать, в чём отличия и сходства популярных брокеров сообщений;\\nсоздавать собственные облачные сервера с настроенным для работы RabbitMQ;\\nписать приложения, использующие облачный сервер RabbitMQ для общения друг с другом.\",\"title\":\"Обзор популярных брокеров сообщений и работа с RabbitMQ // ДЗ\",\"summary\":\"обзор популярных брокеров сообщений;\\nдемонстрация создания сервера RabbitMQ в интернете работы с ним;\\nпрактика работы с облачным RabbitMQ.\",\"likeUser\":null,\"homeworks\":[{\"id\":46527,\"title\":\"Подключить RabbitMQ к своему проекту\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Домашнее задание поможет изучить на практике декомпозицию микросервисов и организацию взаимодействия между ними через RabbitMq.\",\"likeUser\":null,\"description\":\"$2a\"}]},{\"id\":122068,\"likeDown\":0,\"likeUp\":0,\"description\":\"Реализовывать взаимодействие микросервисов через Kafka\\nНастраивать работу с партициями и офсетами в Kafka\",\"title\":\"Kafka\",\"summary\":\"Kafka как реализация pull-модели, ее структура, основные понятия (топик, партиция, офсет, консьюмергруппа и т.д.), принцип работы.\\nНастройка взаимодействия сервисов с кафкой с помощью библиотеки Confluent.Kafka\",\"likeUser\":null,\"homeworks\":[]}]},{\"id\":20885,\"number\":5,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Прокачиваем проект\",\"description\":\"После этого модуля вы сможете легко отделить интеграционное тестирование от нагрузочного, разбираться в последовательности вызовов Middleware, правильно организовывать логи, валидацию данных и кеширование. Приятным бонусом станет детальный разбор различных способов организации API.\",\"type\":\"common\",\"lessons\":[{\"id\":122071,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, как работает конвейер запроса в ASP.NET Core;\\nпроанализировать, в каком порядке вызываются middleware в цикле запрос/ответ;\\nобъяснить, как написать свой middleware и в каком случае это может быть нужно;\\nполучить примеры кастомных middleware для разных задач и разобрать какой-то стандартный middleware из ASP.NET Core.\",\"title\":\"Конвейеры ПО промежуточного слоя (Middleware)\",\"summary\":\"конвейер запрос/ответ ASP.NET Core и его преимущества по сравнению с ASP.NET MVC;\\nпорядок регистрации и вызова middleware;\\nзачем писать свои middleware и почему часто это изящное решение;\\nнаписание своего кода;\\nпримеры кода и задач для своих middleware (общая обработка ошибок в json, передача метрик для Prometheus и т.д.).\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122077,\"likeDown\":0,\"likeUp\":0,\"description\":\"разобраться в том, как устроена аутентификация и авторизация в Asp.Net Core;\\nнаучиться конфигурировать доступ к Api\\n\",\"title\":\"Aутентификация и авторизация в Asp.Net Core\",\"summary\":\"понятия идентификации, аутентификации, авторизации, принцип работы с ними в приложениях;\\nStateless и statefull аутентификация, примеры реализации;\\nреализация аутентификации в Asp.Net Core: добавление и конфигурирование схем, middleware;\\nреализация авторизации в Asp.Net Core: claims, roles, policy, requiremens, аттрибуты авторизации\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122078,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть протоколы OAuth и OIDC;\\nизучить основные сценарии OAuth;\\nпознакомиться с авторизационным сервисом Keycloak, интегрировать его в клиент-серверное приложение\",\"title\":\"Протоколы OAuth, OIDC и их реализация в Keycloak\",\"summary\":\"протоколы OAuth и OIDC, access token и id token;\\nроли Oauth, недостатки сценариев Resource Owner Password и Implicit;\\nсценарии Authorization Code, Refresh Token, PKCE;\\nсценарии Client Credentials, Device Code;\\nавторизационный сервис Keycloak: его разворачивание и интеграция в приложение;\\nработа сценариев Authorization Code, Refresh Token, PKCE в Keycloak;\\nлогин через внешние провайдеры в Keycloak\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122079,\"likeDown\":0,\"likeUp\":0,\"description\":\"ознакомиться с библиотекой управления учетными записями Asp.Net Identity;\\nрассмотреть авторизационный сервис IdentityServer, интегрировать его в клиент-серверное приложение;\\nразобраться с наполнением токенов клеймами\",\"title\":\"Asp.Net Identity и IdentityServer\",\"summary\":\"Asp.Net Identity: модели, контекст, логика;\\nавторизационный сервис IdentityServer: его разворачивание и интеграция в приложение;\\nработа сценариев Authorization Code, Refresh Token, PKCE в IdentityServer;\\nScopes, claims и наполнение токенов;\\nлогин через внешние провайдеры в IdentityServer;\\nпрактическая часть с настройкой IdentityServer и разграничением прав доступа\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122069,\"likeDown\":0,\"likeUp\":0,\"description\":\"уверенно участвовать в ретроспективах;\\nпланировать объём работ на будущее.\",\"title\":\"Ретроспектива и планирование\",\"summary\":\"проведение ретроспективы прошедшего спринта;\\nпроведение планирования будущего спринта.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122073,\"likeDown\":0,\"likeUp\":0,\"description\":\"проанализировать принцип устройства ILogger и уровни логирования;\\nпроанализировать куда можно писать логи в ASP.NET Core и с помощью чего;\\nполучить пример текущих Best Practices для логирования, Pull/Push модели логирования для средств просмотра логов (ELK, GreyLog);\\nнастроить логирование на Serilog.\",\"title\":\"Как устроено логгирование в ASP.NET Core\",\"summary\":\"чем полезно детальное логирование и удобство доступа к логам, особенно, в микросервисах;\\nустройство ILogger;\\nуровни логирования с примерам того какие сообщения писать с разными уровнями;\\nкраткий обзор: куда можно писать логи в ASP.NET Core и с помощью чего (nlog, seq,serilog, log4net);\\nтекущие Best Practices для логирования, как писать логи, чтобы не засорять бизнес-логику, Pull/Push модели логирования;\\nнастройка логирования на Serilog и как удобно форматировать логи;\\nотправление логов в ELK или GrayLog. \",\"likeUser\":null,\"homeworks\":[]},{\"id\":122072,\"likeDown\":0,\"likeUp\":0,\"description\":\"проанализировать, как работает ModelBinding, как и зачем; реализовать свой код и как связан с сериализацией данных;\\nпроанализировать работу со встроенными механизмами валидации модели (атрибутами и устройством model state) и как писать свои атрибуты валидации;\\nнаписать валидатор через Fluent Validation и чем удобна эта библиотека.\",\"title\":\"Различные способы валидации данных\",\"summary\":\"Model binding, как работает внутри и как расширить, причем здесь сериализация;\\nвстроенные механизмы валидации;\\nFluent Validation;\\nпрактика с валидацией на Fluent Validation;\\nвалидация на уровне бизнес-логики и входящей модели, как связать, когда что нужно применять.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122074,\"likeDown\":0,\"likeUp\":0,\"description\":\"сформулировать причины, зачем нужно кеширование и какие данные подходят для кеша, а также получить способы инвалидации кеша;\\nпроанализировать, как устроено кеширование на уровне HTTP, кеш ответов через UseResponseCaching;\\nразобраться, когда достаточно внутреннего кеширования, а когда нужно внешнее;\\nпосмотреть использование IMemoryCache и как масштабировать сервисы с кешем;\\nпосмотреть использование IDistributedCache на примере Redis и сравнение с Memcached.\",\"title\":\"Кеширование: внутреннее и внешнее\",\"summary\":\"когда необходимо кеширование;\\nкеш и инвалидация кеша;\\nпримеры выбора данных подходящих для кеша (справочники, редко меняющиеся данные);\\nкеширование на уровне HTTP и как работать с ним в ASP.NET Core, кеш ответов через UseResponseCaching;\\nвнутреннее и внешнее кеширование, как масштабировать сервисы, использующие кеш;\\nиспользование IMemoryCache и для каких случаев подходит/не подходит;\\nиспользование IDistributedCache на примере Redis и сравнение с Memcached\\nпример реализации выборки данных из БД через декоратор с кешем.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122075,\"likeDown\":0,\"likeUp\":0,\"description\":\"сформулировать подходы к интеграционному тестированию в ASP.NET Core;\\nпосмотреть, как можно тестировать ASP.NET Core через WebApplicationFactory и xUnit;\\nсформировать представление о BDD подходе к тестированию и посмотреть пример тестирования через SpecFlow;\\nпосмотреть, как можно провести нагрузочное тестирования сервиса на ASP.NET.\",\"title\":\"Интеграционное, нагрузочное тестирование\",\"summary\":\"подходы к интеграционному тестированию в ASP.NET Core;\\nпочему такое тестирование очень важно для быстрой разработки;\\nинтеграционные тесты для БД и сторонних сервисов через xUnit;\\nтестирование API, как End-to-end тестирование логики сервиса;\\nкак можно реализовать стандартными средствами ASP.NET Core, WebApplicationFactory и xUnit;\\nобзор BDD подхода к тестированию и разработки, пример тестирования через SpecFlow.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122070,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить, что означает D в аббревиатуре SOLID;\\nиспользовать стандартный DI-контейнер;\\nподключать нестандартный DI-контейнер.\",\"title\":\"Стандартный и нестандартные DI контейнеры: что и когда использовать\",\"summary\":\"вводная про SOLID (DI/IOC);\\nобзор DI-контейнеров для ASP.NET Core\\nпочему стандартного DI может не хватить?\\nкак подключить нестандартный контейнер?\\nкак конфигурировать динамические зависимости?\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122080,\"likeDown\":0,\"likeUp\":0,\"description\":\"Рассмотреть библиотеку MediatR как средство реализации паттерна CQRS, изучить доменные события (Domain Events) и осознать цель их применения. \",\"title\":\"Реализация паттерна CQRS и доменных событий через MediatR\",\"summary\":\"Суть паттерна CQRS;\\nЗнакомство с библиотекой MediatR;\\nРеализация Command и Query при помощи MediatR;\\nРеализация доменного события через MediatR.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122081,\"likeDown\":0,\"likeUp\":0,\"description\":\"Рассмотреть библиотеку Polly в качестве решения задач с политиками обработки ошибок на реальных примерах, рассмотреть и применить интерфейс IHttpClientFactory, рассмотреть библиотеку FluentValidation в качестве решения задачи валидации моделей\",\"title\":\"Настройка гибких политик через Polly, и другие библиотеки, упрощающие разработку\",\"summary\":\"Что такое и зачем нужна Polly;\\nВиды политик;\\nПримеры использования;\\nPolly и DI;\\nPolly и IHttpClientFactory;\\nПреимущества FluentValidation в сравнении с System.ComponentModel.DataAnnotations;\\nПример настройки FluentValidation.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122076,\"likeDown\":0,\"likeUp\":0,\"description\":\"уверенно участвовать в ретроспективах;\\nпланировать объём работ на будущее.\",\"title\":\"Ретроспектива и планирование\",\"summary\":\"проведение ретроспективы прошедшего спринта;\\nпроведение планирования будущего спринта.\",\"likeUser\":null,\"homeworks\":[]}]},{\"id\":20886,\"number\":6,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Работа с API\",\"description\":\"Уроки этого модуля научат вас правильной организации авторизации/аутентификации, разграничению прав доступа и защите от различных хакерских атак.\",\"type\":\"common\",\"lessons\":[{\"id\":122082,\"likeDown\":0,\"likeUp\":0,\"description\":\"получить представление и примеры работы с протоколом Odata и его преимущствах по сравнению с REST на ASP.NET Core.\",\"title\":\"Пишем свой API: OData\",\"summary\":\"обзор протокола Odata, его приемущества и пример использования на ASP.NET Core.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122084,\"likeDown\":0,\"likeUp\":0,\"description\":\"проанализировать, почему появился и как может быть полезен;\\nGraphQl для разработки API;\\nразобрать пример реализации GraphQl Api на ASP.NET Core.\",\"title\":\"Пишем свой API: GraphQL\",\"summary\":\"история появления GraphQL;\\nобласти применения;\\nчто из себя представляет;\\nGraphQL и чем может быть полезен;\\nпример разработки GraphQl API на ASP.NET Core с акцентом на том, какую проблему это помогает решить по сравнению с REST-api.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":122083,\"likeDown\":0,\"likeUp\":0,\"description\":\"провести обзор gRPС протокола и работы с ним из ASP.NET Core на примерах.\",\"title\":\"Пишем свой API: gRPC // ДЗ\",\"summary\":\"обзор gRPC протокола с примером реализации на ASP.NET Core.\",\"likeUser\":null,\"homeworks\":[{\"id\":46528,\"title\":\"Добавить новые инструменты к своему проекту\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Данное задание позволит попробовать технологии альтернативные REST-like подходу для формирования API сервисов.\",\"likeUser\":null,\"description\":\"Реализуйте в уже существующествующем сервисе Customers два любых подхода: gRPC, GraphQL или SignalR; Например, GRPC и GraphQL.\\n\\nВыполнять задание лучше всего в виде пул реквеста к своему основному проекту по домашним заданиям. Если же такового нет, то можете сделать форк репозитория домашнего задания по RabbitMQ и реализовать технологии в нем.\"}]},{\"id\":122085,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить взаимодействие в режиме реального времени через SignalR и Websocket.\",\"title\":\"Пишем свой API: SignalR Core\",\"summary\":\"взаимодействие в режиме реального времени, WebSockets;\\nSignalR как универсальный механизм для работы в режиме реального времени;\\nуведомления клиентов, для каких задач может быть нужно (push уведомления, обновление информации в режиме реального времени);\\nWeb Sockets vs Long Pulling;\\nпример реализации хаба SignalR, вопросы авторизации, версионирования.\",\"likeUser\":null,\"homeworks\":[]}]},{\"id\":20887,\"number\":7,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Проектная работа \",\"description\":\"Заключительный модуль курса посвящен проектной работе. Проект — это отличная возможность объединить все полученные на курсе знания в одной системе.\",\"type\":\"project\",\"lessons\":[{\"id\":122086,\"likeDown\":0,\"likeUp\":0,\"description\":\"получить ответы на вопросы по проекту, ДЗ и по курсу.\",\"title\":\"Консультация по проектам и домашним заданиям\",\"summary\":\"вопросы по улучшению и оптимизации работы над проектом;\\nзатруднения при выполнении ДЗ; \\nвопросы по программе.\",\"likeUser\":null,\"homeworks\":[{\"id\":46529,\"title\":\"Итоговый проект\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"В этом домашнем задании вы продемонстрируете знания и навыки, которые приобрели на курсе.\",\"likeUser\":null,\"description\":\"Шаги и их состав зависят от конкретной темы проектной работы.\\nШаг 1. Общая идея \\nКраткое описание общей идеи\\nШаг 2. Определения и доменная модель\\nОпределения \\nДоменная модель в виде диаграммы\\nШаг 3. Процессы\\nОсновные бизнес-процессы (хотя бы один) в виде текста\\nШаг 4. User story\\nОсновные User story в виде strory map\\nШаг 5. Ограничения и допущения\\nОсновные ограничения и допущения\\nШаг 6. Модель сущностей, или ER\\nER-модель сущностей проекта\\nШаг 7. Проектирование физической архитектуры\\nАрхитектурная диаграмма\\nШаг 8. Написание кода\\nРаботающий код, реализующий функционал проекта\\n\\n\"}]},{\"id\":122087,\"likeDown\":0,\"likeUp\":0,\"description\":\"защитить проект и получить рекомендации экспертов.\",\"title\":\"Защита проектных работ\",\"summary\":\"презентация проектов перед комиссией; вопросы и комментарии по проектам.\",\"likeUser\":null,\"homeworks\":[]}]}]},\"error\":null}},{\"text\":\"\u003ch2\u003eПроектная работа\u003c/h2\u003e\\n\u003cp\u003e\u003cbr\u003eЗадача проекта \u0026mdash; разработать с нуля полнофункциональное ASP.NET Core приложение, распространяемое в виде docker-compose файла, использующее современные frontend-технологии (Razor или React.JS), REST API и Swagger с GraphQL/gRPC/SignalR на выбор, нестандартный DI-контейнер, собственный обработчик промежуточного слоя (Middleware) и работающее с базой данных через EntityFramework Core. Также, должна быть настроена автоматическая сборка CI на GitLab. Тема проекта может быть выбрана самостоятельно.\u003c/p\u003e\",\"imageUrl\":null,\"id\":5538,\"type\":\"SPECIALIZATION_PROJECT_WORK\"},{\"id\":5539,\"type\":\"teachers\",\"teachers\":[{\"id\":10738,\"fullName\":\"Андрей Сорокин\",\"company\":\"FinTech компания\",\"companyRole\":\"Ведущий разработчик C# ASP.NET | Архитектор программного обеспечения\",\"photoUrl\":\"https://cdn.otus.ru/media/public/eb/13/eb13d2ffca3b45adbf61f4b11889f182.png\",\"description\":\"Ведущий разработчик C# ASP.NET | Архитектор программного обеспечения\\r\\n\\r\\nСпециализируется на проектировании и разработке высоконагруженных и отказоустойчивых веб-решений (в основном на стеке .NET) более 15 лет.\\r\\n\\r\\nКлючевая экспертиза:\\r\\n\\r\\nБэкенд-разработка: Глубокое знание экосистемы .NET (C#, .NET 5/6/7/8, .NET Framework 4+).\\r\\n\\r\\nВеб-технологии: ASP.NET Core (MVC, Web API), Entity Framework Core, SignalR.\\r\\n\\r\\nАрхитектура: Паттерны микросервисной архитектуры, Domain-Driven Design (DDD), CQRS, Event Sourcing.\\r\\n\\r\\nБазы данных: SQL Server, Postgres, Redis, опыт с NoSQL-решениями.\\r\\n\\r\\nИнфраструктура: Docker, Kubernetes, AWS, CI/CD (Gitlab CI/CD, GitHub Actions).\\r\\n\\r\\n\\\"Стремлюсь к созданию чистого, поддерживаемого и эффективного кода. Постоянно изучаю новые технологии и инструменты для разработки программного обеспечения\\\".\",\"years\":2,\"lessonsCount\":37,\"studentsCount\":794,\"courses\":[\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\",\"AI для разработчиков\",\"AI-агенты: продвинутое внедрение и использование\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":678,\"fullName\":\"Алексей Ягур\",\"company\":null,\"companyRole\":null,\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\",\"description\":\"$2b\",\"years\":9,\"lessonsCount\":538,\"studentsCount\":4017,\"courses\":[\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer\",\"C# Developer. Basic\",\"C# Developer. Advanced\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":2020,\"fullName\":\"Эдгар Пилипсон\",\"company\":null,\"companyRole\":null,\"photoUrl\":\"https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png\",\"description\":\"Работает c .Net около 10 лет. Начинал с десктопа (WPF), Silverlight. Сейчас основной инструмент - ASP.Net Core, на фронте использую Angular 2+, React.\\r\\n\\r\\nОпыт работы с БД: SQL Server, Postgres. Также доводилось использовать Camunda, RabbitMQ.\\r\\n\\r\\nСертифицирован по MCSD: App Builder, MCSA: SQL 2016 Database Development.\\r\\n\\r\\nОбразование:\\r\\nМосковский Авиационный Институт\\r\\n\\r\\nOtus Sertificated Educator\",\"years\":6,\"lessonsCount\":277,\"studentsCount\":2416,\"courses\":[\"JavaScript Developer. Professional\",\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":9250,\"fullName\":\"Родион Мостовой\",\"company\":null,\"companyRole\":null,\"photoUrl\":\"https://cdn.otus.ru/media/public/ee/04/ee045664d2af4d23acf5f99eed616b95.jpg\",\"description\":\"Я занимаюсь программированием на платформе .NET с 2013 года. Основной опыт работы – это проектирование и разработка технологической платформы сервиса доставки продуктов из гипермаркетов, включая серверную часть и бизнес-логику мобильных приложений.\\r\\nЛюблю преподавание, занимаюсь им уже более 2-х лет.\\r\\nПомимо практического опыта, постоянно обучаюсь, посещаю конференции по программированию и выступаю с докладами (СodeFest). Отдаю приоритет понятному и безопасному коду. В свободное время занимаюсь музыкой, смотрю доклады на YouTube и читаю книги. Поддерживаю несколько собственных опенсорс проектов\",\"years\":3,\"lessonsCount\":17,\"studentsCount\":620,\"courses\":[],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":1752,\"fullName\":\"Роман Приходько\",\"company\":\"Ozon\",\"companyRole\":\"Senior SDET\",\"photoUrl\":\"https://cdn.otus.ru/media/public/9a/93/9a93e389c2f14d63ae66f99d01076b37.jpg\",\"description\":\"Кандидат технических наук\\r\\n\\r\\nБолее 14 лет в промышленной разработке (C# dev \u0026 SDET) \\r\\nБолее 10 лет опыта преподавания в ВУЗах\\r\\n\\r\\nБыл отмечен благодарностью губернатора г. Севастополя за воспитание и обучение стобалльника по математике (2024 г.)\\r\\n\\r\\nСертифицированный Microsoft специалист по направлениям:\\r\\n- Язык программирования C#\\r\\n- Разработка Asp.Net MVC приложений\\r\\n- Программирование в HTML5 с Javascript и CSS\\r\\n\\r\\nОбразование:\\r\\nОдесский национальный университет имени И.И. Мечникова, специальность - математика\",\"years\":6,\"lessonsCount\":246,\"studentsCount\":2083,\"courses\":[\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":2372,\"fullName\":\"Виктор Дзицкий\",\"company\":\"SolarLab\",\"companyRole\":\"Тимлид, full-stack .NET Developer\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\",\"description\":\"\u003cb\u003eОбразование\u003c/b\u003e\\r\\nОкончил факультет автоматики и вычислительной техники СевГУ\\r\\n\\r\\n\u003cb\u003eОпыт\u003c/b\u003e\\r\\nВ промышленной разработке на C# более 10 лет.\\r\\nНачал профессиональный путь в качестве C#-разработчика тестовой инфраструктуры в «Лаборатории Касперского», в дальнейшем увлёкся веб-разработкой.\\r\\nCейчас работает в компании SolarLab, в проекте, связанном с полным циклом разработки крупной тендерной площадки. \\r\\n\\r\\n\u003cb\u003eДостижения\u003c/b\u003e\\r\\nСдал несколько экзаменов Microsoft по .NET, ASP.NET и Azure\\r\\nCertified Solutions Developer (MCSD).\",\"years\":5,\"lessonsCount\":361,\"studentsCount\":3146,\"courses\":[\"IT-Recruiter\",\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\",\"C# Developer. Advanced\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":3950,\"fullName\":\"Михаил Дмитриев\",\"company\":\"НИПК Электрон\",\"companyRole\":\"инженер-программист\",\"photoUrl\":\"https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg\",\"description\":\"• Более 20 лет работы в IT-сфере на различных позициях;\\r\\n • Последние 5 лет - промышленная разработка на платформе .Net (C#);\\r\\n • Выпускник СПбГУ факультета Прикладной математики - Процессов Управления.\",\"years\":4,\"lessonsCount\":122,\"studentsCount\":1668,\"courses\":[\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\",\"NoSQL\",\"C# Developer. Advanced\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":1967,\"fullName\":\"Антон Герасименко\",\"company\":null,\"companyRole\":null,\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\",\"description\":\".net developer + lead\\r\\n\\r\\nКоммерческой продуктовой разработкой занимаюсь с 2013.\\r\\nСейчас разрабатываю решения для системы (включающей более 10 продуктов) видеонаблюдения и видеоаналитики в компании \\\"Интелком лайн\\\". До этого разрабатывал информационную системы для порталов РПГУ, ЕПГУ, госуслуг.\\r\\nОпыт работы с .net: от десктопных wpf приложения до микросервисов на asp.net. Есть опыт в построении микросервисов на node.js.\\r\\nПоследнее 2 года занимаюсь развитием и ростом команды на dotnet и фронта.\\r\\n\\r\\nОбразование: ВолгГТУ, факультет электроники и вычислительной техники\",\"years\":6,\"lessonsCount\":529,\"studentsCount\":3173,\"courses\":[\"PostgreSQL для администраторов баз данных и разработчиков\",\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\",\"Системный аналитик. Team Lead\",\"Администрирование PostgreSQL. Экспертный уровень\",\"Базы данных\",\"System Design\",\"C# Developer. Advanced\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null},{\"id\":3175,\"fullName\":\"Дмитрий Гурьянов\",\"company\":\"SKL Group\",\"companyRole\":\"Senior Developer\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\",\"description\":\"Аспирант кафедры \\\"Системы обработки информации и управления\\\" в МГТУ им. Н.Э. Баумана\\r\\n\\r\\nИмеет более 6 лет опыта разработки на платформе .NET, занимается разработкой в области систем автоматизации продаж с 2016 года. \\r\\nСпециализируется на внедрении решений на базе платформы Microsoft Dynamics, консультирует системных интеграторов по вопросам внедрения корпоративных систем на базе решений Microsoft.\\r\\nВ своей профессиональной карьере также работал в Российском офисе компании работал в Microsoft над продуктом Bing, где занимался разработкой системы сравнения релевантности поисковой выдачи с конкурирующими решениями.\",\"years\":5,\"lessonsCount\":197,\"studentsCount\":2747,\"courses\":[\"Инфраструктура высоконагруженных систем\",\"C# Developer. Professional\",\"C# ASP.NET Core разработчик\",\"C# Developer. Basic\",\"NoSQL\",\"Базы данных\",\"C# Developer. Advanced\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":null}]},{\"desc\":null,\"header\":\"\u003ch2\u003eПрошедшие мероприятия\u003c/h2\u003e\",\"id\":5542,\"type\":\"SPECIALIZATION_PAST_WEBINARS\",\"events\":[{\"id\":6753,\"eventType\":\"open_lesson\",\"previewLink\":\"https://i.mycdn.me/getVideoPreview?id=11253096647313\u0026idx=8\u0026type=39\u0026tkn=79kESg7l_JrC2D29BXavulX-NF8\u0026fn=vid_l\",\"eventTitle\":\"Реализация паттерна CQRS с использованием библиотеки MediatR и ASP.NET CORE\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456250408\",\"teacher\":{\"fullName\":\"Михаил Дмитриев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg\"}},{\"id\":6752,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-13.userapi.com/impg/CsfDIOnQmx15crfdPXlMfdN33Y1eS6G3kdOEIg/PAnky1e1J3M.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=869aabda4abfb109748d9a5089579090\u0026c_uniq_tag=t9KrP4c0kQckOX7f0lf9q33JkWPSGt1GIba-PyP-Kmw\u0026type=video_thumb\",\"eventTitle\":\"Настройка CI/CD на практике с помощью Docker для ASP.NET‑приложений\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456250391\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":6751,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-27.userapi.com/impg/aGaUcQelchERgFvBaPXEUHpt4Wf6VxY7IgGJJQ/CUjqotsGTlk.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=1153f67cdb064a9e0fef929ec8f97d66\u0026c_uniq_tag=W_Kb9khc8-QRV3i_3BFapYBS9geYapMIjY-4GXvPwOg\u0026type=video_thumb\",\"eventTitle\":\"Конфигурирование приложения ASP.NET CORE\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456250324\",\"teacher\":{\"fullName\":\"Михаил Дмитриев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg\"}},{\"id\":6475,\"eventType\":\"open_lesson\",\"previewLink\":\"https://i.mycdn.me/getVideoPreview?id=9408222792310\u0026idx=12\u0026type=39\u0026tkn=_1jOcmH9oOu0xwBK4M42BNpcZaM\u0026fn=vid_l\",\"eventTitle\":\"Управление зависимостями в ASP.NET Core: расширение возможностей стандартного IoC контейнера с помощью Scrutor\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456249885\",\"teacher\":{\"fullName\":\"Михаил Дмитриев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/ec/11/ec118f6f41ab46cebc015c6a34cca66f.jpg\"}},{\"id\":6474,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-4.userapi.com/impg/91oFDWfjQzz-TVTiqzHSRciJ6nkgkMHIKZJEpQ/VEL8j7EUYSk.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=f0fcf5358e4ea035ab566d496231be4b\u0026c_uniq_tag=2URL4GrCeXl3AbrVb5jXg9N-yMEnT83GWDE1o43goz8\u0026type=video_thumb\",\"eventTitle\":\"Гид по Redis в C# ASP.NET\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456249807\",\"teacher\":{\"fullName\":\"Андрей Сорокин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/eb/13/eb13d2ffca3b45adbf61f4b11889f182.png\"}},{\"id\":6473,\"eventType\":\"open_lesson\",\"previewLink\":\"https://i.mycdn.me/getVideoPreview?id=9304381590188\u0026idx=2\u0026type=39\u0026tkn=RIfZMV-6SQWDtkAtbCOiPLY1daE\u0026fn=vid_l\",\"eventTitle\":\"Повышение надежности .NET-приложений: современные подходы к обработке сбоев с использованием библиотеки Polly\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456249743\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":5983,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-25.userapi.com/impg/LK2_fOMtsJH7fct9RiWxSf6Tu17yqyq2W3KsCw/Rdtuz5vHIB4.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=b09f89fa191300bbb0c90c8aa3f7bafb\u0026c_uniq_tag=NG6a8klwRABKborFNreV5qqG00PX1I3q0Gx6naSQTAs\u0026type=video_thumb\",\"eventTitle\":\"Оптимизация микросервисов с CQRS и Event Sourcing на .NET Aspire\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456249007\",\"teacher\":{\"fullName\":\"Елена Сычева\",\"photoUrl\":\"https://cdn.otus.ru/media/public/93/05/9305a9d7e8214b38abc3cc388583f543.jpg\"}},{\"id\":5982,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-28.userapi.com/impg/ic1B5ewQm8oaWy0cQGfsUAw7ScTQA9WscF2glQ/iMlb1iDNFFY.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=7a43081e02cea0eed046eda3ebcc15ab\u0026c_uniq_tag=S39Hj1xJAW2XOyLgDXaB5jdtci-xtwreKBlOAu11eJE\u0026type=video_thumb\",\"eventTitle\":\"Тестирование API в ASP.NET Core: Интеграция и Нагрузка\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248905\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":5565,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-47.userapi.com/impg/JhC50FwFh-viA2cFt8afHODibAOuzjxWidJy1g/boXVnU48nF0.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=16f9ef6710e141e5d144e661f30136d0\u0026c_uniq_tag=VKqpGQU_iZ80sNU3__YjkLRmnpq1KwqNbgEDU6CClpk\u0026type=video_thumb\",\"eventTitle\":\"Создание защищенных микросервисов на ASP.NET Core с JWT и .NET Aspire\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248273\",\"teacher\":{\"fullName\":\"Елена Сычева\",\"photoUrl\":\"https://cdn.otus.ru/media/public/93/05/9305a9d7e8214b38abc3cc388583f543.jpg\"}},{\"id\":5564,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-9.userapi.com/impg/oBtwa7b5gqKqtGrDXrNyCOl5lcskloYgr8V4tw/4sWRzU8yFQI.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=6276d7eeb2dfb2e1a138346db1077097\u0026c_uniq_tag=G_9rrXl_qkPa7Mnm7x9ObR4AzoiKB7Ze2l2i540sO9o\u0026type=video_thumb\",\"eventTitle\":\"Деплой ASP.NET приложений в Kubernetes_часть 2\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248107\",\"teacher\":{\"fullName\":\"Олег Голенищев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/52/06/5206a1805d8a44e08e1797916c95f731.jpg\"}},{\"id\":5253,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-28.userapi.com/impg/U7MySM-a8mnisEP3F-2N7tJPZjeszI6cEHsVkw/Ucrq-BsOUXc.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=83f8b36b76170d9f28230c8f8886da22\u0026c_uniq_tag=ZG2aEIhmPkp3kyr5-PYJRc2WzQCbU1mNF7K9I9jVtNI\u0026type=video_thumb\",\"eventTitle\":\"Трейсинг запросов в .NET с использованием Jaeger v2\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247853\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":5252,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-25.userapi.com/impg/Oy1ZtZdUIAuqzqMWyTAJj36InUKiML7c5NWRDA/NXoLJJu0ey0.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=8ec56519a1ce4aca463239155a5cdbda\u0026c_uniq_tag=LaDuPgM3zkHPFaEtU6Um39I7h-X4Okvdh747L8vmcA0\u0026type=video_thumb\",\"eventTitle\":\"Создание WebAPI с помощью EF Core и MongoDB\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247806\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":5251,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-61.userapi.com/impg/57IgtrBQHty5ZGWLGxUUoHxOY127rVzaKmN9MQ/tbhnq9O3wnU.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=74e0189e33c4c732f2eba2fabdf8ccc5\u0026c_uniq_tag=Qc4oixC6UFQxNkMRnyYPGrt5AH14d0RaGta9Z83A1Xc\u0026type=video_thumb\",\"eventTitle\":\"Коммуникация между микросервисами с помощью RabbitMQ в ASP.NET\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247732\",\"teacher\":{\"fullName\":\"Олег Голенищев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/52/06/5206a1805d8a44e08e1797916c95f731.jpg\"}},{\"id\":5025,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-69.userapi.com/impg/om0MaRYEGqV7xP84Og1tcSwm25_rszWf7hRmEg/P9DXnQqq_5w.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=6d37e8e8ab5ea6f4215591ae1e73bbad\u0026c_uniq_tag=CQaLQlHnzUvbqsZI1wVib5n9xRyGHXuXT81srGr1zMk\u0026type=video_thumb\",\"eventTitle\":\"Мониторинг работоспособности ASP.NET Core приложений\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247517\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":5024,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-80.userapi.com/impg/3wqQhkzZGW4XXyOYH91d-PvUhhBTuebLgq0xcg/SdjGNlGbQhU.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=7697eff97e5887d2c688a934d0cc457e\u0026c_uniq_tag=nEo3PVq45lA78nmR5RrTpA7hitwLxgiqeeW3rQ7h4x8\u0026type=video_thumb\",\"eventTitle\":\"SignalR в ASP.NET Core приложениях\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247443\",\"teacher\":{\"fullName\":\"Олег Голенищев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/52/06/5206a1805d8a44e08e1797916c95f731.jpg\"}},{\"id\":4983,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-26.userapi.com/impg/ecvNbt6sTEQJDT4Lq9ieSmi-Bf3z203pNIeYWg/NZxU951WO8k.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=057311941246ef4db54525b670c7ad05\u0026c_uniq_tag=f4zWXAplrXIXGO7EibykCu4RqctV5hXG_bsNRXFGNCM\u0026type=video_thumb\",\"eventTitle\":\"Деплой ASP.NET приложений в Kubernetes\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247251\",\"teacher\":{\"fullName\":\"Олег Голенищев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/52/06/5206a1805d8a44e08e1797916c95f731.jpg\"}},{\"id\":4767,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-11.userapi.com/impg/Ph4uPZAk_gF5T0-GTmvTUFBhMehPlbGo7XwW-A/t_cmV-y5KYs.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=975fd69538c2ce22fa843ae4c5b1fd1e\u0026c_uniq_tag=SHbI5rlq6X6bpW31SEAPWecGMAJTwjg9uuEnUjCgPso\u0026type=video_thumb\",\"eventTitle\":\".NET Aspire: очередная прорывная технология в мире dotnet или не очень?\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247198\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":4766,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-15.userapi.com/impg/EDKcWIZXn8Qdsey_du7YIg7FO1sGwkDignv-Ug/Asgwhtur2Wk.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=7ea28b03316b7383a756a286bbb0abf4\u0026c_uniq_tag=VodNEqUrjwhAJa_m37ug3D-BrUK_Ok8egYDEOEx5DCI\u0026type=video_thumb\",\"eventTitle\":\"Архитектурные стили WebAPI: история, особенности, область применения\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247130\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":4492,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/J380gJzs4zs/0.jpg\",\"eventTitle\":\"Контейнеризация и хостинг приложений с помощью docker и docker-compose\",\"recordLink\":\"https://www.youtube.com/embed/J380gJzs4zs\",\"teacher\":{\"fullName\":\"Виктор Дзицкий\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f3/be/f3be62163aa746b9963bd49ba7971b53.png\"}},{\"id\":4491,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/H2KdUogN25M/0.jpg\",\"eventTitle\":\"Библиотека signalr\",\"recordLink\":\"https://www.youtube.com/embed/H2KdUogN25M\",\"teacher\":{\"fullName\":\"Эдгар Пилипсон\",\"photoUrl\":\"https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png\"}},{\"id\":4164,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/HLVNraLMVCI/0.jpg\",\"eventTitle\":\"Performace мониторинг приложения на asp.net\",\"recordLink\":\"https://www.youtube.com/embed/HLVNraLMVCI\",\"teacher\":{\"fullName\":\"Дмитрий Панкрашов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/fa/87/fa87758c1b30479ca18a2c3fb66ba7e0.jpg\"}},{\"id\":4163,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/D47PxmDZksk/0.jpg\",\"eventTitle\":\"Работа с базой данных с помощью Entity Framework Core\",\"recordLink\":\"https://www.youtube.com/embed/D47PxmDZksk\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":3809,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/V4s5lqAYHUM/0.jpg\",\"eventTitle\":\"Пишем свой API: OData\",\"recordLink\":\"https://www.youtube.com/embed/V4s5lqAYHUM\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":3808,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/pZhP9TSsevM/0.jpg\",\"eventTitle\":\"Пишем свой API: gRPC\",\"recordLink\":\"https://www.youtube.com/embed/pZhP9TSsevM\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":3540,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/tGqkw5oFdF0/0.jpg\",\"eventTitle\":\"Пишем свой API: OData\",\"recordLink\":\"https://www.youtube.com/embed/tGqkw5oFdF0\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":3542,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/XKTaH4I-G0g/0.jpg\",\"eventTitle\":\"Что нам принесет .NET 8\",\"recordLink\":\"https://www.youtube.com/embed/XKTaH4I-G0g\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":3086,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/HHypV2p5fso/0.jpg\",\"eventTitle\":\"ASP.NET: взаимодействие с источниками данных\",\"recordLink\":\"https://www.youtube.com/embed/HHypV2p5fso\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":3085,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/BpuONrm0faw/0.jpg\",\"eventTitle\":\"Стандартные middleware своими руками\",\"recordLink\":\"https://www.youtube.com/embed/BpuONrm0faw\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":2960,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/fXv4xHovC_8/0.jpg\",\"eventTitle\":\"Изучаем конвейеры ПО промежуточного слоя (Middleware)\",\"recordLink\":\"https://www.youtube.com/embed/fXv4xHovC_8\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":2828,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/FlPQwSShnhQ/0.jpg\",\"eventTitle\":\"ASP NET Core - подготовка и запуск простого веб-сервиса\",\"recordLink\":\"https://www.youtube.com/embed/FlPQwSShnhQ\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":2827,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/WOG-mNhr770/0.jpg\",\"eventTitle\":\"Создаем веб-приложение с помощью Blazor WebAssembly\",\"recordLink\":\"https://www.youtube.com/embed/WOG-mNhr770\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":2608,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/ivM1-GdGc54/0.jpg\",\"eventTitle\":\"Принцип работы «Сборщика Мусора» в .NET\",\"recordLink\":\"https://www.youtube.com/embed/ivM1-GdGc54\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":2607,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/WNxNZQuVemc/0.jpg\",\"eventTitle\":\"Логирование в ASP.NET Core\",\"recordLink\":\"https://www.youtube.com/embed/WNxNZQuVemc\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":2413,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/eN3hZOYadrA/0.jpg\",\"eventTitle\":\"Различные способы валидации данных\",\"recordLink\":\"https://www.youtube.com/embed/eN3hZOYadrA\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":2412,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/I6cnVlBQo6I/0.jpg\",\"eventTitle\":\"ASP.NET Взаимодействие с источниками данных\",\"recordLink\":\"https://www.youtube.com/embed/I6cnVlBQo6I\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":2190,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/haoXIAZ0fAY/0.jpg\",\"eventTitle\":\"ASP.NET Core - подготовка и запуск простого веб-сервиса\",\"recordLink\":\"https://www.youtube.com/embed/haoXIAZ0fAY\",\"teacher\":{\"fullName\":\"Дмитрий Гурьянов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/15/47/15478133bb014fb0a4aeb2687c6c9c76.jpg\"}},{\"id\":2189,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/o4-uGoPwB7s/0.jpg\",\"eventTitle\":\"Стандартные middleware своими руками\",\"recordLink\":\"https://www.youtube.com/embed/o4-uGoPwB7s\",\"teacher\":{\"fullName\":\"Олег Сафонов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/57/b2/57b2297bc9ef4bcfb8ee20d62821373c.jpg\"}},{\"id\":2034,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/eAhgqUrVf2U/0.jpg\",\"eventTitle\":\"Работа с базой данных с помощью Entity Framework Core\",\"recordLink\":\"https://www.youtube.com/embed/eAhgqUrVf2U\",\"teacher\":{\"fullName\":\"Эдгар Пилипсон\",\"photoUrl\":\"https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png\"}},{\"id\":2033,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/jJ7KbtP6BhY/0.jpg\",\"eventTitle\":\"Развертывание ASP.NET Core приложений в Azure\",\"recordLink\":\"https://www.youtube.com/embed/jJ7KbtP6BhY\",\"teacher\":{\"fullName\":\"Станислав Шурупин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f9/da/f9da887bb48b45deb97842f9f1376988.jpg\"}},{\"id\":1861,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/HrN3H3O4Jbo/0.jpg\",\"eventTitle\":\"Как устроено логгирование в ASP.NET Core\",\"recordLink\":\"https://www.youtube.com/embed/HrN3H3O4Jbo\",\"teacher\":{\"fullName\":\"Антон Герасименко\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b4/c8/b4c8f844565b4be0b9fa0de33ed9b20c.jpg\"}},{\"id\":1862,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/8dgK-FDjH-E/0.jpg\",\"eventTitle\":\"Пишем свой API: SignalR Core\",\"recordLink\":\"https://www.youtube.com/embed/8dgK-FDjH-E\",\"teacher\":{\"fullName\":\"Эдгар Пилипсон\",\"photoUrl\":\"https://cdn.otus.ru/media/public/db/ac/dbac30f367ab438b9ebb3d4cf7a56c9b.png\"}},{\"id\":1623,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/J5Q2_mvnuD0/0.jpg\",\"eventTitle\":\"Тема: Управление конфигурациями микросервисов\",\"recordLink\":\"https://www.youtube.com/embed/J5Q2_mvnuD0\",\"teacher\":{\"fullName\":\"Роман Константиновский\",\"photoUrl\":\"https://cdn.otus.ru/media/public/2e/9a/2e9a09b299b845d093e021c3d80a88e0.jpg\"}},{\"id\":1621,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/vt2vo8yuWBk/0.jpg\",\"eventTitle\":\"Demo Day курса \\\"C# ASP.NET Core разработчик\\\"\",\"recordLink\":\"https://www.youtube.com/embed/vt2vo8yuWBk\",\"teacher\":{\"fullName\":\"Максим Горбатюк\",\"photoUrl\":\"https://cdn.otus.ru/media/public/c7/b4/c7b430d26fbf4af594d06a52d34e562b.jpg\"}},{\"id\":1622,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/0D2qILYtSng/0.jpg\",\"eventTitle\":\"Развертывание ASP.NET Core приложений на Azure\",\"recordLink\":\"https://www.youtube.com/embed/0D2qILYtSng\",\"teacher\":{\"fullName\":\"Станислав Шурупин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f9/da/f9da887bb48b45deb97842f9f1376988.jpg\"}},{\"id\":1425,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/naHirOlLKKU/0.jpg\",\"eventTitle\":\"Развертывание фронтенд приложений в Azure и других облачных сервисах\",\"recordLink\":\"https://www.youtube.com/embed/naHirOlLKKU\",\"teacher\":{\"fullName\":\"Михаил Кузнецов\",\"photoUrl\":\"https://cdn.otus.ru/media/public/0b/ea/0beac8d981504c92b5d7eb70756a89d3.jpg\"}},{\"id\":1424,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/-oiYwzVsiW4/0.jpg\",\"eventTitle\":\"Развертывание ASP.NET Core приложений в Azure\",\"recordLink\":\"https://www.youtube.com/embed/-oiYwzVsiW4\",\"teacher\":{\"fullName\":\"Станислав Шурупин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/f9/da/f9da887bb48b45deb97842f9f1376988.jpg\"}},{\"id\":1423,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/Pwu-JHR_QOQ/0.jpg\",\"eventTitle\":\"Demo day курса «C# ASP.NET Core разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/Pwu-JHR_QOQ\",\"teacher\":{\"fullName\":\"Алексей Ягур\",\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\"}},{\"id\":1235,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/qMiUkAnbtJ8/0.jpg\",\"eventTitle\":\"Интенсив «Serverless на базе azure». День 2\",\"recordLink\":\"https://www.youtube.com/embed/qMiUkAnbtJ8\",\"teacher\":{\"fullName\":\"Александр Новиков\",\"photoUrl\":\"https://cdn.otus.ru/media/public/fb/92/fb920392d3c94a9bb4defb414737ce34.jpg\"}},{\"id\":1234,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/MX0yUrCiTnE/0.jpg\",\"eventTitle\":\"Интенсив «Serverless на базе azure». День 1\",\"recordLink\":\"https://www.youtube.com/embed/MX0yUrCiTnE\",\"teacher\":{\"fullName\":\"Александр Новиков\",\"photoUrl\":\"https://cdn.otus.ru/media/public/fb/92/fb920392d3c94a9bb4defb414737ce34.jpg\"}},{\"id\":1236,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/jXGp154AQ9g/0.jpg\",\"eventTitle\":\"Demo day онлайн-курса «C# ASP.NET Core разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/jXGp154AQ9g\",\"teacher\":{\"fullName\":\"Алексей Ягур\",\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\"}},{\"id\":1029,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/yaiUtKfpGO8/0.jpg\",\"eventTitle\":\"Отличия структурных шаблонов проектирования на примерах\",\"recordLink\":\"https://www.youtube.com/embed/yaiUtKfpGO8\",\"teacher\":{\"fullName\":\"Евгений Колосков\",\"photoUrl\":\"https://cdn.otus.ru/media/public/c2/48/c248c0fd326b4b39b9caeddab2728fc7.jpg\"}},{\"id\":1028,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/MkpkLsbO5G8/0.jpg\",\"eventTitle\":\"Demo Day курса \\\"C# ASP.NET Core разработчик\\\"\",\"recordLink\":\"https://www.youtube.com/embed/MkpkLsbO5G8\",\"teacher\":{\"fullName\":\"Алексей Ягур\",\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\"}},{\"id\":863,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/JebPAullK-0/0.jpg\",\"eventTitle\":\"Логирование и трейсинг запросов в ASP.NET Core\",\"recordLink\":\"https://www.youtube.com/embed/JebPAullK-0\",\"teacher\":{\"fullName\":\"Виктор Николаев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/8e/73/8e736853a4d449c68e265d4552d1504f.jpg\"}},{\"id\":712,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/VQWkY2HpZnA/0.jpg\",\"eventTitle\":\"Разработка GraphQL API на ASP.NET Core\",\"recordLink\":\"https://www.youtube.com/embed/VQWkY2HpZnA\",\"teacher\":{\"fullName\":\"Виктор Николаев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/8e/73/8e736853a4d449c68e265d4552d1504f.jpg\"}},{\"id\":711,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/0gLTPShNq8o/0.jpg\",\"eventTitle\":\"Всё о курсе «C# ASP.NET Core разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/0gLTPShNq8o\",\"teacher\":{\"fullName\":\"Алексей Ягур\",\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\"}},{\"id\":582,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/heTOGL1Wox0/0.jpg\",\"eventTitle\":\"Всё о курсе «C# ASP.NET Core разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/heTOGL1Wox0\",\"teacher\":{\"fullName\":\"Алексей Ягур\",\"photoUrl\":\"https://cdn.otus.ru/media/public/cf/53/cf53417e8938414790ba770641062316.jpg\"}},{\"id\":581,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/clEKBj5o8D4/0.jpg\",\"eventTitle\":\"ASP.NET Core: Быстрый старт\",\"recordLink\":\"https://www.youtube.com/embed/clEKBj5o8D4\",\"teacher\":{\"fullName\":\"Андрей Гранковский\",\"photoUrl\":\"https://cdn.otus.ru/media/public/13/5c/135cacf6f4eb4a549bc3c33f23bd7038.jpg\"}}]},{\"id\":13017,\"type\":\"EMPLOYEE_REQUEST\"},{\"title\":\"Отзывы\",\"id\":5544,\"type\":\"SPECIALIZATION_REVIEW\",\"reviews\":[{\"id\":3501,\"dateCreated\":\"2025-12-08T11:48:34+00:00\",\"text\":\"Курс достаточно хорошо организован. Информирование о событиях, изменение расписания занятий выше всяких похвал. Хорошо работает команда методистов.\\r\\nКурс постоянно актуализируется под изменения затрагиваемых технологий.\\r\\nПреподаватели - не замшелые теоретики, а производственники, уделяют достаточно времени на практические аспекты использования. Компетентные, вежливые, отзывчивые.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Александр Заворотный\",\"socials\":[{\"id\":368578,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Александр Заворотный\"},{\"id\":3224,\"dateCreated\":\"2025-07-24T08:56:42+00:00\",\"text\":\"Очень качественный материал, хорошие преподаватели\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Айнур Минигалиев\",\"socials\":[]},\"name\":\"Айнур Минигалиев\"},{\"id\":3220,\"dateCreated\":\"2025-07-23T17:41:56+00:00\",\"text\":\"В целом курс понравился. Полезные домашние задания, которые позволили закрепить материал на практике. Особенно ценным был командный проект — он дал возможность не только изучить технологии, но и поработать вместе с более опытными коллегами, что дало ценный практический опыт.\\r\\n\\r\\nОтдельное спасибо преподавателям — Антону Герасименко, Роману Приходько и Елене Сычёвой. Они — лучшие преподаватели курса!\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Павел Скрябин\",\"socials\":[{\"id\":318906,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Павел Скрябин\"},{\"id\":2503,\"dateCreated\":\"2024-09-03T13:03:53+00:00\",\"text\":\"В настоящее время работаю в компании ГазпромНефть-Автоматизация в должности ведущего инженера-программиста.\\r\\nЯ искал курс по .NET на продвинутом уровне, где была возможность задавать вопросы лектору, получать обратную связь по ДЗ от ментора.\\r\\nБлагодаря этому курсу я получил новые знания и навыки, которые применял в рамках домашних заданий и проекта.\\r\\nУ меня есть перспективы для новой должности в будущем.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Роман Кириллов\",\"socials\":[{\"id\":343546,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Роман Кириллов\"},{\"id\":2502,\"dateCreated\":\"2024-09-03T13:03:03+00:00\",\"text\":\"До обучения в OTUS и прохождения курса \\\"C# ASP.NET Core разработчик\\\" работал в роли QA Automation C#. Возник интерес к разработке и желание отойти от тестирования, поэтому решил развивать компетенции backend разработчика. Так как был коммерческий опыт работы с C#, то и развиваться в контексте разработки решил также с использованием C#.\\r\\n\\r\\nКурс по ASP.NET от OTUS выбрал во многом из-за наличия возможности командной разработки выпускного проекта - это для меня было неоспоримым преимуществом. При обучении нравилось большое количество практических ДЗ и возможность \\\"покопаться\\\" с изученным в рамках проекта.\\r\\n\\r\\nПо окончании обучения на курсе получил возможность в роли QA Automation заниматься разработкой проекта, который используется в тестировании в нашей компании. Это было мини-целью при старте обучения.\",\"shortText\":null,\"user\":{\"avatarUrl\":\"https://cdn.otus.ru/media/public/36/e4/avatar-511013-36e4b0.png\",\"fullName\":\"Антон Климков\",\"socials\":[{\"id\":285788,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Антон Климков\"},{\"id\":1443,\"dateCreated\":\"2022-08-17T09:41:30.134524+00:00\",\"text\":\"Училась в НИЯУ МИФИ, прикладная математика и информатика. \\r\\nНа данный момент живу в Москве и работаю в Лаборатории Касперского как Software Development Engineer in Test. Курс “C# ASP.NET Core разработчик“ выбрала для того, что бы узнать новое и систематизировать уже имеющиеся знания в разработке. В Otus мне понравилась подача информации преподавателями, домашние задания по темам, которые помогли отработать полученную информацию, и работа над курсовым проектом, которая так же помогла отработать полученные знания и прокачать коммуникативные навыки работы в команде. Обучение дало мне новые знания, помогло отработать их на практике и, в перспективе, надеюсь, получить повышение по должности и/или реализовать свой проект. \\r\\nСпасибо команде Otus!\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Ирина Дыдышко\",\"socials\":[]},\"name\":\"Ирина Дыдышко\"},{\"id\":1216,\"dateCreated\":\"2021-12-02T08:36:31.879096+00:00\",\"text\":\"Отличный курс, получил много полезных навыков. Классный формат лекций когда преподаватели делятся своим опытом в применению той или иной технологии в компании. \\r\\n\\r\\nФормат ДЗ мне тоже понравился, тебе выдают уже созданный и подготовленный проект и ты сосредоточен только на нужной теме и тебе не нужно проделывать по несколько раз одну и ту же работу.\\r\\nЧто хотелось бы предложить: добавить в ДЗ работу, по применению потерна SAGA так как паттерн очень важный и размытый в описании на разных ресурсах, хотелось бы попробовать сделать его самому и получить фидбэк от проверяющего.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Артем Карпец\",\"socials\":[]},\"name\":\"Карпец Артем\"},{\"id\":1111,\"dateCreated\":\"2021-08-28T13:48:54.400688+00:00\",\"text\":\"$2c\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Сергей Толстых\",\"socials\":[{\"id\":82653,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Сергей Толстых\"},{\"id\":1000,\"dateCreated\":\"2021-06-04T17:24:08.580501+00:00\",\"text\":\"Курс очень насыщенный, интересный. Для выполнения домашних заданий нужно сразу планировать по 4-5 часов на каждую (всего было 14). К сожалению я не успел сдать все, но планирую по мере возможности доделать.\\r\\nЛично мне курс помог получить повышение по зарплате.\\r\\nБлагодарю преподавателей и организаторов курса за проделанную работу.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Федор Чеппель\",\"socials\":[]},\"name\":\"Федор Чеппель\"},{\"id\":968,\"dateCreated\":\"2021-05-13T11:02:54.463022+00:00\",\"text\":\"До обучения необходимо было разработать программу перештабелирования досок на деревообрабатывающем производстве. И если с работой по программированию \\\"железа\\\" (ПЛК) вопросов не было, то по программе учёта объемов, кол-ва пакетов, поставщиков и т.п возникли вопросы, т.к. стандартной SCADA - системой тут было не обойтись, да и бюджет был ограничен.\\r\\nВыбор пал на c#, т.к. поискав в интернете, обнаружил библиотеки обмена данными с ПЛК именно на С#. И я решил пойти на курс.\\r\\nКурс понравился продолжительностью и плотностью. Как новичку было тяжеловато. Приходилось с нуля знакомиться с темами, которые по умолчанию подразумевались всем известными. Но мне понравилось. В итоге:\\r\\nДля меня примерно 90% затрагиваемых тем оказались в новинку. Кругозор свой существенно увеличил.\\r\\nСделал проект и им сейчас пользуются на производстве. Я горжусь этим\\r\\nЯ бы рекомендовал этот курс каждому веб программисту вне зависимости от его квалификации.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Иван Шеломов\",\"socials\":[]},\"name\":\"Иван Шеломов\"}]},{\"header\":\"\u003ch2\u003eДиплом о профессиональной переподготовке\u003c/h2\u003e\",\"desc\":\"\u003cdiv\u003eOTUS осуществляет лицензированную образовательную деятельность.\u0026nbsp;Вы получите сертификат о прохождении обучения, а также можете получить удостоверение о повышении квалификации.\u003c/div\u003e\",\"sideDesc\":\"\u003ch3\u003eПосле обучения вы:\u003c/h3\u003e\\n\u003cul\u003e\\n\u003cli class=\\\"list_item\\\"\u003e\\n\u003cp class=\\\"\\\"\u003eУдостоверение о повышении квалификации: если вы успешно защитили выпускной проект и готовы предоставить копию документа о высшем или среднем профессиональном образовании\u003c/p\u003e\\n\u003c/li\u003e\\n\u003cli class=\\\"list_item\\\"\u003e\\n\u003cp class=\\\"\\\"\u003eДоступ к учебным материалам курса\u003c/p\u003e\\n\u003c/li\u003e\\n\u003cli class=\\\"list_item\\\"\u003e\\n\u003cp class=\\\"\\\"\u003eВаш личный проект, который поможет проходить собеседования\u003c/p\u003e\\n\u003c/li\u003e\\n\u003c/ul\u003e\",\"id\":9474,\"type\":\"SPECIALIZATION_CERTIFICATE\"},{\"id\":9476,\"type\":\"SPECIALIZATION_FAQ\",\"items\":[{\"name\":177,\"title\":\"Что, если в середине курса я не смогу продолжать обучение?\",\"description\":\"У Вас есть право одного бесплатного трансфера в другую группу.\"},{\"name\":178,\"title\":\"Обязательно ли защищать выпускной проект?\",\"description\":\"Для получения сертификата Отус необходимо сдать проект. Необязательно защищать проект перед аудиторией, можно это сделать в чате с преподавателем\"},{\"name\":179,\"title\":\"Я могу вернуть деньги?\",\"description\":\"Да, при необходимости Вы сможете сделать возврат пропорционально оставшимся месяцам обучения.\"}]}],\"theme\":\"$2d\",\"button\":{\"nextAttempt\":null,\"assessmentId\":null,\"state\":\"course_subscribe_required\",\"userCourseId\":null,\"courseTitle\":\"C# ASP.NET Core разработчик\",\"courseSlug\":\"asp-net\",\"groupId\":null,\"showFastbuyButton\":false},\"structuredData\":{\"@context\":\"https://schema.org\",\"@type\":\"Organization\",\"name\":\"Otus\",\"url\":\"https://otus.ru\",\"logo\":\"https://otus.ru/__new_static__/img/meta-image.png\",\"sameAs\":[\"https://vk.com/otusru\",\"https://t.me/Otusjava\"]}}}]}]\n"])</script><style data-styled="" data-styled-version="5.3.10"></style></body></html><style data-styled="" data-styled-version="5.3.10"></style>