<!DOCTYPE html><html lang="ru"><head><meta charSet="utf-8"/><meta charSet="UTF-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no, user-scalable=no, viewport-fit=cover"/><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/01/f8/01f8c1324b0b48ae9618f149869da202.png"/><link rel="preload" as="image" href="https://cdn.otus.ru/media/public/b1/bf/Banners_Scala_1120x220-490557-b1bfa3.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"/><title>Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС</title><meta name="description" content="Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС"/><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/scala/"/><meta name="yandex-verification" content="3019a35aeda6b45d"/><meta property="og:title" content="Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС"/><meta property="og:description" content="Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС"/><meta property="og:url" content="https://otus.ru/lessons/scala/"/><meta name="twitter:card" content="summary"/><meta name="twitter:title" content="Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС"/><meta name="twitter:description" content="Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС"/><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"/><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">.iJGzvz{display:inline-block;-webkit-animation-name:rotate;animation-name:rotate;-webkit-animation-duration:1.2s;animation-duration:1.2s;-webkit-animation-iteration-count:infinite;animation-iteration-count:infinite;-webkit-animation-timing-function:ease;animation-timing-function:ease;will-change:transform;}/*!sc*/
@-webkit-keyframes rotate{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}80%{-webkit-transform:rotate(500deg);-ms-transform:rotate(500deg);transform:rotate(500deg);}100%{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}/*!sc*/
@keyframes rotate{0%{-webkit-transform:rotate(0);-ms-transform:rotate(0);transform:rotate(0);}80%{-webkit-transform:rotate(500deg);-ms-transform:rotate(500deg);transform:rotate(500deg);}100%{-webkit-transform:rotate(360deg);-ms-transform:rotate(360deg);transform:rotate(360deg);}}/*!sc*/
data-styled.g1[id="sc-10qj18o-0"]{content:"iJGzvz,"}/*!sc*/
.bLNTdk{position:absolute;top:50%;left:50%;-webkit-transform:translate(-50%,-50%);-ms-transform:translate(-50%,-50%);transform:translate(-50%,-50%);display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
data-styled.g2[id="sc-10qj18o-1"]{content:"bLNTdk,"}/*!sc*/
.bmVffP{height:24px;width:24px;position:relative;}/*!sc*/
.gsweRb{height:88px;width:88px;position:relative;}/*!sc*/
.cvcsLz{height:28px;width:28px;position:relative;}/*!sc*/
data-styled.g3[id="sc-i28ik1-0"]{content:"bmVffP,gsweRb,cvcsLz,"}/*!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*/
.krJlll{font-family:'Roboto',sans-serif;font-size:18px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.krJlll{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.krJlll{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:1201px){.krJlll{font-weight:400;}}/*!sc*/
@media (max-width:751px){.krJlll{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*/
.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*/
.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*/
.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*/
.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*/
.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*/
.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*/
.wJZyp{font-family:'Roboto',sans-serif;font-size:14px;line-height:20px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.wJZyp{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:751px){.wJZyp{font-size:12px;line-height:16px;}}/*!sc*/
@media (max-width:1201px){.wJZyp{font-weight:400;}}/*!sc*/
@media (max-width:751px){.wJZyp{font-weight:400;}}/*!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*/
.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*/
.ioOegJ{font-family:'IBM Plex Sans','Roboto',sans-serif;font-size:40px;line-height:48px;font-weight:700;}/*!sc*/
@media (max-width:1201px){.ioOegJ{font-size:40px;line-height:48px;}}/*!sc*/
@media (max-width:751px){.ioOegJ{font-size:32px;line-height:36px;}}/*!sc*/
@media (max-width:1201px){.ioOegJ{font-weight:700;}}/*!sc*/
@media (max-width:751px){.ioOegJ{font-weight:700;}}/*!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,krJlll,kswXpy,enpOeQ,doSDez,dvqddq,jmLQpp,bTMeHF,fPZiIk,hQBzUY,wJZyp,gGtEnS,iFeEEh,iwrrOS,ioOegJ,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*/
.gkRIPP{font-family:'Roboto',sans-serif;font-size:16px;line-height:24px;font-weight:400;}/*!sc*/
@media (max-width:1201px){.gkRIPP{font-size:16px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.gkRIPP{font-size:14px;line-height:20px;}}/*!sc*/
@media (max-width:1201px){.gkRIPP{font-weight:400;}}/*!sc*/
@media (max-width:751px){.gkRIPP{font-weight:400;}}/*!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:"gkRIPP,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*/
.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:"haeyZv,giOpNO,"}/*!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:"jssxGI,ehnata,"}/*!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:"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*/
.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:"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*/
.jBZCRO{-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:#fff;background:#232323;}/*!sc*/
.jBZCRO:active{color:#fff;}/*!sc*/
.jBZCRO:not(:disabled):hover{color:#ffd709;background:#0f0f10;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
.jBZCRO:disabled{cursor:default;color:#afafaf;background:#ececec;pointer-events:none;}/*!sc*/
data-styled.g249[id="sc-1qig7zt-0"]{content:"czpnNJ,bYRRHi,jBZCRO,"}/*!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.g344[id="sc-keyframes-iJeNST"]{content:"iJeNST,"}/*!sc*/
.kmquqg{object-fit:contain;}/*!sc*/
data-styled.g346[id="sc-ed2fvu-0"]{content:"kmquqg,"}/*!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.g399[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.g400[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.g403[id="sc-12fwr4-0"]{content:"eZuRED,"}/*!sc*/
.exsZZC{position:absolute;top:-1px;left:-1px;}/*!sc*/
data-styled.g404[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.g405[id="sc-1fry39v-0"]{content:"eAOVcR,"}/*!sc*/
.kMJHVN{margin:0 0 0 16px;}/*!sc*/
data-styled.g406[id="sc-1fry39v-1"]{content:"kMJHVN,"}/*!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.g454[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.g455[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.g456[id="sc-oy98rf-0"]{content:"jliiMx,"}/*!sc*/
.jDvWdq{background:linear-gradient( 99.66deg,#0A4489 11.62%,#00316B 87.01% );}/*!sc*/
data-styled.g457[id="sc-oy98rf-1"]{content:"jDvWdq,"}/*!sc*/
.bLWaqJ{padding:0;}/*!sc*/
data-styled.g458[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.g459[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.g460[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.g461[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.g462[id="sc-b223p8-0"]{content:"jbfvPl,"}/*!sc*/
.kexDMw{margin-bottom:16px;display:inline-block;}/*!sc*/
data-styled.g463[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.g464[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.g465[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.g466[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.g467[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.g468[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.g469[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.g470[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.g471[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.g472[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.g473[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.g474[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.g475[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.g476[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.g477[id="sc-15qczmr-6"]{content:"driyCh,"}/*!sc*/
.fyzNNQ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;color:#0f0f10;}/*!sc*/
data-styled.g479[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.g480[id="sc-dusc05-1"]{content:"fgICvQ,"}/*!sc*/
.fYuJAI{color:#fff;}/*!sc*/
data-styled.g482[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.g483[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.g484[id="sc-des2oc-2"]{content:"iHEhCu,"}/*!sc*/
.heMBup{grid-area:a;}/*!sc*/
data-styled.g485[id="sc-des2oc-3"]{content:"heMBup,"}/*!sc*/
.dqoHct{grid-area:b;}/*!sc*/
data-styled.g486[id="sc-des2oc-4"]{content:"dqoHct,"}/*!sc*/
.kSlCOl{grid-area:c;color:inherit;}/*!sc*/
data-styled.g487[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.g488[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.g489[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.g490[id="sc-176eli6-2"]{content:"hRGcmY,"}/*!sc*/
.fCchjz{width:100%;margin:auto;}/*!sc*/
data-styled.g491[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.g492[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.g493[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.g494[id="sc-1jb0vz0-1"]{content:"bQKtqJ,"}/*!sc*/
.bzaXwp{background-color:#f8f8f8;}/*!sc*/
data-styled.g495[id="sc-1b3dhyb-0"]{content:"bzaXwp,"}/*!sc*/
.dvLdDh{overflow:hidden;z-index:0;}/*!sc*/
data-styled.g496[id="sc-1b3dhyb-1"]{content:"dvLdDh,"}/*!sc*/
.ftkQLi{width:100%;}/*!sc*/
data-styled.g497[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.g500[id="sc-1lrh8w5-3"]{content:"JTsAm,"}/*!sc*/
.jTrfLJ{margin:auto;padding:0 4px 0 0;}/*!sc*/
data-styled.g501[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.g502[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.g520[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.g521[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.g522[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.g524[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.g525[id="sc-1r62a6q-1"]{content:"llFwsA,"}/*!sc*/
.dtnelf{margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.dtnelf{margin-bottom:40px;}}/*!sc*/
data-styled.g526[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.g527[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.g528[id="sc-1r62a6q-4"]{content:"cOojXt,"}/*!sc*/
.SAbyR{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.g544[id="sc-1gixy6u-0"]{content:"SAbyR,"}/*!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.g565[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.g566[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.g567[id="sc-1232l32-1"]{content:"gLmhvn,"}/*!sc*/
.cLdvvd{color:#afafaf;}/*!sc*/
.cLdvvd h1,.cLdvvd h2,.cLdvvd h3{color:#0f0f10;}/*!sc*/
data-styled.g568[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.g569[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.g570[id="sc-lpm061-1"]{content:"iKbbnr,"}/*!sc*/
.fXxDDe{cursor:pointer;}/*!sc*/
data-styled.g571[id="sc-clwny5-0"]{content:"fXxDDe,"}/*!sc*/
.bPlUQW{object-fit:contain;width:100%;}/*!sc*/
data-styled.g572[id="sc-clwny5-1"]{content:"bPlUQW,"}/*!sc*/
.bldxXv{display:block;margin:120px 0 0;}/*!sc*/
@media (max-width:1201px){.bldxXv{margin:100px 0 0;}}/*!sc*/
data-styled.g573[id="sc-1dqpv3v-0"]{content:"bldxXv,"}/*!sc*/
.kxKVxo{width:100%;height:320px;background:#fff;border-radius:20px;padding:24px 32px;}/*!sc*/
@media (max-width:1201px){.kxKVxo{height:200px;padding:16px;}}/*!sc*/
@media (max-width:751px){.kxKVxo{height:260px;}}/*!sc*/
data-styled.g581[id="sc-1ppefnf-1"]{content:"kxKVxo,"}/*!sc*/
.kGpVuA{overflow:hidden;text-overflow:ellipsis;color:#afafaf;white-space:nowrap;}/*!sc*/
@media (max-width:1201px){.kGpVuA{padding-left:4px;}}/*!sc*/
@media (max-width:751px){.kGpVuA{padding-left:0;text-align:center;}}/*!sc*/
data-styled.g582[id="sc-1ppefnf-2"]{content:"kGpVuA,"}/*!sc*/
.flLhIW{width:200px;height:200px;margin:12px auto;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;}/*!sc*/
@media (max-width:1201px){.flLhIW{width:124px;height:124px;margin:8px auto;}}/*!sc*/
@media (max-width:751px){.flLhIW{width:220px;height:220px;}}/*!sc*/
data-styled.g583[id="sc-1ppefnf-3"]{content:"flLhIW,"}/*!sc*/
.olBrH{max-width:100%;max-height:100%;}/*!sc*/
data-styled.g584[id="sc-1ppefnf-4"]{content:"olBrH,"}/*!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.g586[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.g587[id="sc-1oat6ot-1"]{content:"cVgwEc,"}/*!sc*/
.dUkAke{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;width:320px;margin:0 0 0 96px;}/*!sc*/
@media (max-width:1201px){.dUkAke{width:200px;margin:0 0 0 40px;}}/*!sc*/
data-styled.g588[id="sc-1oat6ot-2"]{content:"dUkAke,"}/*!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.g589[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.g590[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.g591[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.g597[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.g598[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.g599[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.g600[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.g601[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.g602[id="sc-ze365z-0"]{content:"jpiMVl,"}/*!sc*/
.RPhWg{margin-bottom:40px;text-align:center;}/*!sc*/
data-styled.g603[id="sc-ze365z-1"]{content:"RPhWg,"}/*!sc*/
.bnqryM{width:416px;}/*!sc*/
@media (max-width:1201px){.bnqryM{width:100%;}}/*!sc*/
data-styled.g605[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.g606[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.g607[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.g608[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.g609[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.g610[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.g612[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.g613[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*/
.iiXtAN{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;margin-right:0;}/*!sc*/
.iiXtAN.swiper-slide{width:224px;}/*!sc*/
@media (max-width:751px){.iiXtAN{padding:12px 16px;border-radius:16px;margin-right:0;}.iiXtAN.swiper-slide{width:120px;height:80px !important;}}/*!sc*/
data-styled.g614[id="sc-x5ajzb-0"]{content:"kbHGLB,iiXtAN,"}/*!sc*/
.bvOTNy{background:url(https://cdn.otus.ru/media/public/82/85/828560e20c494ff7ac73b32ae47dd3ba.webp) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.kvYNbs{background:url(https://cdn.otus.ru/media/public/e5/5f/e55fb1a3c533414db9d1549e996cd54d.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
.hrTZCU{background:url(https://cdn.otus.ru/media/public/85/e1/85e1c6070e114d14aee6a046badf8705.png) no-repeat center;background-size:contain;width:100%;height:100%;}/*!sc*/
data-styled.g615[id="sc-x5ajzb-1"]{content:"bvOTNy,kvYNbs,hrTZCU,"}/*!sc*/
.cawBGv{width:992px;margin:0 auto;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;}/*!sc*/
@media (max-width:751px){.cawBGv{-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;}}/*!sc*/
@media (max-width:1201px){.cawBGv{width:100%;}}/*!sc*/
data-styled.g616[id="sc-2pu6he-0"]{content:"cawBGv,"}/*!sc*/
.hBsuCb{margin-bottom:40px;white-space:normal;margin-right:32px;margin-bottom:0;white-space:break-spaces;}/*!sc*/
@media (max-width:751px){.hBsuCb{margin-bottom:28px;}}/*!sc*/
data-styled.g617[id="sc-2pu6he-1"]{content:"hBsuCb,"}/*!sc*/
.kgryUb{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;gap:24px;}/*!sc*/
data-styled.g618[id="sc-2pu6he-2"]{content:"kgryUb,"}/*!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.g633[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.g634[id="sc-1kuct9n-1"]{content:"jqwyOS,"}/*!sc*/
.cfBLof{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.cfBLof{width:100%;}}/*!sc*/
data-styled.g635[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.g638[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.g640[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.g641[id="sc-ptxdl6-1"]{content:"kyVtIH,"}/*!sc*/
.kVdrfk{padding-top:20px;}/*!sc*/
@media (max-width:751px){.kVdrfk{padding-top:12px;}}/*!sc*/
data-styled.g642[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.g643[id="sc-li015i-0"]{content:"hdRZtB,"}/*!sc*/
.bqYpKB{color:#0f0f10;padding:10px;}/*!sc*/
@media (max-width:751px){.bqYpKB{padding:0;}}/*!sc*/
data-styled.g644[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.g645[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.g646[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.g648[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.g649[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.g650[id="sc-1mszhjn-1"]{content:"kPNZqQ,"}/*!sc*/
.keMPbH{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;margin-right:24px;}/*!sc*/
@media (max-width:751px){.keMPbH{margin-left:40px;}}/*!sc*/
data-styled.g651[id="sc-yfz19-0"]{content:"keMPbH,"}/*!sc*/
.eQxhMw{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:128px;height:128px;background-image:url(https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg);background-position:center center;background-repeat:no-repeat;background-size:cover;border-radius:50%;}/*!sc*/
.bfzQXU{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:128px;height:128px;background-image:url(https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg);background-position:center center;background-repeat:no-repeat;background-size:cover;border-radius:50%;}/*!sc*/
data-styled.g652[id="sc-yfz19-1"]{content:"eQxhMw,bfzQXU,"}/*!sc*/
.jaQEyp{white-space:break-spaces;max-height:96px;overflow:hidden;}/*!sc*/
data-styled.g653[id="sc-2yxsal-0"]{content:"jaQEyp,"}/*!sc*/
.gjkZBp{cursor:pointer;display:inline;padding:0;background:transparent;color:#005ece;font:inherit;}/*!sc*/
data-styled.g654[id="sc-2yxsal-1"]{content:"gjkZBp,"}/*!sc*/
.kpFjsV{position:relative;padding:4px;color:#fff;}/*!sc*/
data-styled.g655[id="sc-1pd1pn6-0"]{content:"kpFjsV,"}/*!sc*/
.jpjsGB{position:absolute;top:1px;right:1px;}/*!sc*/
data-styled.g656[id="sc-1pd1pn6-1"]{content:"jpjsGB,"}/*!sc*/
.gCLUsB{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;padding:24px 64px;color:#0f0f10;}/*!sc*/
@media (max-width:1201px){.gCLUsB{padding:40px 0;}}/*!sc*/
@media (max-width:751px){.gCLUsB{padding:20px 0;}}/*!sc*/
data-styled.g657[id="sc-fgesu2-0"]{content:"gCLUsB,"}/*!sc*/
.fNTfNW{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex:1 0;-ms-flex:1 0;flex:1 0;}/*!sc*/
@media (max-width:1201px){.fNTfNW{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g658[id="sc-fgesu2-1"]{content:"fNTfNW,"}/*!sc*/
.fxDzQc{width:480px;margin-right:24px;}/*!sc*/
@media (max-width:1201px){.fxDzQc{width:100%;margin-right:0;margin-bottom:24px;}}/*!sc*/
@media (max-width:751px){.fxDzQc{margin-bottom:12px;}}/*!sc*/
data-styled.g659[id="sc-fgesu2-2"]{content:"fxDzQc,"}/*!sc*/
.eyMrGT{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
data-styled.g660[id="sc-fgesu2-3"]{content:"eyMrGT,"}/*!sc*/
.fGVXtz{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;-ms-flex:1 0;flex:1 0;}/*!sc*/
data-styled.g661[id="sc-fgesu2-4"]{content:"fGVXtz,"}/*!sc*/
.gLvmdB{margin-bottom:12px;}/*!sc*/
@media (max-width:751px){.gLvmdB{margin-bottom:8px;}}/*!sc*/
data-styled.g662[id="sc-fgesu2-5"]{content:"gLvmdB,"}/*!sc*/
.keqBcC{margin-bottom:12px;}/*!sc*/
data-styled.g663[id="sc-fgesu2-6"]{content:"keqBcC,"}/*!sc*/
.eaisXT{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:1201px){.eaisXT{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;}}/*!sc*/
@media (max-width:751px){.eaisXT{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g664[id="sc-fgesu2-7"]{content:"eaisXT,"}/*!sc*/
.cAsFre{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-bottom:24px;}/*!sc*/
@media (max-width:1201px){.cAsFre{margin-bottom:0;margin-right:24px;}}/*!sc*/
@media (max-width:751px){.cAsFre{-webkit-flex-direction:row;-ms-flex-direction:row;flex-direction:row;margin-bottom:24px;margin-right:0;}}/*!sc*/
data-styled.g665[id="sc-fgesu2-8"]{content:"cAsFre,"}/*!sc*/
.cLaaQZ{font-weight:700;margin-bottom:8px;}/*!sc*/
@media (max-width:1201px){.cLaaQZ{margin-bottom:4px;}}/*!sc*/
@media (max-width:751px){.cLaaQZ{margin-bottom:0;margin-right:24px;}}/*!sc*/
data-styled.g666[id="sc-fgesu2-9"]{content:"cLaaQZ,"}/*!sc*/
.hIqDgT{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;margin:0 0 0 auto;}/*!sc*/
@media (max-width:751px){.hIqDgT{margin:0;}}/*!sc*/
data-styled.g667[id="sc-fgesu2-10"]{content:"hIqDgT,"}/*!sc*/
.fPQjfN{width:240px;margin-right:24px;}/*!sc*/
@media (max-width:1201px){.fPQjfN{width:164px;}}/*!sc*/
@media (max-width:751px){.fPQjfN{width:248px;}}/*!sc*/
data-styled.g668[id="sc-fgesu2-11"]{content:"fPQjfN,"}/*!sc*/
.dgeiLf{-webkit-flex-shrink:0;-ms-flex-negative:0;flex-shrink:0;}/*!sc*/
data-styled.g671[id="sc-fgesu2-14"]{content:"dgeiLf,"}/*!sc*/
.kTlAtn{margin-bottom:80px;color:#0f0f10;}/*!sc*/
data-styled.g672[id="sc-1n8zn8-0"]{content:"kTlAtn,"}/*!sc*/
.eVtlSO h2{font:inherit;margin-bottom:24px;}/*!sc*/
@media (max-width:1201px){.eVtlSO h2{margin-bottom:18px;}}/*!sc*/
@media (max-width:751px){.eVtlSO h2{margin-bottom:24px;}}/*!sc*/
data-styled.g673[id="sc-1n8zn8-1"]{content:"eVtlSO,"}/*!sc*/
.djvzct{margin-bottom:40px;}/*!sc*/
@media (max-width:751px){.djvzct{margin-bottom:60px;}}/*!sc*/
data-styled.g674[id="sc-1n8zn8-2"]{content:"djvzct,"}/*!sc*/
.bNPdJC{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.bNPdJC{width:100%;}}/*!sc*/
data-styled.g675[id="sc-1n8zn8-3"]{content:"bNPdJC,"}/*!sc*/
.eruVPL{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.g676[id="sc-1n8zn8-4"]{content:"eruVPL,"}/*!sc*/
.hVfuYc{color:#0f0f10;padding:40px 96px;width:992px;}/*!sc*/
@media (max-width:1201px){.hVfuYc{width:688px;padding:40px 46px;}}/*!sc*/
@media (max-width:751px){.hVfuYc{width:100%;padding:76px 20px;}}/*!sc*/
data-styled.g677[id="sc-1n8zn8-5"]{content:"hVfuYc,"}/*!sc*/
.gwYuWO.gwYuWO{width:416px;}/*!sc*/
@media (max-width:751px){.gwYuWO.gwYuWO{width:100%;}}/*!sc*/
data-styled.g678[id="sc-kixk9v-0"]{content:"gwYuWO,"}/*!sc*/
.dgWykw{margin-left:8px;}/*!sc*/
data-styled.g679[id="sc-3cb1l3-0"]{content:"dgWykw,"}/*!sc*/
.galmep{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;background-color:#fff;width:992px;height:64px;margin:40px auto 0;padding:16px 20px;border-radius:20px;}/*!sc*/
@media (max-width:1201px){.galmep{width:100%;height:auto;padding:16px 24px;}}/*!sc*/
@media (max-width:751px){.galmep{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-top:48px;padding:24px 12px;}}/*!sc*/
data-styled.g680[id="sc-3cb1l3-1"]{content:"galmep,"}/*!sc*/
.jeNzke{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-flex:1;-ms-flex:1;flex:1;margin:auto 0;}/*!sc*/
@media (max-width:1201px){.jeNzke{-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;}}/*!sc*/
@media (max-width:751px){.jeNzke{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g682[id="sc-3cb1l3-3"]{content:"jeNzke,"}/*!sc*/
.kGoYMV{color:#0f0f10;position:relative;-webkit-align-items:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-webkit-flex-grow:1;-ms-flex-positive:1;flex-grow:1;padding:0 20px;-webkit-box-pack:center;-webkit-justify-content:center;-ms-flex-pack:center;justify-content:center;}/*!sc*/
.kGoYMV:after{content:'';background-color:#afafaf;height:24px;width:1px;position:absolute;top:50%;left:0;-webkit-transform:translateY(-50%);-ms-transform:translateY(-50%);transform:translateY(-50%);}/*!sc*/
.kGoYMV:first-child:after{display:none;}/*!sc*/
@media (max-width:1201px){.kGoYMV{-webkit-flex:1 0 50%;-ms-flex:1 0 50%;flex:1 0 50%;max-width:50%;-webkit-box-pack:start;-webkit-justify-content:flex-start;-ms-flex-pack:start;justify-content:flex-start;margin-top:32px;}.kGoYMV:after{display:none;}.kGoYMV:nth-child(-n + 2){margin-top:0;}}/*!sc*/
@media (max-width:751px){.kGoYMV{-webkit-flex:1 0 100%;-ms-flex:1 0 100%;flex:1 0 100%;max-width:100%;margin-top:24px;}.kGoYMV:nth-child(-n + 2){margin-top:24px;}.kGoYMV:first-child{margin-top:0;}}/*!sc*/
data-styled.g683[id="sc-3cb1l3-4"]{content:"kGoYMV,"}/*!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.g686[id="sc-1vxm7ng-0"]{content:"golIF,"}/*!sc*/
.dbOiAN{margin:0 16px;}/*!sc*/
data-styled.g687[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.g688[id="sc-1vxm7ng-2"]{content:"jxmQOK,"}/*!sc*/
.ivApKl{display:inline;margin-left:16px;background-size:12px 1px;background-repeat:repeat-x;background-position:0 100%;background-image:linear-gradient( to right,#fff 50%,rgba(255,255,255,0) 0% );padding-bottom:4px;white-space:nowrap;}/*!sc*/
data-styled.g689[id="sc-5am0g3-0"]{content:"ivApKl,"}/*!sc*/
.eFljfP{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;cursor:pointer;margin:0 12px 20px;}/*!sc*/
@media (min-width:1200px){.eFljfP:hover .sc-5am0g3-0{color:#ffd709;background-image:linear-gradient( to right,#ffd709 50%,rgba(255,255,255,0) 0% );}}/*!sc*/
@media (max-width:1201px){.eFljfP{margin:0 12px 12px;}}/*!sc*/
@media (max-width:751px){}/*!sc*/
data-styled.g690[id="sc-5am0g3-1"]{content:"eFljfP,"}/*!sc*/
.kHeeQv{max-width:260px;padding:20px 24px;text-align:center;}/*!sc*/
@media (max-width:751px){.kHeeQv{max-width:calc(100% - 32px);width:100%;}.kHeeQv[data-popper-placement^='bottom-end']::before{right:44px;}}/*!sc*/
data-styled.g691[id="sc-5am0g3-2"]{content:"kHeeQv,"}/*!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.g697[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.g698[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.g699[id="sc-4o7hfp-2"]{content:"fHVRxg,"}/*!sc*/
.pkSWX{color:#ffd709;}/*!sc*/
data-styled.g701[id="sc-4o7hfp-4"]{content:"pkSWX,"}/*!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.g703[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.g704[id="sc-s2pydo-1"]{content:"diGrSa,"}/*!sc*/
.erpfAz{margin-bottom:24px;height:80px;width:80px;background-image:url(https://cdn.otus.ru/media/public/61/26/6126879dcb50459b9c399815578b64fb.svg);background-repeat:no-repeat;background-size:100% 100%;}/*!sc*/
@media (max-width:1201px){.erpfAz{margin-bottom:40px;}}/*!sc*/
@media (max-width:751px){.erpfAz{margin-bottom:24px;}}/*!sc*/
data-styled.g705[id="sc-s2pydo-2"]{content:"erpfAz,"}/*!sc*/
.dZDxRw{width:640px;margin-bottom:40px;text-align:center;}/*!sc*/
@media (max-width:751px){.dZDxRw{margin-bottom:24px;width:100%;}}/*!sc*/
data-styled.g706[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.g708[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.g709[id="sc-s2pydo-5"]{content:"iHjMxQ,"}/*!sc*/
.fYPwsY.fYPwsY{width:480px;}/*!sc*/
@media (max-width:1201px){.fYPwsY.fYPwsY{width:100%;}}/*!sc*/
data-styled.g710[id="sc-n3p609-0"]{content:"fYPwsY,"}/*!sc*/
.caypgj{margin-bottom:32px;}/*!sc*/
data-styled.g711[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.g713[id="sc-1l3meww-0"]{content:"gAbnmq,"}/*!sc*/
.eOpbvi{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-68.userapi.com/impg/dbEoJI19M5UFo7kRuVG-CpsWDMrlGNoR6DCPww/cPboLxeIqYI.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=b46e4970eda5a46b13c1034874fdeecb&c_uniq_tag=qeJ9vxPzvQKFxo4lfkATP0ugLS9cDOV-wNVJvkDQT30&type=video_thumb);background-position:center center;background-repeat:no-repeat;background-size:cover;cursor:pointer;}/*!sc*/
@media (max-width:1201px){.eOpbvi{margin-right:40px;}}/*!sc*/
@media (max-width:751px){.eOpbvi{margin-right:0;margin-bottom:12px;width:320px;height:177px;}}/*!sc*/
.dpLJlj{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-25.userapi.com/impg/bHS3J64pfIOxQySCxTrXpd05CrQ-R6yMxiUC8g/jTaUs7TJVI0.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=fce91b827a70c7c0be10f16cf43dc254&c_uniq_tag=DqRhfOoLiFAYsVR25oL0y_nDgBnEUw1CxE3r6UJeX-o&type=video_thumb);background-position:center center;background-repeat:no-repeat;background-size:cover;cursor:pointer;}/*!sc*/
@media (max-width:1201px){.dpLJlj{margin-right:40px;}}/*!sc*/
@media (max-width:751px){.dpLJlj{margin-right:0;margin-bottom:12px;width:320px;height:177px;}}/*!sc*/
data-styled.g714[id="sc-1l3meww-1"]{content:"eOpbvi,dpLJlj,"}/*!sc*/
.cHxJxf{width:192px;}/*!sc*/
@media (max-width:1201px){.cHxJxf{width:320px;}}/*!sc*/
data-styled.g715[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.g716[id="sc-1l3meww-3"]{content:"blhXzJ,"}/*!sc*/
.dePnfm{margin-bottom:12px;}/*!sc*/
@media (max-width:1201px){.dePnfm{margin-bottom:8px;}}/*!sc*/
data-styled.g717[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.g718[id="sc-1l3meww-5"]{content:"gnNvLT,"}/*!sc*/
.hkpcCk{color:#fff;}/*!sc*/
data-styled.g720[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.g721[id="sc-g9zqla-0"]{content:"frFtzw,"}/*!sc*/
.jqTCqB{margin-bottom:40px;}/*!sc*/
@media (max-width:751px){.jqTCqB{margin-bottom:24px;}}/*!sc*/
data-styled.g722[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.g723[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.g724[id="sc-g9zqla-3"]{content:"cmzqGo,"}/*!sc*/
.yFPt{font-size:16px;line-height:24px;font-weight:700;padding:12px 32px;cursor:pointer;border-radius:100px;color:#000;background:transparent;white-space:nowrap;-webkit-tap-highlight-color:transparent;cursor:default;background:#ffd709;}/*!sc*/
@media (max-width:751px){.yFPt{font-size:14px;line-height:20px;font-weight:700;padding:12px 24px;}}/*!sc*/
.hubLMz{font-size:16px;line-height:24px;font-weight:700;padding:12px 32px;cursor:pointer;border-radius:100px;color:#000;background:transparent;white-space:nowrap;-webkit-tap-highlight-color:transparent;}/*!sc*/
@media (max-width:751px){.hubLMz{font-size:14px;line-height:20px;font-weight:700;padding:12px 24px;}}/*!sc*/
data-styled.g764[id="sc-zkx93-0"]{content:"yFPt,hubLMz,"}/*!sc*/
.gPfNRv{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content;background:#fff;border-radius:100px;}/*!sc*/
data-styled.g765[id="sc-t8narm-0"]{content:"gPfNRv,"}/*!sc*/
.gosVbC{margin:0 0 35px;}/*!sc*/
@media (max-width:1201px){.gosVbC{margin:0 0 40px;}}/*!sc*/
@media (max-width:751px){.gosVbC{margin:0 0 24px;}}/*!sc*/
data-styled.g766[id="sc-1peufw-0"]{content:"gosVbC,"}/*!sc*/
.lYQex{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-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin:12px 0 30px;}/*!sc*/
@media (max-width:751px){.lYQex{-webkit-align-items:flex-start;-webkit-box-align:flex-start;-ms-flex-align:flex-start;align-items:flex-start;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
@media (max-width:751px){.lYQex{margin:10px 0 24px;}}/*!sc*/
data-styled.g767[id="sc-1peufw-1"]{content:"lYQex,"}/*!sc*/
.iKtgdB{font-family:'IBM Plex Sans','Roboto',sans-serif;height:48px;}/*!sc*/
@media (max-width:751px){.iKtgdB{height:36px;}}/*!sc*/
data-styled.g768[id="sc-1peufw-2"]{content:"iKtgdB,"}/*!sc*/
.iLnntQ{position:relative;bottom:-8px;font-size:25px;}/*!sc*/
@media (max-width:751px){.iLnntQ{bottom:-6px;font-size:19px;}}/*!sc*/
data-styled.g770[id="sc-1peufw-4"]{content:"iLnntQ,"}/*!sc*/
.dAAQHW{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin-bottom:24px;}/*!sc*/
data-styled.g771[id="sc-147fm2r-0"]{content:"dAAQHW,"}/*!sc*/
.cnspAU{margin-right:24px;}/*!sc*/
data-styled.g772[id="sc-147fm2r-1"]{content:"cnspAU,"}/*!sc*/
.ewmmcs{border-top:1px solid #fff;margin-bottom:24px;width:288px;}/*!sc*/
@media (max-width:1201px){.ewmmcs{width:100%;}}/*!sc*/
data-styled.g773[id="sc-1r0uxxj-0"]{content:"ewmmcs,"}/*!sc*/
.bPBPRV{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;color:#fff;}/*!sc*/
data-styled.g774[id="sc-1r0uxxj-1"]{content:"bPBPRV,"}/*!sc*/
.eewVHU{display:none;}/*!sc*/
@media (max-width:751px){.eewVHU{display:block;}}/*!sc*/
data-styled.g775[id="sc-1r0uxxj-2"]{content:"eewVHU,"}/*!sc*/
.kMVdSV{position:relative;cursor:pointer;}/*!sc*/
.kMVdSV:after{content:'';position:absolute;bottom:1px;left:0;width:100%;height:1px;border-bottom:1px solid #fff;}/*!sc*/
data-styled.g776[id="sc-1r0uxxj-3"]{content:"kMVdSV,"}/*!sc*/
.hgTHTJ{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.g777[id="sc-10kui61-0"]{content:"hgTHTJ,"}/*!sc*/
.gEGbfQ{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;margin-bottom:60px;}/*!sc*/
@media (max-width:751px){.gEGbfQ{-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;-webkit-flex-wrap:wrap;-ms-flex-wrap:wrap;flex-wrap:wrap;width:100%;margin-bottom:52px;}}/*!sc*/
data-styled.g778[id="sc-10kui61-1"]{content:"gEGbfQ,"}/*!sc*/
.bpPrAe{margin-bottom:36px;}/*!sc*/
@media (max-width:1201px){.bpPrAe{display:none;}}/*!sc*/
data-styled.g779[id="sc-10kui61-2"]{content:"bpPrAe,"}/*!sc*/
.bTFiyu{-webkit-flex:1 0 416px;-ms-flex:1 0 416px;flex:1 0 416px;margin-left:96px;}/*!sc*/
@media (max-width:1201px){.bTFiyu{-webkit-flex-basis:100%;-ms-flex-preferred-size:100%;flex-basis:100%;margin-left:0;}}/*!sc*/
data-styled.g780[id="sc-7ugo7y-0"]{content:"bTFiyu,"}/*!sc*/
.iOYphy{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;padding:40px 32px;background:#fff;color:#0f0f10;border-radius:20px;}/*!sc*/
@media (max-width:751px){.iOYphy{padding:20px 16px;}}/*!sc*/
data-styled.g781[id="sc-7ugo7y-1"]{content:"iOYphy,"}/*!sc*/
.jFFNWn{margin-top:20px;}/*!sc*/
data-styled.g787[id="sc-ne2nun-0"]{content:"jFFNWn,"}/*!sc*/
.cWqojy{color:#4749c0;position:relative;background:none;padding:0;cursor:pointer;}/*!sc*/
.cWqojy:hover{-webkit-text-decoration:underline;text-decoration:underline;}/*!sc*/
.cWqojy:active{color:#585cff;-webkit-text-decoration:none;text-decoration:none;}/*!sc*/
data-styled.g789[id="sc-ne2nun-2"]{content:"cWqojy,"}/*!sc*/
.kgGhBx{margin-bottom:12px;}/*!sc*/
data-styled.g792[id="sc-1u84tez-2"]{content:"kgGhBx,"}/*!sc*/
.lcNwWc{margin-bottom:20px;}/*!sc*/
data-styled.g793[id="sc-1u84tez-3"]{content:"lcNwWc,"}/*!sc*/
.VNvrk{width:992px;}/*!sc*/
@media (max-width:1201px){.VNvrk{width:100%;}}/*!sc*/
data-styled.g795[id="sc-mgf5g0-0"]{content:"VNvrk,"}/*!sc*/
.cGuqjL{position:relative;height:auto;margin-bottom:120px;padding:160px 0 200px;color:#fff;}/*!sc*/
@media (max-width:751px){.cGuqjL{margin-bottom:92px;padding:136px 0;}}/*!sc*/
data-styled.g796[id="sc-mgf5g0-1"]{content:"cGuqjL,"}/*!sc*/
.gOxNxa{height:80px;width:80px;background-image:url(https://cdn.otus.ru/media/public/61/26/6126879dcb50459b9c399815578b64fb.svg);background-repeat:no-repeat;background-size:100% 100%;margin-right:24px;}/*!sc*/
@media (max-width:751px){.gOxNxa{margin-right:0;margin-bottom:16px;}}/*!sc*/
data-styled.g797[id="sc-mgf5g0-2"]{content:"gOxNxa,"}/*!sc*/
.iMmpz{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-bottom:60px;}/*!sc*/
@media (max-width:1201px){.iMmpz{margin-bottom:80px;}}/*!sc*/
@media (max-width:751px){.iMmpz{-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;margin-bottom:40px;}}/*!sc*/
data-styled.g798[id="sc-mgf5g0-3"]{content:"iMmpz,"}/*!sc*/
.cIkHKG{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;}/*!sc*/
@media (max-width:1201px){.cIkHKG{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g799[id="sc-mgf5g0-4"]{content:"cIkHKG,"}/*!sc*/
.cHLoOP{text-align:center;}/*!sc*/
data-styled.g800[id="sc-mgf5g0-5"]{content:"cHLoOP,"}/*!sc*/
.kiGnqS{margin-top:40px;display:none;}/*!sc*/
@media (max-width:1201px){.kiGnqS{display:inherit;}}/*!sc*/
data-styled.g801[id="sc-mgf5g0-6"]{content:"kiGnqS,"}/*!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.g802[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.g803[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.g804[id="sc-hqry8z-2"]{content:"ipIyzP,"}/*!sc*/
.kGaApg:not(:last-child){margin-bottom:24px;}/*!sc*/
data-styled.g805[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.g807[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.g808[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.g809[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.g816[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.g817[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.g818[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.g819[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.g820[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.g821[id="sc-130tum6-1"]{content:"leLsGR,"}/*!sc*/
.ervbDS{margin:0 12px 0 0;}/*!sc*/
.ervbDS:last-child{margin:0;}/*!sc*/
data-styled.g842[id="sc-e8trbg-0"]{content:"ervbDS,"}/*!sc*/
.hejpaX{color:#afafaf;}/*!sc*/
data-styled.g843[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.g844[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.g845[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.g846[id="sc-h3yero-2"]{content:"dOvyBf,"}/*!sc*/
.keJcdl{margin-right:24px;}/*!sc*/
data-styled.g847[id="sc-h3yero-3"]{content:"keJcdl,"}/*!sc*/
.fYjVOV{width:88px;height:88px;border-radius:50%;background-image:url(https://cdn.otus.ru/media/public/34/ec/avatar-377284-34ec2c.png);background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:751px){.fYjVOV{width:60px;height:60px;}}/*!sc*/
.kqzmBY{width:88px;height:88px;border-radius:50%;background-image:url(https://cdn.otus.ru/media/public/64/32/avatar-1801-6432cf.png);background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:751px){.kqzmBY{width:60px;height:60px;}}/*!sc*/
.hImlPT{width:88px;height:88px;border-radius:50%;background-image:url(https://cdn.otus.ru/media/public/28/5b/avatar-504527-285bf5.png);background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:751px){.hImlPT{width:60px;height:60px;}}/*!sc*/
.klBgTO{width:88px;height:88px;border-radius:50%;background-image:url(https://cdn.otus.ru/media/public/5c/23/avatar-1801-5c2352.png);background-repeat:no-repeat;background-size:cover;}/*!sc*/
@media (max-width:751px){.klBgTO{width:60px;height:60px;}}/*!sc*/
data-styled.g848[id="sc-h3yero-4"]{content:"fYjVOV,kqzmBY,hImlPT,klBgTO,"}/*!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.g849[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.g850[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.g852[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.g854[id="sc-h0c1ca-0"]{content:"dXezGA,"}/*!sc*/
@media (min-width:1200px){.gaiDWC{margin:-16px -16px 0;}}/*!sc*/
data-styled.g855[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.g858[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.g859[id="sc-h0c1ca-5"]{content:"vuxta,"}/*!sc*/
.fcMdHy{background-image:url(https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.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){.fcMdHy: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*/
.bcMPLS{background-image:url(https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.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){.bcMPLS: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.g860[id="sc-jotj87-0"]{content:"fcMdHy,bcMPLS,"}/*!sc*/
.llfUGX{cursor:pointer;position:relative;width:256px;height:380px;cursor:default;}/*!sc*/
@media (max-width:1201px){.llfUGX{width:172px;height:255px;}}/*!sc*/
@media (max-width:751px){.llfUGX{width:136px;height:200px;}}/*!sc*/
data-styled.g861[id="sc-jotj87-1"]{content:"llfUGX,"}/*!sc*/
.fhizvJ{color:#fff;position:absolute;top:16px;left:16px;z-index:1;will-change:background-color,padding,border-radius,transform;border-radius:20px;background-color:#25b969;padding:4px 8px;}/*!sc*/
@media (max-width:751px){.fhizvJ{padding:2px 6px;top:5px;left:5px;right:5px;}}/*!sc*/
data-styled.g865[id="sc-jotj87-5"]{content:"fhizvJ,"}/*!sc*/
.ikwDNo{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:24px 0 0;}/*!sc*/
@media (max-width:1201px){.ikwDNo{-webkit-flex-direction:column;-ms-flex-direction:column;flex-direction:column;}}/*!sc*/
data-styled.g870[id="sc-1qbysh1-0"]{content:"ikwDNo,"}/*!sc*/
.jeXkAk{display:-webkit-box;display:-webkit-flex;display:-ms-flexbox;display:flex;margin:0 32px 0 0;}/*!sc*/
.jeXkAk:last-child{margin-right:0;}/*!sc*/
@media (max-width:1201px){.jeXkAk{margin-right:0;margin-bottom:24px;}}/*!sc*/
@media (max-width:751px){.jeXkAk{margin-bottom:12px;}}/*!sc*/
data-styled.g871[id="sc-1qbysh1-1"]{content:"jeXkAk,"}/*!sc*/
.fwfLnF{margin-left:12px;}/*!sc*/
data-styled.g872[id="sc-1qbysh1-2"]{content:"fwfLnF,"}/*!sc*/
.ejZqaz{display:grid;grid-template-rows:min-content auto;gap:24px 64px;grid-template-areas:'a b' 'a b';grid-template-columns:min-content auto;}/*!sc*/
@media (max-width:1201px){.ejZqaz{grid-template-areas:'a b' 'c c';grid-template-columns:min-content auto;gap:24px;}}/*!sc*/
.fyaSEb{display:grid;grid-template-rows:min-content auto;gap:24px 64px;grid-template-areas:'b a' 'b a';grid-template-columns:auto min-content;}/*!sc*/
@media (max-width:1201px){.fyaSEb{grid-template-areas:'b a' 'c c';grid-template-columns:auto min-content;gap:24px;}}/*!sc*/
data-styled.g873[id="sc-1xbggqf-0"]{content:"ejZqaz,fyaSEb,"}/*!sc*/
.gKEGyD{grid-area:a;}/*!sc*/
data-styled.g874[id="sc-1xbggqf-1"]{content:"gKEGyD,"}/*!sc*/
@media (max-width:751px){.fnEOTo{width:100%;}}/*!sc*/
data-styled.g875[id="sc-1xbggqf-2"]{content:"fnEOTo,"}/*!sc*/
.ilGgzP{margin:8px 0 0;}/*!sc*/
data-styled.g876[id="sc-1xbggqf-3"]{content:"ilGgzP,"}/*!sc*/
.bqxXZo{font-style:italic;margin:8px 0 0;}/*!sc*/
data-styled.g877[id="sc-1xbggqf-4"]{content:"bqxXZo,"}/*!sc*/
.jdBfaz{overflow:auto;padding:0 15px 0 0;}/*!sc*/
@media (max-width:1201px){.jdBfaz{grid-area:c;}}/*!sc*/
data-styled.g878[id="sc-1xbggqf-5"]{content:"jdBfaz,"}/*!sc*/
.bsOVrL{white-space:break-spaces;margin:0 0 40px;}/*!sc*/
@media (max-width:1201px){.bsOVrL{margin:0 0 24px;}}/*!sc*/
@media (max-width:751px){.bsOVrL{margin:0 0 40px;}}/*!sc*/
data-styled.g879[id="sc-1xbggqf-6"]{content:"bsOVrL,"}/*!sc*/
.gwAjdk{margin-bottom:24px;}/*!sc*/
data-styled.g881[id="sc-1xbggqf-8"]{content:"gwAjdk,"}/*!sc*/
.gShPHD{margin:-24px 0 32px;padding:0;overflow:hidden;margin-bottom:0;margin-top:0;}/*!sc*/
data-styled.g882[id="sc-1xbggqf-9"]{content:"gShPHD,"}/*!sc*/
.jyEMds{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:0 0 12px;color:#fff;}/*!sc*/
@media (max-width:1201px){.jyEMds{font-size:18px;line-height:24px;}}/*!sc*/
@media (max-width:751px){.jyEMds{font-size:16px;line-height:24px;}}/*!sc*/
.jyEMds:last-child{margin-bottom:0;}/*!sc*/
.jyEMds::before{content:'•';position:absolute;top:0;left:0;color:#005ece;font-size:39px;line-height:26px;}/*!sc*/
.jyEMds:before{color:currentColor;}/*!sc*/
data-styled.g883[id="sc-1xbggqf-10"]{content:"jyEMds,"}/*!sc*/
.iJNhSn{width:992px;margin:0 auto;}/*!sc*/
@media (max-width:1201px){.iJNhSn{width:100%;}}/*!sc*/
data-styled.g884[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.g885[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.g886[id="sc-7bqyxh-2"]{content:"imGcoX,"}/*!sc*/
.ejfgvS{margin-bottom:60px;}/*!sc*/
@media (max-width:1201px){.ejfgvS{margin-bottom:76px;}}/*!sc*/
@media (max-width:751px){.ejfgvS{margin-bottom:40px;}}/*!sc*/
data-styled.g887[id="sc-7bqyxh-3"]{content:"ejfgvS,"}/*!sc*/
.jUXBik{position:relative;width:992px;}/*!sc*/
.jUXBik::before{content:'';display:block;width:288px;height:1px;margin:0 0 24px;background:#fff;}/*!sc*/
@media (max-width:1201px){.jUXBik{width:100%;}}/*!sc*/
@media (max-width:751px){.jUXBik{width:100%;}}/*!sc*/
data-styled.g888[id="sc-7bqyxh-4"]{content:"jUXBik,"}/*!sc*/
.kaSYYd{padding:80px 0;color:#fff;border-bottom:1px solid #ffffff;}/*!sc*/
.kaSYYd:first-child{padding-top:0;}/*!sc*/
.kaSYYd:last-child{margin-bottom:80px;border-bottom:none;}/*!sc*/
@media (max-width:1201px){.kaSYYd:last-child{margin-bottom:40px;}}/*!sc*/
data-styled.g890[id="sc-7bqyxh-6"]{content:"kaSYYd,"}/*!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.g891[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.g893[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.g894[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.g895[id="sc-nqd633-0"]{content:"bbEYfR,"}/*!sc*/
</style></head><body><div id="__next"><script type="application/ld+json">{
"@context": "http://schema.org",
"@type": "Course",
"name": "Scala-разработчик",
"url": "https://otus.ru",
"logo": "https://otus.ru/__new_static__/img/meta-image.png",
"sameAs": [
"https://vk.com/otusru",
"https://t.me/Otusjava"
],
"description": "Углубленный курс по Scala, в котором вы получите практические знания в популярных технологиях Scala, подходах функционального программирования и познакомитесь с самыми мощными Scala-библиотеками. Курс рассчитан на Java-разработчиков с опыт…",
"provider": {
"@type": "Organization",
"name": "OTUS",
"sameAs": "https://otus.ru"
},
"image": "https://otus.ru/__new_static__/img/meta-image.png",
"aggregateRating": {
"@type": "AggregateRating",
"ratingValue": "4.7",
"ratingCount": "150"
},
"offers": {
"@type": "Offer",
"priceCurrency": "RUB",
"price": 65000,
"availability": "https://schema.org/InStock",
"url": "https://otus.ru/lessons/scala"
},
"hasCourseInstance": {
"@type": "CourseInstance",
"name": "Scala-разработчик (Онлайн)",
"courseMode": "Online",
"startDate": "2026-04-29",
"endDate": "2026-10-23",
"duration": "P6M"
}
}</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(#087076426b1b62b5522cc0ea)"></path><defs><linearGradient id="087076426b1b62b5522cc0ea" 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(#3ea8002098f8cf14d0f00a54)"></path><defs><linearGradient id="3ea8002098f8cf14d0f00a54" 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>Scala-разработчик</span></div></div><div class="sc-4o7hfp-1 eBROUt"><div class="sc-4o7hfp-2 fHVRxg"><div class="sc-5am0g3-1 eFljfP"><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-4o7hfp-4 pkSWX"><path d="M17.9185 14.32C17.6595 14.571 17.5405 14.934 17.5995 15.29L18.4885 20.21C18.5635 20.627 18.3875 21.049 18.0385 21.29C17.6965 21.54 17.2415 21.57 16.8685 21.37L12.4395 19.06C12.2855 18.978 12.1145 18.934 11.9395 18.929H11.6685C11.5745 18.943 11.4825 18.973 11.3985 19.019L6.96851 21.34C6.74951 21.45 6.50151 21.489 6.25851 21.45C5.66651 21.338 5.27151 20.774 5.36851 20.179L6.25851 15.259C6.31751 14.9 6.19851 14.535 5.93951 14.28L2.32851 10.78C2.02651 10.487 1.92151 10.047 2.05951 9.65C2.19351 9.254 2.53551 8.965 2.94851 8.9L7.91851 8.179C8.29651 8.14 8.62851 7.91 8.79851 7.57L10.9885 3.08C11.0405 2.98 11.1075 2.888 11.1885 2.81L11.2785 2.74C11.3255 2.688 11.3795 2.645 11.4395 2.61L11.5485 2.57L11.7185 2.5H12.1395C12.5155 2.539 12.8465 2.764 13.0195 3.1L15.2385 7.57C15.3985 7.897 15.7095 8.124 16.0685 8.179L21.0385 8.9C21.4585 8.96 21.8095 9.25 21.9485 9.65C22.0795 10.051 21.9665 10.491 21.6585 10.78L17.9185 14.32Z" fill="currentColor"></path></svg><p class="sc-1x9oq14-0 sc-5am0g3-0 krJlll ivApKl">Курс обновлен</p></div></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 erpfAz"></div><h1 class="sc-1x9oq14-0 sc-s2pydo-1 kswXpy diGrSa">Scala-разработчик</h1><div class="sc-1x9oq14-0 sc-s2pydo-3 enpOeQ dZDxRw"><p><strong>Best Practice по Scala, подходам функционального программирования и самым мощным Scala-библиотекам</strong></p></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="M9.5 12.5537C12.2546 12.5537 14.4626 10.3171 14.4626 7.52684C14.4626 4.73663 12.2546 2.5 9.5 2.5C6.74543 2.5 4.53737 4.73663 4.53737 7.52684C4.53737 10.3171 6.74543 12.5537 9.5 12.5537ZM9.5 15.0152C5.45422 15.0152 2 15.6621 2 18.2464C2 20.8298 5.4332 21.5 9.5 21.5C13.5448 21.5 17 20.8531 17 18.2687C17 15.6844 13.5668 15.0152 9.5 15.0152ZM19.8979 9.58786H21.101C21.5962 9.58786 22 9.99731 22 10.4995C22 11.0016 21.5962 11.4111 21.101 11.4111H19.8979V12.5884C19.8979 13.0906 19.4952 13.5 18.999 13.5C18.5038 13.5 18.1 13.0906 18.1 12.5884V11.4111H16.899C16.4027 11.4111 16 11.0016 16 10.4995C16 9.99731 16.4027 9.58786 16.899 9.58786H18.1V8.41162C18.1 7.90945 18.5038 7.5 18.999 7.5C19.4952 7.5 19.8979 7.90945 19.8979 8.41162V9.58786Z" fill="currentColor"></path></svg></button></div></div></div><div class="sc-x072mc-0 sc-3cb1l3-1 hOtCic galmep"><div class="sc-3cb1l3-3 jeNzke"><div class="sc-3cb1l3-4 kGoYMV"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><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><p class="sc-1x9oq14-0 sc-3cb1l3-0 doSDez dgWykw">29 апреля</p></div><div class="sc-3cb1l3-4 kGoYMV"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.4109 2.76862L16.4119 3.51824C19.1665 3.73414 20.9862 5.6112 20.9891 8.48975L21 16.9155C21.0039 20.054 19.0322 21.985 15.8718 21.99L8.15189 22C5.0112 22.004 3.01482 20.027 3.01087 16.8796L3.00001 8.55272C2.99606 5.65517 4.75153 3.78311 7.50618 3.53024L7.50519 2.78061C7.5042 2.34083 7.83002 2.01 8.26445 2.01C8.69887 2.009 9.02469 2.33883 9.02568 2.77861L9.02666 3.47826L14.8914 3.47027L14.8904 2.77062C14.8894 2.33084 15.2152 2.001 15.6497 2C16.0742 1.99901 16.4099 2.32884 16.4109 2.76862ZM4.52149 8.86157L19.4696 8.84158V8.49175C19.4272 6.34283 18.349 5.21539 16.4139 5.04748L16.4148 5.81709C16.4148 6.24688 16.0801 6.58771 15.6556 6.58771C15.2212 6.58871 14.8944 6.24888 14.8944 5.81909L14.8934 5.0095L9.02864 5.01749L9.02962 5.82609C9.02962 6.25687 8.70479 6.5967 8.27037 6.5967C7.83595 6.5977 7.50914 6.25887 7.50914 5.82809L7.50815 5.05847C5.58286 5.25138 4.51754 6.38281 4.5205 8.55072L4.52149 8.86157ZM15.2399 13.4043V13.4153C15.2498 13.8751 15.625 14.2239 16.0801 14.2139C16.5244 14.2029 16.8789 13.8221 16.869 13.3623C16.8483 12.9225 16.4918 12.5637 16.0485 12.5647C15.5944 12.5747 15.2389 12.9445 15.2399 13.4043ZM16.0554 17.892C15.6013 17.882 15.235 17.5032 15.234 17.0435C15.2241 16.5837 15.5884 16.2029 16.0426 16.1919H16.0525C16.5165 16.1919 16.8927 16.5707 16.8927 17.0405C16.8937 17.5102 16.5185 17.891 16.0554 17.892ZM11.1721 13.4203C11.1919 13.8801 11.568 14.2389 12.0222 14.2189C12.4665 14.1979 12.821 13.8181 12.8012 13.3583C12.7904 12.9085 12.425 12.5587 11.9807 12.5597C11.5266 12.5797 11.1711 12.9605 11.1721 13.4203ZM12.0262 17.8471C11.572 17.8671 11.1968 17.5082 11.1761 17.0485C11.1761 16.5887 11.5305 16.2089 11.9847 16.1879C12.429 16.1869 12.7953 16.5367 12.8052 16.9855C12.8259 17.4463 12.4705 17.8261 12.0262 17.8471ZM7.10434 13.4553C7.12408 13.915 7.50025 14.2749 7.95442 14.2539C8.39872 14.2339 8.75317 13.8531 8.73244 13.3933C8.72257 12.9435 8.35725 12.5937 7.91197 12.5947C7.4578 12.6147 7.10335 12.9955 7.10434 13.4553ZM7.95837 17.8521C7.5042 17.8731 7.12902 17.5132 7.10828 17.0535C7.1073 16.5937 7.46274 16.2129 7.91691 16.1929C8.3612 16.1919 8.7275 16.5417 8.73738 16.9915C8.75811 17.4513 8.40366 17.8321 7.95837 17.8521Z" fill="currentColor"></path></svg><p class="sc-1x9oq14-0 sc-3cb1l3-0 doSDez dgWykw">4 месяца</p></div><div class="sc-3cb1l3-4 kGoYMV"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M3.5 10.3178C3.5 5.71789 7.34388 2 11.9934 2C16.6561 2 20.5 5.71789 20.5 10.3178C20.5 12.6357 19.657 14.7876 18.2695 16.6116C16.7388 18.6235 14.8522 20.3765 12.7285 21.7524C12.2425 22.0704 11.8039 22.0944 11.2704 21.7524C9.13474 20.3765 7.24809 18.6235 5.7305 16.6116C4.34198 14.7876 3.5 12.6357 3.5 10.3178ZM9.19423 10.5768C9.19423 12.1177 10.4517 13.3297 11.9934 13.3297C13.5362 13.3297 14.8058 12.1177 14.8058 10.5768C14.8058 9.0478 13.5362 7.77683 11.9934 7.77683C10.4517 7.77683 9.19423 9.0478 9.19423 10.5768Z" fill="currentColor"></path></svg><p class="sc-1x9oq14-0 sc-3cb1l3-0 doSDez dgWykw">Онлайн</p></div><div class="sc-3cb1l3-4 kGoYMV"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M7.66988 2H16.3399C19.7299 2 21.9999 4.379 21.9999 7.919V16.089C21.9999 19.62 19.7299 22 16.3399 22H7.66988C4.27988 22 1.99988 19.62 1.99988 16.089V7.919C1.99988 4.379 4.27988 2 7.66988 2ZM15.5799 15.81C15.8299 15.81 16.0799 15.68 16.2199 15.44C16.4399 15.089 16.3199 14.629 15.9599 14.41L12.3999 12.29V7.669C12.3999 7.26 12.0699 6.919 11.6499 6.919C11.2399 6.919 10.8999 7.26 10.8999 7.669V12.72C10.8999 12.98 11.0399 13.23 11.2699 13.36L15.1899 15.7C15.3099 15.78 15.4499 15.81 15.5799 15.81Z" fill="currentColor"></path></svg><p class="sc-1x9oq14-0 sc-3cb1l3-0 doSDez dgWykw">Пн/Ср 20:00 Мск</p></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-1oat6ot-5 klGcVm"><div class="sc-1oat6ot-4 hdfpFD"><div class="sc-1x9oq14-0 sc-pyhrzd-0 doSDez cFKGMw"> <h2>Где применяется Scala?</h2>
<p>Scala создали на базе Java, но, в отличие от своего «родителя», Scala получился лаконичным языком программирования. Языки не взаимоисключают друг друга: если вы пишете на Scala, можете использовать части кода на Java. На Scala разрабатывают микросервисы, инструменты для бизнес-аналитики, машинного обучения, обработки данных, а ещё — социальные сети.</p>
<h2>Для кого этот курс?</h2>
<ul>
<li>Для Java-разработчиков с опытом от 1 года</li>
<li>Для разработчиков на других языках с опытом от 3 лет</li>
</ul>
<h2>Необходимые знания</h2>
<ul>
<li>опыт разработки на Java или других языках</li>
<li>опыт работы с БД (SQL или NoSQL)</li>
<li>знакомство с синтаксисом веб-приложений</li>
</ul>
<h2>Будет плюсом</h2>
<ul>
<li>умение работать с CompletableFuture/Promise</li>
<li>умение работать с Optional/Maybe</li>
<li>умение работать с библиотекой коллекций: для Java — Stream API; для C# — LINQ; для Rust — коллекции в Rust; для любого другого языка программирования — понимать, что такое flatMap или аналогичная операция в соответствующем языке</li>
<li>опыт работы с REST и json</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="M9.5 12.5537C12.2546 12.5537 14.4626 10.3171 14.4626 7.52684C14.4626 4.73663 12.2546 2.5 9.5 2.5C6.74543 2.5 4.53737 4.73663 4.53737 7.52684C4.53737 10.3171 6.74543 12.5537 9.5 12.5537ZM9.5 15.0152C5.45422 15.0152 2 15.6621 2 18.2464C2 20.8298 5.4332 21.5 9.5 21.5C13.5448 21.5 17 20.8531 17 18.2687C17 15.6844 13.5668 15.0152 9.5 15.0152ZM19.8979 9.58786H21.101C21.5962 9.58786 22 9.99731 22 10.4995C22 11.0016 21.5962 11.4111 21.101 11.4111H19.8979V12.5884C19.8979 13.0906 19.4952 13.5 18.999 13.5C18.5038 13.5 18.1 13.0906 18.1 12.5884V11.4111H16.899C16.4027 11.4111 16 11.0016 16 10.4995C16 9.99731 16.4027 9.58786 16.899 9.58786H18.1V8.41162C18.1 7.90945 18.5038 7.5 18.999 7.5C19.4952 7.5 19.8979 7.90945 19.8979 8.41162V9.58786Z" fill="currentColor"></path></svg></button></div></div><div class="sc-1ppefnf-0 bkTUhm sc-1oat6ot-2 dUkAke"><div class="sc-1ppefnf-1 kxKVxo"><div title="При поддержке" class="sc-1x9oq14-0 sc-1ppefnf-2 dvqddq kGpVuA">При поддержке</div><div class="sc-1ppefnf-3 flLhIW"><img alt="логотип партнера" src="https://cdn.otus.ru/media/public/01/f8/01f8c1324b0b48ae9618f149869da202.png" class="sc-1ppefnf-4 olBrH"/></div></div></div></div></div><a class="sc-clwny5-0 fXxDDe sc-1dqpv3v-0 bldxXv" href="https://otus.ru/lessons/scala/assessment?utm_source=internal&utm_medium=free&utm_campaign=scala&utm_term=landing_gorizont_lesson-12-2023&&utm_content=test"><img src="https://cdn.otus.ru/media/public/b1/bf/Banners_Scala_1120x220-490557-b1bfa3.png" alt="«Оцените свой уровень знаний для обучения на этом курсе» и кнопка «Пройти тест»" class="sc-clwny5-1 bPlUQW"/></a></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"><p>Вы изучите популярные технологии Scala, освоите подходы функционального программирования, а также познакомитесь с мощными библиотеками.</p>
<h2>Вы научитесь:</h2>
<ul>
<li>Создавать веб-сервисы с использованием стека технологий Scala</li>
<li>Использовать приёмы функционального программирования в SOLID-приложениях</li>
<li>Создавать приложения c помощью библиотеки ZIO, основываясь на функциональном подходе</li>
<li>Проектировать микросервисы на основе Akka с использованием CQRS/ES </li>
<li>Создавать модульные тесты на основе инвариантов свойств: property-based tests</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(#f02cbd847cee1c5718be23f8)"></path><defs><linearGradient id="f02cbd847cee1c5718be23f8" 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"><h2><strong>Авторская программа</strong></h2>
<p>Мы составили программу курса «Scala-разработчик» с учётом требований работодателей. Модули курса помогут вам погрузиться в реальные задачи enterprise-разработки</p></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"><p><span>У нас нет предзаписанных уроков. </span><br><span>Занятия в OTUS – это онлайн-вебинары. Преподаватели-практики помогут погрузиться в теорию, обучат на реальных примерах, расскажут о необходимых в работе инструментах. Вы всегда сможете задать вопрос и получить обратную связь.<br>И самое главное — сможете практиковаться!</span></p></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><strong>Будьте вне конкуренции</strong></h3>
<p> </p>
<p><span><span style="font-weight: 400;">Scala постепенно набирает популярность: язык уже внедрили Twitter и Coursera</span></span></p></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><strong>Учитесь у экспертов</strong></h3>
<br>
<p><span><span style="font-weight: 400;">Перенимайте опыт руководителей отделов разработки и старших программистов из крупных компаний</span></span></p></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><strong>Дополните портфолио</strong></h3>
<br>
<p><span><span style="font-weight: 400;">Защитите собственный проект и используйте, как преимущество на собеседовании</span></span></p></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><span><strong>Разместите резюме в базе OTUS</strong>: так наши партнёры смогут пригласить вас на интервью</span></li>
<li><span><strong>Участвуйте в карьерных мероприятиях</strong>: там мы разбираемся, как составить резюме</span></li>
</ul></div></div><div class="sc-2pu6he-0 cawBGv"><h3 class="sc-1x9oq14-0 sc-2pu6he-1 jmLQpp hBsuCb">Работодатели курса</h3><div class="sc-2pu6he-2 kgryUb"><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/82/85/828560e20c494ff7ac73b32ae47dd3ba.webp" class="sc-x5ajzb-1 bvOTNy"></div></div><div class="swiper-slide sc-x5ajzb-0 kbHGLB"><div src="https://cdn.otus.ru/media/public/e5/5f/e55fb1a3c533414db9d1549e996cd54d.png" class="sc-x5ajzb-1 kvYNbs"></div></div><div class="swiper-slide sc-x5ajzb-0 iiXtAN"><div src="https://cdn.otus.ru/media/public/85/e1/85e1c6070e114d14aee6a046badf8705.png" class="sc-x5ajzb-1 hrTZCU"></div></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"><h5>Формат обучения</h5></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> </p>
<p><span>2 онлайн-занятия по 2 академических часа в неделю, вечный доступ к обучающим материалам</span></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>
<div> </div>
<p><span>Итоговая проектная работа усилит знания, а её успешная защита — откроет новые карьерные возможности</span></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> </p>
<p><span>Общайтесь с преподавателями на вебинарах, в закрытом телеграм-чате, при проверке домашних заданий</span></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">Cинтаксические конструкции Scala, асинхронность </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">В данном модуле будут рассмотрены следующие темы:
- Введение в Scala
- Основные языковые конструкции, синтаксис
- Знакомство с функциональными особенностями языка Scala
- Библиотека коллекций
- Асинхронность силами стандартной библиотеки (Scala Future)</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Обзор языковых конструкций. Интерфейсы, классы, методы</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Обзор языковых конструкций. Интерфейсы, классы, методы. Часть 2</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Функциональные конструкции языка scala</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Алгебраические типы данных и сопоставление с образцом</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Библиотека коллекций</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: Библиотека коллекций. Часть 2</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 7: Асинхронные операции, обработка исключений, неявные параметры</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 8: Асинхронные операции, обработка исключений, неявные параметры. Часть 2</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">Advanced Scala concepts, знакомство с концепциями функционального программирования</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">В данном модуле будут рассмотрены следующие темы:
- Продвинутые возможности языка Scala
- Типы высшего порядка
- Scala implicits и type class паттерн
- Начинаем знакомство с FP экосистемой Scala на примере библиотеки cats
- Рассматрим основные структуры данных и type classes</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Higher kind types, implicits, type classes. Часть 1</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Higher kind types, implicits, type classes. Часть 2</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: Scala 3 в сравнении с Scala 2, основные изменения, обзор</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: Сats core, data types</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Cats type classes</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">Функциональное программирование и эффекты в Scala. Подробное знакомство с ZIO и Cats effect</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">В данном модуле будут рассмотрены следующие темы:
- Функциональное программирование на Scala с «эффектами»
- Введем понятие функционального эффекта
- Познакомимся с принципами функционального дизайна для некой предметной области
- Рассмотрим такие библиотеки, как ZIO и Cats effect.</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Введение в функциональные эффекты</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: ZIO эффект, конструкторы, базовые операции</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: ZIO модель ошибок</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: ZIO асинхронность и паралеллизм</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: ZIO работа с ресурсами</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: ZIO Environment и его место в DI</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 7: ZIO ZLayer, ZIO сервис паттерн</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 8: ZIO тестирование и дополнительные структуры данных</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 9: Cats effects: ведение, основные типы данных</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 10: Cats effects: работа с ресурсами</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 11: Cats effects: конкурентность</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">Scala библиотеки fs2 и http4s. Работа с БД </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">В данном модуле будут рассмотрены следующие темы:
- Популярные библиотеки из FP экосистемы Scala
- Web + Доступ к БД
- Функциональные стримы на примере FS2
- Работа с http с помощью http4s
- Реализация взаимодействия с БД JDBC, Scalike, Slick</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 1: Функциональные стримы на примере fs2</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 2: Введение в http4s + DSL</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 3: http4s middleware + аутентификация</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 4: http4s стриминг + работа с JSON </p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Доступ к БД</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">Akka и CQRS/ES с использованием Akka</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">В данном модуле будут рассмотрены следующие темы:
- Модель акторов и ее реализация на Scala
- Библиотека Akka
- Событийные архитектуры
- Паттерн с разделения команд и запросов (CQRS)</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: Разделение команд и запросов</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 5: Query часть CQRS</p><p class="sc-1x9oq14-0 sc-1dvzzbq-0 hQBzUY kGaApg">Тема 6: ES в кластере</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> </p>
<p style="font-size: 20px;"><span style="font-weight: 400;">Попробуйте себя в роли разработчика на Scala. Создайте отказоустойчивый, масштабируемый веб-сервис: REST API + backend + базы данных. <br><br><strong>Первый этап:</strong> классическое SOLID-приложение в пять классов и с хранением данных в памяти. <br><strong>Второй этап:</strong> приложение с FP-подходом (ZIO), расширенной функциональностью, простой схемой в SQL-базе данных. <br><strong>Третий этап:</strong> микросервисы с отказоустойчивостью, ES на основе Akka Persistence, CQRS для сложных запросов</span></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 ejfgvS">Преподаватели</h2><div><div class="sc-1xbggqf-0 ejZqaz sc-7bqyxh-6 kaSYYd"><div class="sc-jotj87-1 llfUGX sc-1xbggqf-1 gKEGyD"><div class="sc-1x9oq14-0 sc-jotj87-5 wJZyp fhizvJ">Руководитель курса</div><div src="https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg" class="sc-jotj87-0 fcMdHy"></div></div><div class="sc-1xbggqf-2 fnEOTo"><h3 class="sc-1x9oq14-0 jmLQpp">Алексей Воронец</h3><p class="sc-1x9oq14-0 sc-1xbggqf-3 dvqddq ilGgzP">Naumen</p><p class="sc-1x9oq14-0 sc-1xbggqf-4 eMZyoN bqxXZo">Руководитель разработки департамента проектных решений и поисковых систем</p><div class="sc-1qbysh1-0 ikwDNo"><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.8498 2.50065C16.4808 2.50065 17.1108 2.58965 17.7098 2.79065C21.4008 3.99065 22.7308 8.04065 21.6198 11.5806C20.9898 13.3896 19.9598 15.0406 18.6108 16.3896C16.6798 18.2596 14.5608 19.9196 12.2798 21.3496L12.0298 21.5006L11.7698 21.3396C9.48077 19.9196 7.34977 18.2596 5.40077 16.3796C4.06077 15.0306 3.02977 13.3896 2.38977 11.5806C1.25977 8.04065 2.58977 3.99065 6.32077 2.76965C6.61077 2.66965 6.90977 2.59965 7.20977 2.56065H7.32977C7.61077 2.51965 7.88977 2.50065 8.16977 2.50065H8.27977C8.90977 2.51965 9.51977 2.62965 10.1108 2.83065H10.1698C10.2098 2.84965 10.2398 2.87065 10.2598 2.88965C10.4808 2.96065 10.6898 3.04065 10.8898 3.15065L11.2698 3.32065C11.3616 3.36962 11.4647 3.44445 11.5537 3.50912C11.6102 3.55009 11.661 3.58699 11.6998 3.61065C11.7161 3.62028 11.7327 3.62996 11.7494 3.63972C11.8351 3.68977 11.9245 3.74191 11.9998 3.79965C13.1108 2.95065 14.4598 2.49065 15.8498 2.50065ZM18.5098 9.70065C18.9198 9.68965 19.2698 9.36065 19.2998 8.93965V8.82065C19.3298 7.41965 18.4808 6.15065 17.1898 5.66065C16.7798 5.51965 16.3298 5.74065 16.1798 6.16065C16.0398 6.58065 16.2598 7.04065 16.6798 7.18965C17.3208 7.42965 17.7498 8.06065 17.7498 8.75965V8.79065C17.7308 9.01965 17.7998 9.24065 17.9398 9.41065C18.0798 9.58065 18.2898 9.67965 18.5098 9.70065Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">6<!-- --> <!-- -->лет<!-- --> в Otus</div></div><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.1748 15.2174H11.825C9.42166 15.2174 7.47358 13.2927 7.47358 10.9203V6.29706C7.47358 3.92373 9.42166 2 11.825 2H12.1748C14.5781 2 16.5272 3.92373 16.5272 6.29706V10.9203C16.5272 13.2927 14.5781 15.2174 12.1748 15.2174ZM18.5626 10.7829C18.5626 10.2539 18.9966 9.82626 19.5313 9.82626C20.066 9.82626 20.5 10.2539 20.5 10.7829C20.5 15.0866 17.2006 18.6404 12.9692 19.1178V21.0434C12.9692 21.5714 12.5352 22 12.0005 22C11.4648 22 11.0318 21.5714 11.0318 21.0434V19.1178C6.79945 18.6404 3.5 15.0866 3.5 10.7829C3.5 10.2539 3.93398 9.82626 4.46872 9.82626C5.00345 9.82626 5.43743 10.2539 5.43743 10.7829C5.43743 14.3558 8.38136 17.2629 12.0005 17.2629C15.6186 17.2629 18.5626 14.3558 18.5626 10.7829Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">329<!-- --> <!-- -->занятий</div></div><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.1583 8.23285C16.1583 10.5825 14.2851 12.4666 11.949 12.4666C9.61292 12.4666 7.73974 10.5825 7.73974 8.23285C7.73974 5.88227 9.61292 4 11.949 4C14.2851 4 16.1583 5.88227 16.1583 8.23285ZM11.949 20C8.51785 20 5.58809 19.456 5.58809 17.2802C5.58809 15.1034 8.49904 14.5396 11.949 14.5396C15.3802 14.5396 18.31 15.0836 18.31 17.2604C18.31 19.4362 15.399 20 11.949 20ZM17.9571 8.30922C17.9571 9.50703 17.5998 10.6229 16.973 11.5505C16.9086 11.646 16.9659 11.7748 17.0796 11.7946C17.2363 11.8216 17.3984 11.8369 17.5631 11.8414C19.2062 11.8846 20.6809 10.821 21.0883 9.21974C21.6918 6.84123 19.9198 4.7059 17.6634 4.7059C17.4181 4.7059 17.1835 4.73201 16.9551 4.77884C16.9238 4.78605 16.8907 4.80046 16.8728 4.82838C16.8513 4.8626 16.8674 4.90853 16.8889 4.93825C17.5667 5.8938 17.9571 7.05918 17.9571 8.30922ZM20.6782 13.5126C21.7823 13.7296 22.5084 14.1727 22.8093 14.8166C23.0636 15.3453 23.0636 15.9586 22.8093 16.4864C22.349 17.4851 20.8654 17.8058 20.2887 17.8886C20.1696 17.9066 20.0738 17.8031 20.0864 17.6833C20.3809 14.9157 18.0377 13.6035 17.4315 13.3018C17.4055 13.2883 17.4002 13.2676 17.4028 13.255C17.4046 13.246 17.4154 13.2316 17.4351 13.2289C18.7468 13.2046 20.1571 13.3847 20.6782 13.5126ZM6.43711 11.8413C6.60186 11.8368 6.76304 11.8224 6.92063 11.7945C7.03434 11.7747 7.09165 11.6459 7.02718 11.5504C6.4004 10.6228 6.04313 9.50694 6.04313 8.30913C6.04313 7.05909 6.43353 5.89371 7.11135 4.93816C7.13284 4.90844 7.14806 4.86251 7.12746 4.82829C7.10956 4.80127 7.07553 4.78596 7.04509 4.77875C6.81586 4.73192 6.58127 4.70581 6.33593 4.70581C4.07951 4.70581 2.30751 6.84114 2.91191 9.21965C3.31932 10.8209 4.79405 11.8845 6.43711 11.8413ZM6.59694 13.2545C6.59962 13.268 6.59425 13.2878 6.56918 13.3022C5.9621 13.6039 3.61883 14.9161 3.91342 17.6827C3.92595 17.8034 3.83104 17.9061 3.71195 17.889C3.13531 17.8061 1.65163 17.4855 1.19139 16.4867C0.936203 15.9581 0.936203 15.3457 1.19139 14.817C1.49225 14.1731 2.21752 13.73 3.32156 13.512C3.84358 13.385 5.25294 13.2049 6.5656 13.2292C6.5853 13.2319 6.59515 13.2464 6.59694 13.2545Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">437<!-- --> <!-- -->студентов</div></div></div></div><div class="sc-1xbggqf-5 jdBfaz"><p class="sc-1x9oq14-0 sc-1xbggqf-6 doSDez bsOVrL">Руководитель разработки департамента проектных решений и поисковых систем в компании Naumen.
Опыт профессиональной разработки 14 лет. Последние 9 лет — это Scala. До этого были Java, JavaScript, когда-то знал PHP.
Работал в разных странах и в разных командах.
География: Беларусь, Франция, Россия
Имеет опыт проектной и продуктовой разработки в B2B и B2C сегментах.
Участвовал в проектировании, разработке и запуске различных проектов для Минобрнауки, Сколково, Росатома, крупных федеральных вузов.
Проектировал, разрабатывал и запускал платформу RUSSIA.STUDY
Сфера интересов: Scala, функциональное программирование, архитектура приложений.</p><div class="sc-1xbggqf-7 fsygCj"><h4 class="sc-1x9oq14-0 sc-1xbggqf-8 gGtEnS gwAjdk">Преподает на курсах</h4><ul class="sc-1xbggqf-9 gShPHD"><li class="sc-1x9oq14-0 sc-1xbggqf-10 hQBzUY jyEMds">Scala-разработчик</li></ul></div></div></div><div class="sc-1xbggqf-0 fyaSEb sc-7bqyxh-6 kaSYYd"><div class="sc-jotj87-1 llfUGX sc-1xbggqf-1 gKEGyD"><div src="https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg" class="sc-jotj87-0 bcMPLS"></div></div><div class="sc-1xbggqf-2 fnEOTo"><h3 class="sc-1x9oq14-0 jmLQpp">Валентин Шилин</h3><p class="sc-1x9oq14-0 sc-1xbggqf-3 dvqddq ilGgzP">Deutsche Telekom IT GmbH</p><p class="sc-1x9oq14-0 sc-1xbggqf-4 eMZyoN bqxXZo">Старший программист/аналитик данных</p><div class="sc-1qbysh1-0 ikwDNo"><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M15.8498 2.50065C16.4808 2.50065 17.1108 2.58965 17.7098 2.79065C21.4008 3.99065 22.7308 8.04065 21.6198 11.5806C20.9898 13.3896 19.9598 15.0406 18.6108 16.3896C16.6798 18.2596 14.5608 19.9196 12.2798 21.3496L12.0298 21.5006L11.7698 21.3396C9.48077 19.9196 7.34977 18.2596 5.40077 16.3796C4.06077 15.0306 3.02977 13.3896 2.38977 11.5806C1.25977 8.04065 2.58977 3.99065 6.32077 2.76965C6.61077 2.66965 6.90977 2.59965 7.20977 2.56065H7.32977C7.61077 2.51965 7.88977 2.50065 8.16977 2.50065H8.27977C8.90977 2.51965 9.51977 2.62965 10.1108 2.83065H10.1698C10.2098 2.84965 10.2398 2.87065 10.2598 2.88965C10.4808 2.96065 10.6898 3.04065 10.8898 3.15065L11.2698 3.32065C11.3616 3.36962 11.4647 3.44445 11.5537 3.50912C11.6102 3.55009 11.661 3.58699 11.6998 3.61065C11.7161 3.62028 11.7327 3.62996 11.7494 3.63972C11.8351 3.68977 11.9245 3.74191 11.9998 3.79965C13.1108 2.95065 14.4598 2.49065 15.8498 2.50065ZM18.5098 9.70065C18.9198 9.68965 19.2698 9.36065 19.2998 8.93965V8.82065C19.3298 7.41965 18.4808 6.15065 17.1898 5.66065C16.7798 5.51965 16.3298 5.74065 16.1798 6.16065C16.0398 6.58065 16.2598 7.04065 16.6798 7.18965C17.3208 7.42965 17.7498 8.06065 17.7498 8.75965V8.79065C17.7308 9.01965 17.7998 9.24065 17.9398 9.41065C18.0798 9.58065 18.2898 9.67965 18.5098 9.70065Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">5<!-- --> <!-- -->лет<!-- --> в Otus</div></div><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.1748 15.2174H11.825C9.42166 15.2174 7.47358 13.2927 7.47358 10.9203V6.29706C7.47358 3.92373 9.42166 2 11.825 2H12.1748C14.5781 2 16.5272 3.92373 16.5272 6.29706V10.9203C16.5272 13.2927 14.5781 15.2174 12.1748 15.2174ZM18.5626 10.7829C18.5626 10.2539 18.9966 9.82626 19.5313 9.82626C20.066 9.82626 20.5 10.2539 20.5 10.7829C20.5 15.0866 17.2006 18.6404 12.9692 19.1178V21.0434C12.9692 21.5714 12.5352 22 12.0005 22C11.4648 22 11.0318 21.5714 11.0318 21.0434V19.1178C6.79945 18.6404 3.5 15.0866 3.5 10.7829C3.5 10.2539 3.93398 9.82626 4.46872 9.82626C5.00345 9.82626 5.43743 10.2539 5.43743 10.7829C5.43743 14.3558 8.38136 17.2629 12.0005 17.2629C15.6186 17.2629 18.5626 14.3558 18.5626 10.7829Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">518<!-- --> <!-- -->занятий</div></div><div class="sc-1x9oq14-0 sc-1qbysh1-1 enpOeQ jeXkAk"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.1583 8.23285C16.1583 10.5825 14.2851 12.4666 11.949 12.4666C9.61292 12.4666 7.73974 10.5825 7.73974 8.23285C7.73974 5.88227 9.61292 4 11.949 4C14.2851 4 16.1583 5.88227 16.1583 8.23285ZM11.949 20C8.51785 20 5.58809 19.456 5.58809 17.2802C5.58809 15.1034 8.49904 14.5396 11.949 14.5396C15.3802 14.5396 18.31 15.0836 18.31 17.2604C18.31 19.4362 15.399 20 11.949 20ZM17.9571 8.30922C17.9571 9.50703 17.5998 10.6229 16.973 11.5505C16.9086 11.646 16.9659 11.7748 17.0796 11.7946C17.2363 11.8216 17.3984 11.8369 17.5631 11.8414C19.2062 11.8846 20.6809 10.821 21.0883 9.21974C21.6918 6.84123 19.9198 4.7059 17.6634 4.7059C17.4181 4.7059 17.1835 4.73201 16.9551 4.77884C16.9238 4.78605 16.8907 4.80046 16.8728 4.82838C16.8513 4.8626 16.8674 4.90853 16.8889 4.93825C17.5667 5.8938 17.9571 7.05918 17.9571 8.30922ZM20.6782 13.5126C21.7823 13.7296 22.5084 14.1727 22.8093 14.8166C23.0636 15.3453 23.0636 15.9586 22.8093 16.4864C22.349 17.4851 20.8654 17.8058 20.2887 17.8886C20.1696 17.9066 20.0738 17.8031 20.0864 17.6833C20.3809 14.9157 18.0377 13.6035 17.4315 13.3018C17.4055 13.2883 17.4002 13.2676 17.4028 13.255C17.4046 13.246 17.4154 13.2316 17.4351 13.2289C18.7468 13.2046 20.1571 13.3847 20.6782 13.5126ZM6.43711 11.8413C6.60186 11.8368 6.76304 11.8224 6.92063 11.7945C7.03434 11.7747 7.09165 11.6459 7.02718 11.5504C6.4004 10.6228 6.04313 9.50694 6.04313 8.30913C6.04313 7.05909 6.43353 5.89371 7.11135 4.93816C7.13284 4.90844 7.14806 4.86251 7.12746 4.82829C7.10956 4.80127 7.07553 4.78596 7.04509 4.77875C6.81586 4.73192 6.58127 4.70581 6.33593 4.70581C4.07951 4.70581 2.30751 6.84114 2.91191 9.21965C3.31932 10.8209 4.79405 11.8845 6.43711 11.8413ZM6.59694 13.2545C6.59962 13.268 6.59425 13.2878 6.56918 13.3022C5.9621 13.6039 3.61883 14.9161 3.91342 17.6827C3.92595 17.8034 3.83104 17.9061 3.71195 17.889C3.13531 17.8061 1.65163 17.4855 1.19139 16.4867C0.936203 15.9581 0.936203 15.3457 1.19139 14.817C1.49225 14.1731 2.21752 13.73 3.32156 13.512C3.84358 13.385 5.25294 13.2049 6.5656 13.2292C6.5853 13.2319 6.59515 13.2464 6.59694 13.2545Z" fill="currentColor"></path></svg><div class="sc-1qbysh1-2 fwfLnF">1395<!-- --> <!-- -->студентов</div></div></div></div><div class="sc-1xbggqf-5 jdBfaz"><p class="sc-1x9oq14-0 sc-1xbggqf-6 doSDez bsOVrL">Более 15 лет программирования на С++, С#, JavaScript, Python, Scala, Java.
Эксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.
Проекты:
- автоматизация документооборота для скандинавских стран в составе команды Aditro (10-15 человек);
- автоматизация метеорадарной станции (программно-аппаратный комплекс управления метеорадаром MRL5) для активного воздействия на погоду (Болгария- Аргентина) (20 человек);
- различные проекты от стартапов до крупных химических предприятий (Eurofins) в Германии с составом команды от 3 до 50 человек.
Текущий проект: обработка сверхбольших данных DSL-метрик и прогнозирование потенциальных проблем на линиях связи в Deutsche Telekom.
Образование:
Прикладная математика и физика, СПбГУ ПM-ПУ
Otus Certified Educator</p><div class="sc-1xbggqf-7 fsygCj"><h4 class="sc-1x9oq14-0 sc-1xbggqf-8 gGtEnS gwAjdk">Преподает на курсах</h4><ul class="sc-1xbggqf-9 gShPHD"><li class="sc-1x9oq14-0 sc-1xbggqf-10 hQBzUY jyEMds">Spark Developer</li><li class="sc-1x9oq14-0 sc-1xbggqf-10 hQBzUY jyEMds">Apache Kafka</li><li class="sc-1x9oq14-0 sc-1xbggqf-10 hQBzUY jyEMds">Python-разработчик. Продвинутый уровень</li><li class="sc-1x9oq14-0 sc-1xbggqf-10 hQBzUY jyEMds">Scala-разработчик</li></ul></div></div></div></div><p class="sc-1x9oq14-0 sc-7bqyxh-4 fPZiIk jUXBik">Эксперты-практики делятся опытом, разбирают кейсы студентов и дают развернутый фидбэк на домашние задания</p></div></section></div><div id="broadcast" class="sc-x072mc-0 sc-1n8zn8-0 hOtCic kTlAtn"><div class="sc-1n8zn8-3 bNPdJC"><div class="sc-1x9oq14-0 sc-1n8zn8-1 bTMeHF eVtlSO"><h2>Ближайшие мероприятия</h2></div><div class="sc-1x9oq14-0 sc-1n8zn8-2 fPZiIk djvzct"><p><span>Бесплатный открытый вебинар – онлайн-занятие с преподавателем курса. На открытом вебинаре можно посмотреть, как проходит обучение, а ещё – узнать что-то ценное по интересующей теме. На занятии слушатели могут задавать ведущему вопросы</span></p></div></div><div class="sc-1n8zn8-4 eruVPL"><div class="sc-fgesu2-0 gCLUsB"><div class="sc-yfz19-0 keMPbH"><div size="128" src="https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg" class="sc-yfz19-1 eQxhMw"></div></div><div id="event-7020" class="sc-fgesu2-1 fNTfNW"><div class="sc-fgesu2-2 fxDzQc"><div class="sc-fgesu2-3 eyMrGT"><div class="sc-fgesu2-4 fGVXtz"><div class="sc-1x9oq14-0 sc-fgesu2-5 gGtEnS gLvmdB">Scala + Cats: аккумулируем ошибки с Validated без боли</div><div class="sc-1x9oq14-0 sc-fgesu2-6 iFeEEh keqBcC">Валентин Шилин</div></div></div><div class="sc-1x9oq14-0 sc-2yxsal-0 doSDez jaQEyp"><span><span></span><span><span>Как валидировать данные функционально и получать все ошибки сразу, используя Cats Validated вместо Either и исключений.
</span><br/><span>
</span><br/><span>
</span><br/><span>О чем поговорим:
</span><br/><span>- Почему Either неудобен для валидации (fail-fast проблема)
</span><br/><span>- Знакомство с Validated и NonEmptyList в Cats
</span><br/><span>- Пример: валидация формы регистрации пользователя
</span><br/><span>- Комбинирование проверок через mapN
</span><br/><span>- Когда использовать Validated, а когда Either
</span><br/><span>
</span><br/><span>Кому будет интересно:
</span><br/><span>Scala-разработчикам, начинающим и практикующим функциональный подход, а также всем, кто использует Cats или хочет начать применять его в реальных задачах.
</span><br/><span>
</span><br/><span>В результате урока:
</span><br/><span>Вы поймете, как работает Validated в Cats, научитесь писать композиционную валидацию данных и сможете применять это в production-коде вместо исключений и громоздких проверок.</span></span><span style="position:fixed;visibility:hidden;top:0;left:0">...<!-- --> <button class="sc-2yxsal-1 gjkZBp">Читать дальше</button></span></span></div></div><div class="sc-fgesu2-7 eaisXT"><div class="sc-fgesu2-8 cAsFre"><div class="sc-1x9oq14-0 sc-fgesu2-9 fPZiIk cLaaQZ">1 апреля в 17:00</div><div class="sc-1x9oq14-0 enpOeQ">Открытый вебинар</div></div><div class="sc-fgesu2-10 hIqDgT"><button class="sc-1qig7zt-0 bYRRHi sc-fgesu2-11 fPQjfN"><div style="color:#fff" class="sc-10qj18o-1 bLNTdk"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="sc-10qj18o-0 iJGzvz"><circle cx="50" cy="50" fill="none" r="45" stroke-width="10" stroke="currentColor" stroke-dasharray="73.82742735936014 73.82742735936014"></circle></svg></div></button><button class="sc-1qig7zt-0 jBZCRO"><div class="sc-1pd1pn6-0 kpFjsV"><svg class="sc-1pd1pn6-1 jpjsGB" width="6" height="6" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.10103 2.08786H3.89795V0.911617C3.89795 0.409446 3.49521 0 2.99897 0C2.50377 0 2.1 0.409446 2.1 0.911617V2.08786H0.898973C0.40274 2.08786 0 2.49731 0 2.99948C0 3.50165 0.40274 3.9111 0.898973 3.9111H2.1V5.08838C2.1 5.59055 2.50377 6 2.99897 6C3.49521 6 3.89795 5.59055 3.89795 5.08838V3.9111H5.10103C5.59623 3.9111 6 3.50165 6 2.99948C6 2.49731 5.59623 2.08786 5.10103 2.08786Z" fill="currentColor"></path></svg><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.4109 2.76862L16.4119 3.51824C19.1665 3.73414 20.9862 5.6112 20.9891 8.48975L21 16.9155C21.0039 20.054 19.0322 21.985 15.8718 21.99L8.15189 22C5.0112 22.004 3.01482 20.027 3.01087 16.8796L3.00001 8.55272C2.99606 5.65517 4.75153 3.78311 7.50618 3.53024L7.50519 2.78061C7.5042 2.34083 7.83002 2.01 8.26445 2.01C8.69887 2.009 9.02469 2.33883 9.02568 2.77861L9.02666 3.47826L14.8914 3.47027L14.8904 2.77062C14.8894 2.33084 15.2152 2.001 15.6497 2C16.0742 1.99901 16.4099 2.32884 16.4109 2.76862ZM4.52149 8.86157L19.4696 8.84158V8.49175C19.4272 6.34283 18.349 5.21539 16.4139 5.04748L16.4148 5.81709C16.4148 6.24688 16.0801 6.58771 15.6556 6.58771C15.2212 6.58871 14.8944 6.24888 14.8944 5.81909L14.8934 5.0095L9.02864 5.01749L9.02962 5.82609C9.02962 6.25687 8.70479 6.5967 8.27037 6.5967C7.83595 6.5977 7.50914 6.25887 7.50914 5.82809L7.50815 5.05847C5.58286 5.25138 4.51754 6.38281 4.5205 8.55072L4.52149 8.86157ZM15.2399 13.4043V13.4153C15.2498 13.8751 15.625 14.2239 16.0801 14.2139C16.5244 14.2029 16.8789 13.8221 16.869 13.3623C16.8483 12.9225 16.4918 12.5637 16.0485 12.5647C15.5944 12.5747 15.2389 12.9445 15.2399 13.4043ZM16.0554 17.892C15.6013 17.882 15.235 17.5032 15.234 17.0435C15.2241 16.5837 15.5884 16.2029 16.0426 16.1919H16.0525C16.5165 16.1919 16.8927 16.5707 16.8927 17.0405C16.8937 17.5102 16.5185 17.891 16.0554 17.892ZM11.1721 13.4203C11.1919 13.8801 11.568 14.2389 12.0222 14.2189C12.4665 14.1979 12.821 13.8181 12.8012 13.3583C12.7904 12.9085 12.425 12.5587 11.9807 12.5597C11.5266 12.5797 11.1711 12.9605 11.1721 13.4203ZM12.0262 17.8471C11.572 17.8671 11.1968 17.5082 11.1761 17.0485C11.1761 16.5887 11.5305 16.2089 11.9847 16.1879C12.429 16.1869 12.7953 16.5367 12.8052 16.9855C12.8259 17.4463 12.4705 17.8261 12.0262 17.8471ZM7.10434 13.4553C7.12408 13.915 7.50025 14.2749 7.95442 14.2539C8.39872 14.2339 8.75317 13.8531 8.73244 13.3933C8.72257 12.9435 8.35725 12.5937 7.91197 12.5947C7.4578 12.6147 7.10335 12.9955 7.10434 13.4553ZM7.95837 17.8521C7.5042 17.8731 7.12902 17.5132 7.10828 17.0535C7.1073 16.5937 7.46274 16.2129 7.91691 16.1929C8.3612 16.1919 8.7275 16.5417 8.73738 16.9915C8.75811 17.4513 8.40366 17.8321 7.95837 17.8521Z" fill="currentColor"></path></svg></div></button></div></div></div></div><div class="sc-fgesu2-0 gCLUsB"><div class="sc-yfz19-0 keMPbH"><div size="128" src="https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg" class="sc-yfz19-1 eQxhMw"></div></div><div id="event-7021" class="sc-fgesu2-1 fNTfNW"><div class="sc-fgesu2-2 fxDzQc"><div class="sc-fgesu2-3 eyMrGT"><div class="sc-fgesu2-4 fGVXtz"><div class="sc-1x9oq14-0 sc-fgesu2-5 gGtEnS gLvmdB">Case classes и pattern matching: суперсила Scala на практике</div><div class="sc-1x9oq14-0 sc-fgesu2-6 iFeEEh keqBcC">Валентин Шилин</div></div></div><div class="sc-1x9oq14-0 sc-2yxsal-0 doSDez jaQEyp"><span><span></span><span><span>Разберём ключевые возможности Scala через case classes и pattern matching и покажем, как писать чистый и безопасный код.
</span><br/><span>Данный открытый урок проходит в рамках курса … (ссылка).
</span><br/><span>
</span><br/><span>О чём поговорим:
</span><br/><span>
</span><br/><span>Чем case class лучше обычного class
</span><br/><span>
</span><br/><span>Автоматические equals, copy, apply и immutability
</span><br/><span>
</span><br/><span>Основы pattern matching на реальных примерах
</span><br/><span>
</span><br/><span>Практический пример: обработка событий через sealed trait
</span><br/><span>
</span><br/><span>Как это используется в production-коде
</span><br/><span>
</span><br/><span>Кому будет интересно:
</span><br/><span>Начинающим Scala-разработчикам, Java-разработчикам, переходящим на Scala, и всем, кто хочет понять ключевые конструкции языка.
</span><br/><span>
</span><br/><span>В результате урока:
</span><br/><span>Вы научитесь использовать case classes и pattern matching для создания безопасных и читаемых моделей данных и обработки бизнес-логики.</span></span><span style="position:fixed;visibility:hidden;top:0;left:0">...<!-- --> <button class="sc-2yxsal-1 gjkZBp">Читать дальше</button></span></span></div></div><div class="sc-fgesu2-7 eaisXT"><div class="sc-fgesu2-8 cAsFre"><div class="sc-1x9oq14-0 sc-fgesu2-9 fPZiIk cLaaQZ">14 апреля в 17:00</div><div class="sc-1x9oq14-0 enpOeQ">Открытый вебинар</div></div><div class="sc-fgesu2-10 hIqDgT"><button class="sc-1qig7zt-0 bYRRHi sc-fgesu2-11 fPQjfN"><div style="color:#fff" class="sc-10qj18o-1 bLNTdk"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="sc-10qj18o-0 iJGzvz"><circle cx="50" cy="50" fill="none" r="45" stroke-width="10" stroke="currentColor" stroke-dasharray="73.82742735936014 73.82742735936014"></circle></svg></div></button><button class="sc-1qig7zt-0 jBZCRO"><div class="sc-1pd1pn6-0 kpFjsV"><svg class="sc-1pd1pn6-1 jpjsGB" width="6" height="6" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.10103 2.08786H3.89795V0.911617C3.89795 0.409446 3.49521 0 2.99897 0C2.50377 0 2.1 0.409446 2.1 0.911617V2.08786H0.898973C0.40274 2.08786 0 2.49731 0 2.99948C0 3.50165 0.40274 3.9111 0.898973 3.9111H2.1V5.08838C2.1 5.59055 2.50377 6 2.99897 6C3.49521 6 3.89795 5.59055 3.89795 5.08838V3.9111H5.10103C5.59623 3.9111 6 3.50165 6 2.99948C6 2.49731 5.59623 2.08786 5.10103 2.08786Z" fill="currentColor"></path></svg><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.4109 2.76862L16.4119 3.51824C19.1665 3.73414 20.9862 5.6112 20.9891 8.48975L21 16.9155C21.0039 20.054 19.0322 21.985 15.8718 21.99L8.15189 22C5.0112 22.004 3.01482 20.027 3.01087 16.8796L3.00001 8.55272C2.99606 5.65517 4.75153 3.78311 7.50618 3.53024L7.50519 2.78061C7.5042 2.34083 7.83002 2.01 8.26445 2.01C8.69887 2.009 9.02469 2.33883 9.02568 2.77861L9.02666 3.47826L14.8914 3.47027L14.8904 2.77062C14.8894 2.33084 15.2152 2.001 15.6497 2C16.0742 1.99901 16.4099 2.32884 16.4109 2.76862ZM4.52149 8.86157L19.4696 8.84158V8.49175C19.4272 6.34283 18.349 5.21539 16.4139 5.04748L16.4148 5.81709C16.4148 6.24688 16.0801 6.58771 15.6556 6.58771C15.2212 6.58871 14.8944 6.24888 14.8944 5.81909L14.8934 5.0095L9.02864 5.01749L9.02962 5.82609C9.02962 6.25687 8.70479 6.5967 8.27037 6.5967C7.83595 6.5977 7.50914 6.25887 7.50914 5.82809L7.50815 5.05847C5.58286 5.25138 4.51754 6.38281 4.5205 8.55072L4.52149 8.86157ZM15.2399 13.4043V13.4153C15.2498 13.8751 15.625 14.2239 16.0801 14.2139C16.5244 14.2029 16.8789 13.8221 16.869 13.3623C16.8483 12.9225 16.4918 12.5637 16.0485 12.5647C15.5944 12.5747 15.2389 12.9445 15.2399 13.4043ZM16.0554 17.892C15.6013 17.882 15.235 17.5032 15.234 17.0435C15.2241 16.5837 15.5884 16.2029 16.0426 16.1919H16.0525C16.5165 16.1919 16.8927 16.5707 16.8927 17.0405C16.8937 17.5102 16.5185 17.891 16.0554 17.892ZM11.1721 13.4203C11.1919 13.8801 11.568 14.2389 12.0222 14.2189C12.4665 14.1979 12.821 13.8181 12.8012 13.3583C12.7904 12.9085 12.425 12.5587 11.9807 12.5597C11.5266 12.5797 11.1711 12.9605 11.1721 13.4203ZM12.0262 17.8471C11.572 17.8671 11.1968 17.5082 11.1761 17.0485C11.1761 16.5887 11.5305 16.2089 11.9847 16.1879C12.429 16.1869 12.7953 16.5367 12.8052 16.9855C12.8259 17.4463 12.4705 17.8261 12.0262 17.8471ZM7.10434 13.4553C7.12408 13.915 7.50025 14.2749 7.95442 14.2539C8.39872 14.2339 8.75317 13.8531 8.73244 13.3933C8.72257 12.9435 8.35725 12.5937 7.91197 12.5947C7.4578 12.6147 7.10335 12.9955 7.10434 13.4553ZM7.95837 17.8521C7.5042 17.8731 7.12902 17.5132 7.10828 17.0535C7.1073 16.5937 7.46274 16.2129 7.91691 16.1929C8.3612 16.1919 8.7275 16.5417 8.73738 16.9915C8.75811 17.4513 8.40366 17.8321 7.95837 17.8521Z" fill="currentColor"></path></svg></div></button></div></div></div></div><div class="sc-fgesu2-0 gCLUsB"><div class="sc-yfz19-0 keMPbH"><div size="128" src="https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg" class="sc-yfz19-1 bfzQXU"></div></div><div id="event-7043" class="sc-fgesu2-1 fNTfNW"><div class="sc-fgesu2-2 fxDzQc"><div class="sc-fgesu2-3 eyMrGT"><div class="sc-fgesu2-4 fGVXtz"><div class="sc-1x9oq14-0 sc-fgesu2-5 gGtEnS gLvmdB">Эффекты в Scala</div><div class="sc-1x9oq14-0 sc-fgesu2-6 iFeEEh keqBcC">Алексей Воронец</div></div></div><div class="sc-1x9oq14-0 sc-2yxsal-0 doSDez jaQEyp"><span><span></span><span><span>Эффекты в Scala — ключ к безопасному, масштабируемому и предсказуемому коду в современных высоконагруженных системах.
</span><br/><span>
</span><br/><span>О чем поговорим:
</span><br/><span>- Что такое эффекты? Разбираем разницу между побочными эффектами и контролируемыми эффектами в функциональном программировании
</span><br/><span>- Зачем это нужно? Как эффекты помогают писать чистый, композируемый и предсказуемый код без сюрпризов
</span><br/><span>- Основные типы эффектов: обзор Option, Either, Future, а также Cats Effect (IO) и ZIO
</span><br/><span>- Композиция и работа с эффектами: for-comprehension, трансформеры (OptionT, EitherT) и обработка ошибок
</span><br/><span>- Эффекты в реальных приложениях: конкурентность, управление ресурсами (Bracket/Resource) и тестирование кода с эффектами
</span><br/><span>
</span><br/><span>Кому будет интересно:
</span><br/><span>Всем разработчикам, желающим познакомиться с концепцией эффектов и ее применением на практике в Scala.
</span><br/><span>
</span><br/><span>В результате урока:
</span><br/><span>Узнаете, какие виды эффектов бывают и как это влияет на наш код. Научитесь использовать эффекты для решения реальных задач.</span></span><span style="position:fixed;visibility:hidden;top:0;left:0">...<!-- --> <button class="sc-2yxsal-1 gjkZBp">Читать дальше</button></span></span></div></div><div class="sc-fgesu2-7 eaisXT"><div class="sc-fgesu2-8 cAsFre"><div class="sc-1x9oq14-0 sc-fgesu2-9 fPZiIk cLaaQZ">20 апреля в 17:00</div><div class="sc-1x9oq14-0 enpOeQ">Открытый вебинар</div></div><div class="sc-fgesu2-10 hIqDgT"><button class="sc-1qig7zt-0 bYRRHi sc-fgesu2-11 fPQjfN"><div style="color:#fff" class="sc-10qj18o-1 bLNTdk"><svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" class="sc-10qj18o-0 iJGzvz"><circle cx="50" cy="50" fill="none" r="45" stroke-width="10" stroke="currentColor" stroke-dasharray="73.82742735936014 73.82742735936014"></circle></svg></div></button><button class="sc-1qig7zt-0 jBZCRO"><div class="sc-1pd1pn6-0 kpFjsV"><svg class="sc-1pd1pn6-1 jpjsGB" width="6" height="6" viewBox="0 0 6 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.10103 2.08786H3.89795V0.911617C3.89795 0.409446 3.49521 0 2.99897 0C2.50377 0 2.1 0.409446 2.1 0.911617V2.08786H0.898973C0.40274 2.08786 0 2.49731 0 2.99948C0 3.50165 0.40274 3.9111 0.898973 3.9111H2.1V5.08838C2.1 5.59055 2.50377 6 2.99897 6C3.49521 6 3.89795 5.59055 3.89795 5.08838V3.9111H5.10103C5.59623 3.9111 6 3.50165 6 2.99948C6 2.49731 5.59623 2.08786 5.10103 2.08786Z" fill="currentColor"></path></svg><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M16.4109 2.76862L16.4119 3.51824C19.1665 3.73414 20.9862 5.6112 20.9891 8.48975L21 16.9155C21.0039 20.054 19.0322 21.985 15.8718 21.99L8.15189 22C5.0112 22.004 3.01482 20.027 3.01087 16.8796L3.00001 8.55272C2.99606 5.65517 4.75153 3.78311 7.50618 3.53024L7.50519 2.78061C7.5042 2.34083 7.83002 2.01 8.26445 2.01C8.69887 2.009 9.02469 2.33883 9.02568 2.77861L9.02666 3.47826L14.8914 3.47027L14.8904 2.77062C14.8894 2.33084 15.2152 2.001 15.6497 2C16.0742 1.99901 16.4099 2.32884 16.4109 2.76862ZM4.52149 8.86157L19.4696 8.84158V8.49175C19.4272 6.34283 18.349 5.21539 16.4139 5.04748L16.4148 5.81709C16.4148 6.24688 16.0801 6.58771 15.6556 6.58771C15.2212 6.58871 14.8944 6.24888 14.8944 5.81909L14.8934 5.0095L9.02864 5.01749L9.02962 5.82609C9.02962 6.25687 8.70479 6.5967 8.27037 6.5967C7.83595 6.5977 7.50914 6.25887 7.50914 5.82809L7.50815 5.05847C5.58286 5.25138 4.51754 6.38281 4.5205 8.55072L4.52149 8.86157ZM15.2399 13.4043V13.4153C15.2498 13.8751 15.625 14.2239 16.0801 14.2139C16.5244 14.2029 16.8789 13.8221 16.869 13.3623C16.8483 12.9225 16.4918 12.5637 16.0485 12.5647C15.5944 12.5747 15.2389 12.9445 15.2399 13.4043ZM16.0554 17.892C15.6013 17.882 15.235 17.5032 15.234 17.0435C15.2241 16.5837 15.5884 16.2029 16.0426 16.1919H16.0525C16.5165 16.1919 16.8927 16.5707 16.8927 17.0405C16.8937 17.5102 16.5185 17.891 16.0554 17.892ZM11.1721 13.4203C11.1919 13.8801 11.568 14.2389 12.0222 14.2189C12.4665 14.1979 12.821 13.8181 12.8012 13.3583C12.7904 12.9085 12.425 12.5587 11.9807 12.5597C11.5266 12.5797 11.1711 12.9605 11.1721 13.4203ZM12.0262 17.8471C11.572 17.8671 11.1968 17.5082 11.1761 17.0485C11.1761 16.5887 11.5305 16.2089 11.9847 16.1879C12.429 16.1869 12.7953 16.5367 12.8052 16.9855C12.8259 17.4463 12.4705 17.8261 12.0262 17.8471ZM7.10434 13.4553C7.12408 13.915 7.50025 14.2749 7.95442 14.2539C8.39872 14.2339 8.75317 13.8531 8.73244 13.3933C8.72257 12.9435 8.35725 12.5937 7.91197 12.5947C7.4578 12.6147 7.10335 12.9955 7.10434 13.4553ZM7.95837 17.8521C7.5042 17.8731 7.12902 17.5132 7.10828 17.0535C7.1073 16.5937 7.46274 16.2129 7.91691 16.1929C8.3612 16.1919 8.7275 16.5417 8.73738 16.9915C8.75811 17.4513 8.40366 17.8321 7.95837 17.8521Z" fill="currentColor"></path></svg></div></button></div></div></div></div></div></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-5511" class="sc-1l3meww-0 gAbnmq"><div src="https://sun9-68.userapi.com/impg/dbEoJI19M5UFo7kRuVG-CpsWDMrlGNoR6DCPww/cPboLxeIqYI.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=b46e4970eda5a46b13c1034874fdeecb&c_uniq_tag=qeJ9vxPzvQKFxo4lfkATP0ugLS9cDOV-wNVJvkDQT30&type=video_thumb" class="sc-1l3meww-1 eOpbvi"><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">Функциональное программирование в Scala</div></div></div><div id="video-5572" class="sc-1l3meww-0 gAbnmq"><div src="https://sun9-25.userapi.com/impg/bHS3J64pfIOxQySCxTrXpd05CrQ-R6yMxiUC8g/jTaUs7TJVI0.jpg?size=320x240&quality=95&keep_aspect_ratio=1&background=000000&sign=fce91b827a70c7c0be10f16cf43dc254&c_uniq_tag=DqRhfOoLiFAYsVR25oL0y_nDgBnEUw1CxE3r6UJeX-o&type=video_thumb" class="sc-1l3meww-1 dpLJlj"><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">Эффективная работа с Future в Scala: асинхронное программирование на практике</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="M9.5 12.5537C12.2546 12.5537 14.4626 10.3171 14.4626 7.52684C14.4626 4.73663 12.2546 2.5 9.5 2.5C6.74543 2.5 4.53737 4.73663 4.53737 7.52684C4.53737 10.3171 6.74543 12.5537 9.5 12.5537ZM9.5 15.0152C5.45422 15.0152 2 15.6621 2 18.2464C2 20.8298 5.4332 21.5 9.5 21.5C13.5448 21.5 17 20.8531 17 18.2687C17 15.6844 13.5668 15.0152 9.5 15.0152ZM19.8979 9.58786H21.101C21.5962 9.58786 22 9.99731 22 10.4995C22 11.0016 21.5962 11.4111 21.101 11.4111H19.8979V12.5884C19.8979 13.0906 19.4952 13.5 18.999 13.5C18.5038 13.5 18.1 13.0906 18.1 12.5884V11.4111H16.899C16.4027 11.4111 16 11.0016 16 10.4995C16 9.99731 16.4027 9.58786 16.899 9.58786H18.1V8.41162C18.1 7.90945 18.5038 7.5 18.999 7.5C19.4952 7.5 19.8979 7.90945 19.8979 8.41162V9.58786Z" 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 src="https://cdn.otus.ru/media/public/34/ec/avatar-377284-34ec2c.png" class="sc-h3yero-4 fYjVOV"></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">27.12.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, благодарю Вас, преподавателей и руководителя курса "Scala-разработчик".
Благодаря этому курсу я получил необходимые знания и получил интересную и высокооплачиваемую работу в крупной компании.
Огромное СПАСИБО!</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">30.10.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">Закончил курс по разработке на языке Scala от OTUS. Получил только положительные эмоции и фундаментальные знания.
Начинал свой путь в IT с изучения Java. В процессе обучения в мое поле зрения попадали различные библиотеки и фреймворки, связанные с данным языком. Особое внимание, по рекомендации одного из моих преподавателей, заслужил фреймворк Akka, в основе которого лежит модель акторов. Изучая его документацию открыл для себя новый язык - Scala. В первую очередь, привлекла красота и лаконичность языка по сравнению с Java. Также открыл для себя новую концепцию - функциональное программирование. Рекурсивный подход, хвостовые рекурсии, отсутствие императивных циклов, отсутствие изменяемых переменных, каррирование - все это казалось чем-то недостижимым. Язык изучал по книгам («Профессиональное программирование Scala 3-е издание» Мартина Одерски) и бесплатным курсам. Но не хватало структуры и наставников. Нарвался на курс от компании OTUS. Сразу бросилось в глаза, что читают его преподаватели с огромным опытом в данной области. Прочитал программу обучения. В нее входило огромное количество тяжелых и интересных мне тем, относящихся к экосистеме языка.
Поступил на курс. Все темы были раскрыты, домашние задания были тяжелыми, помогли закрепить полученные знания. Преподаватели достаточно оперативно все проверяли, давали развернутые комментарии, указывали на недочеты. Влюбился в ФП, но, самое главное, что вынес для себя - это то, что нужно от каждого подхода, будь то функциональный или объектно-ориентированный брать самое лучше и комбинировать их.
Рассмотрели основы языка, поработали с конкурирующим кодом(Future), функциональными эффектами. Узнал про экосистему Cats и Zio. В финале курса поговорили про Akka Actors, Akka streams, принцип CQRS.
За время прохождения курса, попал на свою первую работу, связанную с IT, разработчиком. Разработал конкурентную систему парсинга данных на Scala на основе акторов и Future.
Курсом доволен полностью. Немного не хватило Zio и Cats. Но сами по себе эти темы очень обширны и требуют углубленного изучения. Считаю, что данный курс является одним из лучших для тех, кто хочет всеобъемлюще погрузиться в экосистему Scala, и поможет выбрать вектор для дальнейшего развития. Я же планирую развиваться в направлении Zio и пройти курс по архитектуре здесь же в 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">28.10.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">Работаю в ПОА Сбербанк, блок "Технологии", на должности главного инженера по разработке.
Наша команда разрабатывает проект на Scala. Поэтому причины выбора курса понятны. Прежде всего, с помощью курса я хотел структурировать свои знания о библиотеках и фреймворках, которые уже используются в нашем проекте, а также получить знания о фреймворках, которые не используются в проекте, но являются актуальными и популярными среди разработчиков на Scala и тем самым поднять свою квалификацию.
Курс мне очень понравился. Два основных аспекта, которые я оценил высоко: актуальность и объем информации и, что очень важно, преподавательский талант ведущих курс преподавателей, прежде всего Алексея Воронца, который продемонстрировал умение объяснять просто (насколько это вообще возможно) сложные темы и вести лекции так, что интерес не теряется на протяжении 1,5 - 2 часов, пока идет занятие.
В отношении Otus хочу отметить, что к все организовано на хорошем уровне, претензий у меня не возникало, все работало, возникающие вопросы решались оперативно.
От курса я получил все, что ожидал. Можно сказать, в курс помог мне перепрыгнуть через три ступеньки в изучении Scala :).
Надеюсь это поможет мне в текущей работе и мои приобретенные навыки и знания будут оценены руководством по достоинству.</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/64/32/avatar-1801-6432cf.png" class="sc-h3yero-4 kqzmBY"></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.10.2024</div></div><div class="sc-h3yero-6 bXBhOa"></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Работаю инженером данных и имею поверхностный опыт со Scala, хотел понимать лучше, т.к. сейчас у нас основные фреймворки разработки на Scala и хотелось лучше понимать этот язык разработки. Дополнительно был замотивирован, т.к. в начале года на интервью в другой отдел понял, что нужно свой уровень подтянуть. Курс выбрал в Otus, т.к. уже имел положительный опыт обучения в Otus на другом курсе. Курс очень понравился, т.к. инструкторы курсы хорошо раскрывают материал на простых примерах, что позволяет объяснить сложные вещи просто. Также хорошо подготовлены домашние задания. Из пожеланий: хотелось бы получить на курсе дополнительно больше материала по новым версиям фреймворков разработки, например ZIO2. В практическом смысле обучение помогает лучше и более уверенно ориентироваться в сложных задачах , где применяется Scala, на текущем месте работы.</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/28/5b/avatar-504527-285bf5.png" class="sc-h3yero-4 hImlPT"></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">25.06.2024</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Работал Data Engineer’ом, в основном в банковской сфере, немного в телекоме.
В целом очень нравился и нравится Scala как язык, хотелось продолжать в нем развиваться, но для этого нужно было перейти куда-то ближе к backend’у, ради чего я и записался на курс.
На курсе нравится ориентированность на «работающего» ученика, разумный баланс между теорией и практикой, проработанные практические задания, где ты можешь сфокусироваться на решении проблемы, а не на настройке среды, мотивированные преподаватели. Где-то хотелось бы улучшить документацию по ДЗ, в частности, по последним заданиям, потому что там пришлось повозиться с настройкой Docker на Linux, а также собрать все практические задания в одном репозитории (их было три).
Где-то за месяц-полтора до окончания курса перешел на позицию backend Scala-разработчика в «Тинькофф» (теперь - «Т-Банк»), наверное, большего от курса и не мог бы пожелать.</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">29.09.2023</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Напишу свой отзыв здесь в целом по курсу. Итоговой опрос уже прошел, там все детали описал.
Хотел бы выразить огромную блогадрность организаторам и преподавателям Алексею Воронцу и Валентину Шилину. Курс действительно мощный, охватывает много. От части это и его минус, потому что части тем оставили вопросы, но вектор есть, куда копать понятно, иначе весь курс занял бы год, а то и больше.
В целом список тем актуальный, темы раскрыты, но с разной степенью качества, тоже надо признать. Остался очень доволен темой с zio, по-другому взглянул на concurenncy, поигрался со scala 3, до этого ее вообще не видел, систематизировал для себя эффекты, монады, функторы и прочую местную экзотику. Курс однозначно пошел на пользу, апгрейднул навыки и позволил выйти за пределы стандартной скалы. Все то, за чем я шел на курс, я получил.</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">25.09.2023</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Отличный курс! Не только помог привести текущие знания по scala в порядок но и освоить довольно сложную, для меня тему - функциональное программирование. Большое спасибо преподавателям за работу над этим курсом)</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">15.12.2022</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Курс понравился, ожидания оправдались. Информация подаётся в систематизированном виде. По итогу можно сказать, что прошёл основной roadmap по миру Scala, получил базис, теперь на этом базисе можно продолжать самостоятельное изучение. Преподавательский состав понравился, особенно запоминались занятия Алексея из-за чёткости и структурированности изложения материала и хорошей камеры :)</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">09.12.2022</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">31.05.2022</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 src="https://cdn.otus.ru/media/public/5c/23/avatar-1801-5c2352.png" class="sc-h3yero-4 klBgTO"></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">25.12.2021</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">29.09.2021</div></div><div class="sc-h3yero-6 bXBhOa"></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Курс в целом понравился
лекции по ZIO, Cats - огонь.
Akka Typed + CQRS также заинтересовала после лекций преподавателя.
К сожалению, темы рассмотренные на курсе слишком обширны, для полного охвата. По каждой можно составить отдельный курс.
Что бы я посоветовал, прошлому себе :-) , перед началом курса - сосредоточится на одной теме, слушать лекции, читать по ней статьи, прорабатывать неясные моменты и чаще спрашивать преподавателя.</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">Константин -OP</p><div class="sc-1x9oq14-0 sc-uyf7sm-0 iwrrOS hejpaX">03.02.2021</div></div></div><div class="sc-1x9oq14-0 sc-h3yero-8 doSDez fwXQYP">Цель обучения была систематизировать и углубить знания по Scala для трудоустройства. До этого пытался сам изучать язык но слишком много новых концепций взрывали мозг и прогресс стопорился.
Нашёл курсы по Scala от профессиональных разработчиков, что конечно же подкупило. Кроме того, понравилась ширина охвата тем и материала.
По итогу, ожидания оправдались:
- опытный преподаватель Семен с большим опытом разработки, бодро отвечал на все вопросы и жег большим количеством и темпом подачи материала, давал много дополнительных ссылок для изучения.
- с другой стороны, для мозга не привыкшего к ФП, большое обилие функциональных концепций может быть тяжеловато, но тут каждый сам решает что ему важно.
Добавить хотелось бы : большей структурированности подачи + более интересные домашки и финальный проект. Чтобы было интересно делать.
Что дало обучение: усвоил базовые концепции Scala и сложил в голове более сложные темы, типа Akka и немного функциональных вещей из ZIO, cats.
Отзыв писал по первому запуску курса, сейчас может уже все не так: курс переработали и сделали более продолжительным чтобы лучше уложилось в голове новые концепции. В любом случае спасибо команде Отуса и замечательным преподавателям которые очень стараются за продвижение крутых технологий, хотя, иногда ДЗ можно проверять и поживее;).</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"><p><span>OTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса, а при выполнении проектной работы – удостоверение о повышении квалификации</span></p></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>получите доступ к обучающим материалам: видеозаписям всех вебинаров, презентациям к занятиям, к решениям задач и проектов в виде кода на GitHub</li>
<li>приобретёте опыт enterprise-разработки на Scala</li>
<li>дополните портфолио проектом веб-сервиса</li>
</ul></div></div></div><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div id="payment-link" class="sc-1ddwpfq-1 hnlXxp sc-mgf5g0-1 cGuqjL"><i class="sc-1ddwpfq-0 kGrPZV"></i><!--$!--><template data-dgst="BAILOUT_TO_CLIENT_SIDE_RENDERING"></template><!--/$--><div class="sc-mgf5g0-0 VNvrk sc-x072mc-0 hOtCic"><div class="sc-mgf5g0-3 iMmpz"><div class="sc-mgf5g0-2 gOxNxa"></div><h2 class="sc-1x9oq14-0 sc-mgf5g0-5 jmLQpp cHLoOP">Scala-разработчик</h2></div><div class="sc-mgf5g0-4 cIkHKG"><div class="sc-10kui61-0 hgTHTJ"><div class="sc-10kui61-1 gEGbfQ"><div class="sc-t8narm-0 gPfNRv sc-1peufw-0 gosVbC"><div class="sc-zkx93-0 yFPt"><div>В рассрочку</div></div><div class="sc-zkx93-0 hubLMz"><div>Полная</div></div><div class="sc-zkx93-0 hubLMz"><div>Компаниям</div></div></div><p class="sc-1x9oq14-0 hQBzUY">Стоимость в рассрочку</p><div class="sc-1peufw-1 lYQex"><div class="sc-1x9oq14-0 sc-1peufw-2 ioOegJ iKtgdB">от<!-- --> <!-- -->5 416,67<!-- --> <!-- -->₽<span class="sc-1peufw-4 iLnntQ">/мес</span></div></div><div class="sc-1gixy6u-0 SAbyR"></div></div><div class="sc-1r0uxxj-1 bPBPRV sc-10kui61-2 bpPrAe"><div class="sc-1r0uxxj-0 ewmmcs"></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.7689 8.3818H22C22 4.98459 19.9644 3 16.5156 3H7.48444C4.03556 3 2 4.98459 2 8.33847V15.6615C2 19.0154 4.03556 21 7.48444 21H16.5156C19.9644 21 22 19.0154 22 15.6615V15.3495H17.7689C15.8052 15.3495 14.2133 13.7975 14.2133 11.883C14.2133 9.96849 15.8052 8.41647 17.7689 8.41647V8.3818ZM17.7689 9.87241H21.2533C21.6657 9.87241 22 10.1983 22 10.6004V13.131C21.9952 13.5311 21.6637 13.8543 21.2533 13.8589H17.8489C16.8548 13.872 15.9855 13.2084 15.76 12.2643C15.6471 11.6783 15.8056 11.0736 16.1931 10.6122C16.5805 10.1509 17.1573 9.88007 17.7689 9.87241ZM17.92 12.533H18.2489C18.6711 12.533 19.0133 12.1993 19.0133 11.7877C19.0133 11.3761 18.6711 11.0424 18.2489 11.0424H17.92C17.7181 11.0401 17.5236 11.1166 17.38 11.255C17.2364 11.3934 17.1555 11.5821 17.1556 11.779C17.1555 12.1921 17.4964 12.5282 17.92 12.533ZM6.73778 8.3818H12.3822C12.8044 8.3818 13.1467 8.04812 13.1467 7.63649C13.1467 7.22487 12.8044 6.89119 12.3822 6.89119H6.73778C6.31903 6.89116 5.9782 7.2196 5.97333 7.62783C5.97331 8.04087 6.31415 8.37705 6.73778 8.3818Z" fill="currentColor"></path></svg></div><div class="sc-1x9oq14-0 doSDez"><span class="sc-1r0uxxj-3 kMVdSV">Доступные способы оплаты.</span> <br class="sc-1r0uxxj-2 eewVHU"/>Стоимость указана для оплаты физическими лицами</div></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M20.3991 9.14611L21.1193 9.86611C21.6895 10.4261 21.9996 11.1861 21.9996 11.9861C22.0096 12.7861 21.6995 13.5471 21.1393 14.1161C21.1327 14.1234 21.126 14.1299 21.1193 14.1363C21.116 14.1396 21.1127 14.1428 21.1093 14.1461L20.3991 14.8561C20.119 15.1361 19.9589 15.5161 19.9589 15.9171V16.9461C19.9589 18.6061 18.6084 19.9571 16.9478 19.9571H15.9174C15.5173 19.9571 15.1372 20.1161 14.8571 20.3961L14.1368 21.1161C13.5466 21.7071 12.7763 21.9961 12.006 21.9961C11.2357 21.9961 10.4655 21.7071 9.87525 21.1271L9.14498 20.3961C8.86488 20.1161 8.48474 19.9571 8.0846 19.9571H7.05423C5.39362 19.9571 4.04313 18.6061 4.04313 16.9461V15.9171C4.04313 15.5161 3.88308 15.1361 3.60298 14.8461L2.88271 14.1361C1.71229 12.9671 1.70229 11.0561 2.87271 9.87711L3.60298 9.14611C3.88308 8.86611 4.04313 8.48611 4.04313 8.07611V7.05611C4.04313 5.39611 5.39362 4.04711 7.05423 4.04711H8.0846C8.48474 4.04711 8.86488 3.88611 9.14498 3.60611L9.86524 2.88611C11.0357 1.70711 12.9464 1.70711 14.1268 2.87711L14.8571 3.60611C15.1372 3.88611 15.5173 4.04711 15.9174 4.04711H16.9478C18.6084 4.04711 19.9589 5.39611 19.9589 7.05611V8.08711C19.9589 8.48611 20.119 8.86611 20.3991 9.14611ZM9.42509 15.4461C9.66517 15.4461 9.88525 15.3561 10.0453 15.1861L15.1872 10.0471C15.5273 9.70711 15.5273 9.14611 15.1872 8.80611C14.8471 8.46711 14.2969 8.46711 13.9567 8.80611L8.81486 13.9461C8.47474 14.2861 8.47474 14.8461 8.81486 15.1861C8.97492 15.3561 9.195 15.4461 9.42509 15.4461ZM13.6966 14.5661C13.6966 15.0561 14.0868 15.4461 14.577 15.4461C15.0571 15.4461 15.4473 15.0561 15.4473 14.5661C15.4473 14.0871 15.0571 13.6961 14.577 13.6961C14.0868 13.6961 13.6966 14.0871 13.6966 14.5661ZM9.43509 8.55611C9.91526 8.55611 10.3054 8.94611 10.3054 9.42611C10.3054 9.91711 9.91526 10.3061 9.43509 10.3061C8.95492 10.3061 8.55477 9.91711 8.55477 9.42611C8.55477 8.94611 8.95492 8.55611 9.43509 8.55611Z" fill="currentColor"></path></svg></div><div class="sc-1x9oq14-0 doSDez">Верните с помощью налогового <br class="sc-1r0uxxj-2 eewVHU"/>вычета до 13% стоимости обучения.<!-- --> <!-- -->Пройдите тестирование и менеджер вас проконсультирует</div></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><g><path d="M14.4183 5.49C13.9422 5.40206 13.505 5.70586 13.4144 6.17054C13.3238 6.63522 13.6285 7.08891 14.0916 7.17984C15.4859 7.45166 16.5624 8.53092 16.8353 9.92995V9.93095C16.913 10.3337 17.2675 10.6265 17.6759 10.6265C17.7306 10.6265 17.7854 10.6215 17.8412 10.6115C18.3043 10.5186 18.609 10.0659 18.5184 9.60018C18.1111 7.51062 16.5027 5.89672 14.4183 5.49Z" fill="currentColor"></path><path d="M14.356 2.00793C14.1329 1.97595 13.9088 2.04191 13.7305 2.18381C13.5473 2.32771 13.4328 2.53557 13.4079 2.76841C13.3551 3.23908 13.6947 3.66479 14.1648 3.71776C17.4064 4.07951 19.926 6.60477 20.2905 9.85654C20.3393 10.2922 20.7048 10.621 21.141 10.621C21.1739 10.621 21.2058 10.619 21.2386 10.615C21.4667 10.59 21.6699 10.4771 21.8133 10.2972C21.9557 10.1174 22.0204 9.89351 21.9945 9.66467C21.5404 5.60746 18.4003 2.45862 14.356 2.00793Z" fill="currentColor"></path></g><g><path fill-rule="evenodd" clip-rule="evenodd" d="M11.0317 12.9724C15.0208 16.9604 15.9258 12.3467 18.4656 14.8848C20.9143 17.3328 22.3216 17.8232 19.2192 20.9247C18.8306 21.237 16.3616 24.9943 7.6846 16.3197C-0.993478 7.644 2.76158 5.17244 3.07397 4.78395C6.18387 1.67385 6.66586 3.08938 9.11449 5.53733C11.6544 8.0765 7.04266 8.98441 11.0317 12.9724Z" fill="currentColor"></path></g></svg></div><div class="sc-1x9oq14-0 doSDez">Есть вопросы? Позвоните!<br/><a href="tel:+7 499 938-92-02"><span class="sc-1r0uxxj-3 kMVdSV">+7 499 938-92-02</span></a> <!-- -->бесплатно</div></div></div></div><div class="sc-7ugo7y-0 bTFiyu"><div class="sc-7ugo7y-1 iOYphy"><div class="sc-1x9oq14-0 sc-1u84tez-2 gGtEnS kgGhBx">Запишитесь сегодня</div><div class="sc-1x9oq14-0 sc-1u84tez-3 eMZyoN lcNwWc">Старт занятий 29 апреля</div><div class="sc-1lrh8w5-0 ftkQLi"><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="M9.5 12.5537C12.2546 12.5537 14.4626 10.3171 14.4626 7.52684C14.4626 4.73663 12.2546 2.5 9.5 2.5C6.74543 2.5 4.53737 4.73663 4.53737 7.52684C4.53737 10.3171 6.74543 12.5537 9.5 12.5537ZM9.5 15.0152C5.45422 15.0152 2 15.6621 2 18.2464C2 20.8298 5.4332 21.5 9.5 21.5C13.5448 21.5 17 20.8531 17 18.2687C17 15.6844 13.5668 15.0152 9.5 15.0152ZM19.8979 9.58786H21.101C21.5962 9.58786 22 9.99731 22 10.4995C22 11.0016 21.5962 11.4111 21.101 11.4111H19.8979V12.5884C19.8979 13.0906 19.4952 13.5 18.999 13.5C18.5038 13.5 18.1 13.0906 18.1 12.5884V11.4111H16.899C16.4027 11.4111 16 11.0016 16 10.4995C16 9.99731 16.4027 9.58786 16.899 9.58786H18.1V8.41162C18.1 7.90945 18.5038 7.5 18.999 7.5C19.4952 7.5 19.8979 7.90945 19.8979 8.41162V9.58786Z" fill="currentColor"></path></svg></button></div><div class="sc-ne2nun-0 jFFNWn"><button class="sc-1x9oq14-0 sc-ne2nun-2 doSDez cWqojy">Оставить заявку на оплату<!-- --> <!-- -->курса<!-- --> работодателем</button></div></div></div><div class="sc-1r0uxxj-1 bPBPRV sc-mgf5g0-6 kiGnqS"><div class="sc-1r0uxxj-0 ewmmcs"></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M17.7689 8.3818H22C22 4.98459 19.9644 3 16.5156 3H7.48444C4.03556 3 2 4.98459 2 8.33847V15.6615C2 19.0154 4.03556 21 7.48444 21H16.5156C19.9644 21 22 19.0154 22 15.6615V15.3495H17.7689C15.8052 15.3495 14.2133 13.7975 14.2133 11.883C14.2133 9.96849 15.8052 8.41647 17.7689 8.41647V8.3818ZM17.7689 9.87241H21.2533C21.6657 9.87241 22 10.1983 22 10.6004V13.131C21.9952 13.5311 21.6637 13.8543 21.2533 13.8589H17.8489C16.8548 13.872 15.9855 13.2084 15.76 12.2643C15.6471 11.6783 15.8056 11.0736 16.1931 10.6122C16.5805 10.1509 17.1573 9.88007 17.7689 9.87241ZM17.92 12.533H18.2489C18.6711 12.533 19.0133 12.1993 19.0133 11.7877C19.0133 11.3761 18.6711 11.0424 18.2489 11.0424H17.92C17.7181 11.0401 17.5236 11.1166 17.38 11.255C17.2364 11.3934 17.1555 11.5821 17.1556 11.779C17.1555 12.1921 17.4964 12.5282 17.92 12.533ZM6.73778 8.3818H12.3822C12.8044 8.3818 13.1467 8.04812 13.1467 7.63649C13.1467 7.22487 12.8044 6.89119 12.3822 6.89119H6.73778C6.31903 6.89116 5.9782 7.2196 5.97333 7.62783C5.97331 8.04087 6.31415 8.37705 6.73778 8.3818Z" fill="currentColor"></path></svg></div><div class="sc-1x9oq14-0 doSDez"><span class="sc-1r0uxxj-3 kMVdSV">Доступные способы оплаты.</span> <br class="sc-1r0uxxj-2 eewVHU"/>Стоимость указана для оплаты физическими лицами</div></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><path fill-rule="evenodd" clip-rule="evenodd" d="M20.3991 9.14611L21.1193 9.86611C21.6895 10.4261 21.9996 11.1861 21.9996 11.9861C22.0096 12.7861 21.6995 13.5471 21.1393 14.1161C21.1327 14.1234 21.126 14.1299 21.1193 14.1363C21.116 14.1396 21.1127 14.1428 21.1093 14.1461L20.3991 14.8561C20.119 15.1361 19.9589 15.5161 19.9589 15.9171V16.9461C19.9589 18.6061 18.6084 19.9571 16.9478 19.9571H15.9174C15.5173 19.9571 15.1372 20.1161 14.8571 20.3961L14.1368 21.1161C13.5466 21.7071 12.7763 21.9961 12.006 21.9961C11.2357 21.9961 10.4655 21.7071 9.87525 21.1271L9.14498 20.3961C8.86488 20.1161 8.48474 19.9571 8.0846 19.9571H7.05423C5.39362 19.9571 4.04313 18.6061 4.04313 16.9461V15.9171C4.04313 15.5161 3.88308 15.1361 3.60298 14.8461L2.88271 14.1361C1.71229 12.9671 1.70229 11.0561 2.87271 9.87711L3.60298 9.14611C3.88308 8.86611 4.04313 8.48611 4.04313 8.07611V7.05611C4.04313 5.39611 5.39362 4.04711 7.05423 4.04711H8.0846C8.48474 4.04711 8.86488 3.88611 9.14498 3.60611L9.86524 2.88611C11.0357 1.70711 12.9464 1.70711 14.1268 2.87711L14.8571 3.60611C15.1372 3.88611 15.5173 4.04711 15.9174 4.04711H16.9478C18.6084 4.04711 19.9589 5.39611 19.9589 7.05611V8.08711C19.9589 8.48611 20.119 8.86611 20.3991 9.14611ZM9.42509 15.4461C9.66517 15.4461 9.88525 15.3561 10.0453 15.1861L15.1872 10.0471C15.5273 9.70711 15.5273 9.14611 15.1872 8.80611C14.8471 8.46711 14.2969 8.46711 13.9567 8.80611L8.81486 13.9461C8.47474 14.2861 8.47474 14.8461 8.81486 15.1861C8.97492 15.3561 9.195 15.4461 9.42509 15.4461ZM13.6966 14.5661C13.6966 15.0561 14.0868 15.4461 14.577 15.4461C15.0571 15.4461 15.4473 15.0561 15.4473 14.5661C15.4473 14.0871 15.0571 13.6961 14.577 13.6961C14.0868 13.6961 13.6966 14.0871 13.6966 14.5661ZM9.43509 8.55611C9.91526 8.55611 10.3054 8.94611 10.3054 9.42611C10.3054 9.91711 9.91526 10.3061 9.43509 10.3061C8.95492 10.3061 8.55477 9.91711 8.55477 9.42611C8.55477 8.94611 8.95492 8.55611 9.43509 8.55611Z" fill="currentColor"></path></svg></div><div class="sc-1x9oq14-0 doSDez">Верните с помощью налогового <br class="sc-1r0uxxj-2 eewVHU"/>вычета до 13% стоимости обучения.<!-- --> <!-- -->Пройдите тестирование и менеджер вас проконсультирует</div></div><div class="sc-147fm2r-0 dAAQHW"><div class="sc-147fm2r-1 cnspAU"><svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg" class="sc-aobi4b-0 hzdVAl"><g><path d="M14.4183 5.49C13.9422 5.40206 13.505 5.70586 13.4144 6.17054C13.3238 6.63522 13.6285 7.08891 14.0916 7.17984C15.4859 7.45166 16.5624 8.53092 16.8353 9.92995V9.93095C16.913 10.3337 17.2675 10.6265 17.6759 10.6265C17.7306 10.6265 17.7854 10.6215 17.8412 10.6115C18.3043 10.5186 18.609 10.0659 18.5184 9.60018C18.1111 7.51062 16.5027 5.89672 14.4183 5.49Z" fill="currentColor"></path><path d="M14.356 2.00793C14.1329 1.97595 13.9088 2.04191 13.7305 2.18381C13.5473 2.32771 13.4328 2.53557 13.4079 2.76841C13.3551 3.23908 13.6947 3.66479 14.1648 3.71776C17.4064 4.07951 19.926 6.60477 20.2905 9.85654C20.3393 10.2922 20.7048 10.621 21.141 10.621C21.1739 10.621 21.2058 10.619 21.2386 10.615C21.4667 10.59 21.6699 10.4771 21.8133 10.2972C21.9557 10.1174 22.0204 9.89351 21.9945 9.66467C21.5404 5.60746 18.4003 2.45862 14.356 2.00793Z" fill="currentColor"></path></g><g><path fill-rule="evenodd" clip-rule="evenodd" d="M11.0317 12.9724C15.0208 16.9604 15.9258 12.3467 18.4656 14.8848C20.9143 17.3328 22.3216 17.8232 19.2192 20.9247C18.8306 21.237 16.3616 24.9943 7.6846 16.3197C-0.993478 7.644 2.76158 5.17244 3.07397 4.78395C6.18387 1.67385 6.66586 3.08938 9.11449 5.53733C11.6544 8.0765 7.04266 8.98441 11.0317 12.9724Z" fill="currentColor"></path></g></svg></div><div class="sc-1x9oq14-0 doSDez">Есть вопросы? Позвоните!<br/><a href="tel:+7 499 938-92-02"><span class="sc-1r0uxxj-3 kMVdSV">+7 499 938-92-02</span></a> <!-- -->бесплатно</div></div></div></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">Для получения сертификата OTUS сдавать проект необязательно (в сертификате будет отражено кол-во выполненных домашних работ). Для получения Удостоверения о повышении квалификации необходимо выполнить итоговый проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем.</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">Да, если вы действительно хотите повысить свои навыки программирования на Scala.
На все задания развернутую обратную связь дают наши преподаватели и наставники. При желании вы можете защитить свой итоговый проект перед руководителем и преподавателями курса.</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">Да, даже нужно! Вы можете задавать преподавателю вопросы по содержанию во время онлайн-вебинара, в закрытом Telegram-чате или в чате по ДЗ. На организационные вопросы вам всегда поможет ответить коммьюнити-менеджер курса.</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">Курс подходит для всех, кто имеет опыт разработки на Java, Scala или других языках программирования. Для успешного прохождения обучения необходимо приложить усилия и старания, в т.ч. и при самостоятельном изучении материалов. Будьте готовы тратить на обучение и выполнение домашних заданий от 6 до 12 часов в неделю.</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">Больше 80%. Также во время обучения вам будут доступны дополнительные источники информации, богатый список литературы и референсов для ознакомления и углубления знаний, видеозаписи всех вебинаров занятий. А наши преподаватели всегда готовы поделиться с вами самыми актуальными материалами.</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">Мы проводим вебинары на тему трудоустройства в OTUS Club: разбираем резюме, способы прохождения собеседований, особенности реферальных программ при найме. Что важно: преподаватели курса занимают ведущие позиции в разных компаниях, и вы можете получить ценную рекомендацию. Поэтому будьте активны, выполняйте домашние задания, проявляйте себя</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">Позвоните по номеру +7 499 938-92-02 (звонок бесплатный) или напишите на почту help@otus.ru: мы постараемся ответить на все ваши вопросы</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="57d93c7fa9aebe427e46eaed" 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="57d93c7fa9aebe427e46eaed" 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\",\"scala\",\"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\",\"scala\"],\"initialTree\":[\"\",{\"structuredData\":[\"children\",{\"children\":[\"lessons\",{\"children\":[[\"slug\",\"scala\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]}],\"children\":[\"lessons\",{\"children\":[[\"slug\",\"scala\",\"d\"],{\"children\":[\"__PAGE__\",{}]}]}]},\"$undefined\",\"$undefined\",true],\"initialSeedData\":[\"\",{\"structuredData\":[\"children\",{\"children\":[\"lessons\",{\"children\":[[\"slug\",\"scala\",\"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\",\"scala\",\"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\",\"scala\",\"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,"16:[[\"$\",\"meta\",\"0\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}],[\"$\",\"meta\",\"1\",{\"charSet\":\"utf-8\"}],[\"$\",\"title\",\"2\",{\"children\":\"Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"3\",{\"name\":\"description\",\"content\":\"Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС\"}],[\"$\",\"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/scala/\"}],[\"$\",\"meta\",\"9\",{\"name\":\"yandex-verification\",\"content\":\"3019a35aeda6b45d\"}],[\"$\",\"meta\",\"10\",{\"property\":\"og:title\",\"content\":\"Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"11\",{\"property\":\"og:description\",\"content\":\"Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС\"}],[\"$\",\"meta\",\"12\",{\"property\":\"og:url\",\"content\":\"https://otus.ru/lessons/scala/\"}],[\"$\",\"meta\",\"13\",{\"name\":\"twitter:card\",\"content\":\"summary\"}],[\"$\",\"meta\",\"14\",{\"name\":\"twitter:title\",\"content\":\"Курс «Разработчик Scala»: ООП и функциональное программирование обучение онлайн - ОТУС\"}],[\"$\",\"meta\",\"15\",{\"name\":\"twitter:description\",\"content\":\"Онлайн обучение по разработке на Scala: освойте язык программирования на базе Java, объединяющего объектно-ориентированный и функциональный подходы на базе JVM (Java Virtual Machine). Записаться на курс «Разработчик Scala» на сайте ОТУС\"}]]\n"])</script><script>self.__next_f.push([1,"9:null\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,"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,"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:T726, \u003ch2\u003eГде применяется Scala?\u003c/h2\u003e\n\u003cp\u003eScala создали на базе Java, но, в отличие от своего \u0026laquo;родителя\u0026raquo;, Scala получился лаконичным языком программирования. Языки не взаимоисключают друг друга: если вы пишете на Scala, можете использовать части кода на Java. На Scala разрабатывают микросервисы, инструменты для бизнес-аналитики, машинного обучения, обработки данных, а ещё \u0026mdash; социальные сети.\u003c/p\u003e\n\u003ch2\u003eДля кого этот курс?\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eДля Java-разработчиков с опытом от 1 года\u003c/li\u003e\n\u003cli\u003eДля разработчиков на других языках с опытом от 3 лет\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eНеобходимые знания\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eопыт разработки на Java "])</script><script>self.__next_f.push([1,"или других языках\u003c/li\u003e\n\u003cli\u003eопыт работы с БД (SQL или NoSQL)\u003c/li\u003e\n\u003cli\u003eзнакомство с синтаксисом веб-приложений\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eБудет плюсом\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eумение работать с CompletableFuture/Promise\u003c/li\u003e\n\u003cli\u003eумение работать с Optional/Maybe\u003c/li\u003e\n\u003cli\u003eумение работать с библиотекой коллекций: для Java \u0026mdash; Stream API; для C# \u0026mdash; LINQ; для Rust \u0026mdash; коллекции в Rust; для любого другого языка программирования \u0026mdash; понимать, что такое flatMap или аналогичная операция в соответствующем языке\u003c/li\u003e\n\u003cli\u003eопыт работы с REST и json\u003c/li\u003e\n\u003c/ul\u003e25:T701,Во время вебинара мы вместе с вами разработали свою упрощенную версию структуры данных Option. Для нее мы уже реализовали несколько методов.\nВаша задача реализовать оставшиеся нереализованные методы используя подходы рассмотренные на занятиях (рекурсия, паттерн матчинг):\nOption\n -printIfAny\n -zip\n -filter\n\nТакже вам необходимо реализовать односвязный иммутабельный список\nКак и Option список (List) может быть представлен двумя случаями:\nNil - пустой список\nCons - не пустой список, содержит первый элемент(голову) и хвост (оставшийся список)\n\nДля этой структуры данных реализуйте набор методов:\n - ::\n - apply\n - mkString\n - reverse\n - map\n - flatMap\n - filter\n - incList\n - shoutString \n\n\n\nДля этого необходимо: \n1. Обновить свой форк р"])</script><script>self.__next_f.push([1,"абочего репозитория Otus\n2. выполнить выше описанные задачи в файле (module1/03-introducing_fp_concepts.scala) \n\nВ файле есть все описания для выше указанных методов.\nСтарайтесь использовать приемы рассмотренные на занятии (рекурсия, паттерн матчинг)\n\nЗадание оправлять ссылкой на мерж реквест на склонированный к вам репозиторий.26:T851,"])</script><style data-styled="" data-styled-version="5.3.10"></style><script>self.__next_f.push([1,"В ДЗ три отдельных блока, объединенных общей тематикой. К каждому блоку в коде идут комментарии с более подробными инструкциями.\n\nИнструкция к первому блоку (файлы Wallet.scala и WalletMain.scala):\n1) реализовать интерпретатор Wallet[IO] использующий файлы для хранения балансов\n2) реализовать смарт-конструктор для таких интерпретаторов\n3) проверить, что всё работает, запустив WalletMain два раза. В первый раз должно вывести 100 и 50, второй раз 150 и 100\n\nВторой блок (файл WalletFibersApp.scala):\n1) описать бесконечный процесс регулярного пополнения кошелька на 100р каждые N миллисекунд\n2) запустить 3 фоновых файбера, в каждом должен быть запущен описанный выше процесс (у каждого файбера свой отдельный кошелек)\n3) описать бесконечный процесс регулярного вывода в консоль балансов всех трёх кошельков\n4) запустить фоновый файбер в котором будет запущен процесс вывода балансов\n5) добавить в основной файбер логику ожидания ввода пользователя и завершения работы после этого ввода\n\nТретий блок (файл WalletTransferApp.scala):\n1) реализовать интерпретатор Wallet[IO] использующий для хранения балансов Ref из cats-effect\n2) реализовать смарт-конструктор для таких интерпретаторов\n3) проверить, что всё работает, запустив WalletTransferApp"])</script><script>self.__next_f.push([1,"27:T1075,"])</script><script>self.__next_f.push([1,"Закончил курс по разработке на языке Scala от OTUS. Получил только положительные эмоции и фундаментальные знания. \r\n\r\nНачинал свой путь в IT с изучения Java. В процессе обучения в мое поле зрения попадали различные библиотеки и фреймворки, связанные с данным языком. Особое внимание, по рекомендации одного из моих преподавателей, заслужил фреймворк Akka, в основе которого лежит модель акторов. Изучая его документацию открыл для себя новый язык - Scala. В первую очередь, привлекла красота и лаконичность языка по сравнению с Java. Также открыл для себя новую концепцию - функциональное программирование. Рекурсивный подход, хвостовые рекурсии, отсутствие императивных циклов, отсутствие изменяемых переменных, каррирование - все это казалось чем-то недостижимым. Язык изучал по книгам («Профессиональное программирование Scala 3-е издание» Мартина Одерски) и бесплатным курсам. Но не хватало структуры и наставников. Нарвался на курс от компании OTUS. Сразу бросилось в глаза, что читают его преподаватели с огромным опытом в данной области. Прочитал программу обучения. В нее входило огромное количество тяжелых и интересных мне тем, относящихся к экосистеме языка. \r\n\r\nПоступил на курс. Все темы были раскрыты, домашние задания были тяжелыми, помогли закрепить полученные знания. Преподаватели достаточно оперативно все проверяли, давали развернутые комментарии, указывали на недочеты. Влюбился в ФП, но, самое главное, что вынес для себя - это то, что нужно от каждого подхода, будь то функциональный или объектно-ориентированный брать самое лучше и комбинировать их. \r\n\r\nРассмотрели основы языка, поработали с конкурирующим кодом(Future), функциональными эффектами. Узнал про экосистему Cats и Zio. В финале курса поговорили про Akka Actors, Akka streams, принцип CQRS. \r\n\r\nЗа время прохождения курса, попал на свою первую работу, связанную с IT, разработчиком. Разработал конкурентную систему парсинга данных на Scala на основе акторов и Future. \r\n\r\nКурсом доволен полностью. Немного не хватило Zio и Cats. Но сами по себе эти темы очень обширны и требуют углубленного изучения. Считаю, что данный курс является одним из лучших для тех, кто хочет всеобъемлюще погрузиться в экосистему Scala, и поможет выбрать вектор для дальнейшего развития. Я же планирую развиваться в направлении Zio и пройти курс по архитектуре здесь же в OTUS. Спасибо, однозначно рекомендую!"])</script><script>self.__next_f.push([1,"28:T91c,"])</script><script>self.__next_f.push([1,"Работаю в ПОА Сбербанк, блок \"Технологии\", на должности главного инженера по разработке.\r\nНаша команда разрабатывает проект на Scala. Поэтому причины выбора курса понятны. Прежде всего, с помощью курса я хотел структурировать свои знания о библиотеках и фреймворках, которые уже используются в нашем проекте, а также получить знания о фреймворках, которые не используются в проекте, но являются актуальными и популярными среди разработчиков на Scala и тем самым поднять свою квалификацию.\r\n Курс мне очень понравился. Два основных аспекта, которые я оценил высоко: актуальность и объем информации и, что очень важно, преподавательский талант ведущих курс преподавателей, прежде всего Алексея Воронца, который продемонстрировал умение объяснять просто (насколько это вообще возможно) сложные темы и вести лекции так, что интерес не теряется на протяжении 1,5 - 2 часов, пока идет занятие.\r\nВ отношении Otus хочу отметить, что к все организовано на хорошем уровне, претензий у меня не возникало, все работало, возникающие вопросы решались оперативно.\r\nОт курса я получил все, что ожидал. Можно сказать, в курс помог мне перепрыгнуть через три ступеньки в изучении Scala :).\r\nНадеюсь это поможет мне в текущей работе и мои приобретенные навыки и знания будут оценены руководством по достоинству."])</script><script>self.__next_f.push([1,"29:T951,"])</script><script>self.__next_f.push([1,"Цель обучения была систематизировать и углубить знания по Scala для трудоустройства. До этого пытался сам изучать язык но слишком много новых концепций взрывали мозг и прогресс стопорился.\r\nНашёл курсы по Scala от профессиональных разработчиков, что конечно же подкупило. Кроме того, понравилась ширина охвата тем и материала.\r\nПо итогу, ожидания оправдались:\r\n- опытный преподаватель Семен с большим опытом разработки, бодро отвечал на все вопросы и жег большим количеством и темпом подачи материала, давал много дополнительных ссылок для изучения.\r\n- с другой стороны, для мозга не привыкшего к ФП, большое обилие функциональных концепций может быть тяжеловато, но тут каждый сам решает что ему важно.\r\nДобавить хотелось бы : большей структурированности подачи + более интересные домашки и финальный проект. Чтобы было интересно делать.\r\nЧто дало обучение: усвоил базовые концепции Scala и сложил в голове более сложные темы, типа Akka и немного функциональных вещей из ZIO, cats.\r\nОтзыв писал по первому запуску курса, сейчас может уже все не так: курс переработали и сделали более продолжительным чтобы лучше уложилось в голове новые концепции. В любом случае спасибо команде Отуса и замечательным преподавателям которые очень стараются за продвижение крутых технологий, хотя, иногда ДЗ можно проверять и поживее;)."])</script><script>self.__next_f.push([1,"2b:{\"start\":\"#0A4489\",\"stop\":\"#00316B\"}\n2a:{\"gradient\":\"$2b\",\"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\":171,\"slug\":\"scala\",\"title\":\"Scala-разработчик\",\"isSpecialization\":false,\"difficultyLevel\":null,\"partnerLink\":null,\"partnerText\":\"\",\"partnerImageUrl\":\"https://cdn.otus.ru/media/public/01/f8/01f8c1324b0b48ae9618f149869da202.png\",\"partnerHeaderText\":null,\"partnerImageAlt\":\"логотип партнера\",\"category\":{\"title\":\"Программирование\",\"slug\":\"programming\"},\"scheduleGroup\":{\"id\":3341,\"title\":\"Scala-2026-04\",\"startDate\":\"2026-04-29\",\"isShowFullDate\":true,\"isShowDays\":false,\"timeFullDays\":null,\"timeFullMonth\":4,\"weekdaysStr\":\"Пн/Ср 20:00 Мск\",\"finishDate\":\"2026-10-23\",\"priceFull\":{\"fullPrice\":65000,\"discount\":0,\"discountCapped\":false},\"priceFullB2b\":{\"fullPrice\":85000,\"discount\":0,\"discountCapped\":false},\"discountValidDate\":null,\"isAssessmentEnabled\":true,\"isEnableRequest\":true,\"status\":\"ready\"},\"headerIconUrl\":\"https://cdn.otus.ru/media/public/61/26/6126879dcb50459b9c399815578b64fb.svg\",\"headerIconInvtUrl\":\"https://cdn.otus.ru/media/public/68/03/68037c05ea2b429fb76b6a47c94bd39a.svg\",\"employers\":[{\"id\":244,\"title\":\"КОД ПОДБОРА\",\"logoUrl\":\"https://cdn.otus.ru/media/public/82/85/828560e20c494ff7ac73b32ae47dd3ba.webp\"},{\"id\":138,\"title\":\"NAUMEN\",\"logoUrl\":\"https://cdn.otus.ru/media/public/e5/5f/e55fb1a3c533414db9d1549e996cd54d.png\"},{\"id\":145,\"title\":\"Datana\",\"logoUrl\":\"https://cdn.otus.ru/media/public/85/e1/85e1c6070e114d14aee6a046badf8705.png\"}],\"gaGoalDodWithoutAssessment\":\"scala_claim_event_ok\",\"yaGoalDodWithoutAssessment\":\"scala_claim_event_ok\",\"isForChildren\":false,\"linkTg\":null,\"linkVk\":null},\"blocks\":[{\"desc\":\"\u003cp\u003e\u003cstrong\u003eBest Practice по Scala, подходам функционального программирования и самым мощным Scala-библиотекам\u003c/strong\u003e\u003c/p\u003e\",\"isSpecialPriceShow\":false,\"isCourseUpdateShow\":true,\"specialPriceText\":\"Специальная цена\",\"specialPriceHelpText\":\"Пройдите тестирование и получите доступ к курсу по специальной цене!\",\"courseUpdateText\":\"Курс обновлен\",\"courseUpdateHelpText\":\"Увеличили кол-во занятий по Cats\",\"id\":3977,\"type\":\"specialization_header\"},{\"desc\":\"$24\",\"visitCardLink\":null,\"visitCardPreviewUrl\":null,\"verticalBanner\":{\"link\":\"https://otus.ru/assessment/171/?utm_source=internal\u0026utm_medium=free\u0026utm_campaign=scala\u0026utm_term=landing_test\u0026utm_content=video-za-test\",\"imgAlt\":\"Демо-ролик за прохождение теста\",\"imgUrl\":\"https://cdn.otus.ru/media/public/e0/80/e080eda6a6ed48ddbd4bd5eb7d1eb6cb.png\"},\"horizontalBanner\":{\"link\":\"https://otus.ru/lessons/scala/assessment?utm_source=internal\u0026utm_medium=free\u0026utm_campaign=scala\u0026utm_term=landing_gorizont_lesson-12-2023\u0026\u0026utm_content=test\",\"imgAlt\":\"«Оцените свой уровень знаний для обучения на этом курсе» и кнопка «Пройти тест»\",\"imgUrl\":\"https://cdn.otus.ru/media/public/b1/bf/Banners_Scala_1120x220-490557-b1bfa3.png\"},\"id\":3978,\"type\":\"SPECIALIZATION_COURSE_PRESENTATION\"},{\"title\":\"Что вам даст этот курс?\",\"text\":\"\u003cp\u003eВы изучите популярные технологии Scala, освоите подходы функционального программирования, а также познакомитесь с мощными библиотеками.\u003c/p\u003e\\n\u003ch2\u003eВы научитесь:\u003c/h2\u003e\\n\u003cul\u003e\\n\u003cli\u003eСоздавать веб-сервисы с использованием стека технологий Scala\u003c/li\u003e\\n\u003cli\u003eИспользовать приёмы функционального программирования в SOLID-приложениях\u003c/li\u003e\\n\u003cli\u003eСоздавать приложения c помощью библиотеки ZIO, основываясь на функциональном подходе\u003c/li\u003e\\n\u003cli\u003eПроектировать микросервисы на основе Akka с использованием CQRS/ES\u0026nbsp;\u003c/li\u003e\\n\u003cli\u003eСоздавать модульные тесты на основе инвариантов свойств: property-based tests\u003c/li\u003e\\n\u003c/ul\u003e\",\"sideText\":\"\u003ch2\u003e\u003cstrong\u003eАвторская программа\u003c/strong\u003e\u003c/h2\u003e\\n\u003cp\u003eМы составили программу курса \u0026laquo;Scala-разработчик\u0026raquo; с учётом требований работодателей. Модули курса помогут вам погрузиться в реальные задачи enterprise-разработки\u003c/p\u003e\",\"id\":3979,\"type\":\"SPECIALIZATION_COURSE_GOAL\"},{\"iconUrl\":null,\"title\":\"Процесс обучения\",\"text\":\"\u003cp\u003e\u003cspan\u003eУ нас нет предзаписанных уроков. \u003c/span\u003e\u003cbr\u003e\u003cspan\u003eЗанятия в OTUS \u0026ndash; это онлайн-вебинары. Преподаватели-практики помогут погрузиться в теорию, обучат на реальных примерах, расскажут о необходимых в работе инструментах. Вы всегда сможете задать вопрос и получить обратную связь.\u003cbr\u003eИ самое главное \u0026mdash; сможете практиковаться!\u003c/span\u003e\u003c/p\u003e\",\"id\":3980,\"type\":\"SPECIALIZATION_TEACHING_PROCESS\"},{\"columns\":[{\"imageUrl\":null,\"text\":\"\u003ch3\u003e\u003cstrong\u003eБудьте вне конкуренции\u003c/strong\u003e\u003c/h3\u003e\\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\\n\u003cp\u003e\u003cspan\u003e\u003cspan style=\\\"font-weight: 400;\\\"\u003eScala постепенно набирает популярность: язык уже внедрили Twitter и Coursera\u003c/span\u003e\u003c/span\u003e\u003c/p\u003e\"},{\"imageUrl\":null,\"text\":\"\u003ch3\u003e\u003cstrong\u003eУчитесь у экспертов\u003c/strong\u003e\u003c/h3\u003e\\n\u003cbr /\u003e\\n\u003cp\u003e\u003cspan\u003e\u003cspan style=\\\"font-weight: 400;\\\"\u003eПеренимайте опыт руководителей отделов разработки и старших программистов из крупных компаний\u003c/span\u003e\u003c/span\u003e\u003c/p\u003e\"},{\"imageUrl\":null,\"text\":\"\u003ch3\u003e\u003cstrong\u003eДополните портфолио\u003c/strong\u003e\u003c/h3\u003e\\n\u003cbr /\u003e\\n\u003cp\u003e\u003cspan\u003e\u003cspan style=\\\"font-weight: 400;\\\"\u003eЗащитите собственный проект и используйте, как преимущество на собеседовании\u003c/span\u003e\u003c/span\u003e\u003c/p\u003e\"}],\"id\":3981,\"type\":\"textcolumns\"},{\"title\":\"Партнеры\",\"sliderTitle\":\"Работодатели курса\",\"desc\":\"\",\"advantages\":\"\u003cul\u003e\\n\u003cli\u003e\u003cspan\u003e\u003cstrong\u003eРазместите резюме в базе OTUS\u003c/strong\u003e: так наши партнёры смогут пригласить вас на интервью\u003c/span\u003e\u003c/li\u003e\\n\u003cli\u003e\u003cspan\u003e\u003cstrong\u003eУчаствуйте в карьерных мероприятиях\u003c/strong\u003e: там мы разбираемся, как составить резюме\u003c/span\u003e\u003c/li\u003e\\n\u003c/ul\u003e\",\"vacancyDesc\":null,\"id\":3982,\"type\":\"SPECIALIZATION_EMPLOYMENT\"},{\"header\":\"\u003ch5\u003eФормат обучения\u003c/h5\u003e\",\"columns\":[{\"text\":\"\u003ch3\u003eИнтерактивные вебинары\u003c/h3\u003e\\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\\n\u003cp\u003e\u003cspan\u003e2 онлайн-занятия по 2 академических часа в неделю, вечный доступ к обучающим материалам\u003c/span\u003e\u003c/p\u003e\",\"imageUrl\":null},{\"text\":\"\u003ch3\u003eПрактика\u003c/h3\u003e\\n\u003cdiv\u003e\u0026nbsp;\u003c/div\u003e\\n\u003cp\u003e\u003cspan\u003eИтоговая проектная работа усилит знания, а её успешная защита \u0026mdash; откроет новые карьерные возможности\u003c/span\u003e\u003c/p\u003e\",\"imageUrl\":null},{\"text\":\"\u003ch3\u003eАктивное комьюнити\u003c/h3\u003e\\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\\n\u003cp\u003e\u003cspan\u003eОбщайтесь с преподавателями на вебинарах, в закрытом телеграм-чате, при проверке домашних заданий\u003c/span\u003e\u003c/p\u003e\",\"imageUrl\":null}],\"id\":3983,\"type\":\"SPECIALIZATION_EDUCATION_FORMAT\"},{\"id\":3984,\"type\":\"program\",\"program\":{\"data\":{\"id\":3518,\"title\":\"Scala-2026-04\",\"duration\":142,\"modules\":[{\"id\":21244,\"number\":1,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Cинтаксические конструкции Scala, асинхронность \",\"description\":\"В данном модуле будут рассмотрены следующие темы: \\n- Введение в Scala\\n- Основные языковые конструкции, синтаксис\\n- Знакомство с функциональными особенностями языка Scala\\n- Библиотека коллекций\\n- Асинхронность силами стандартной библиотеки (Scala Future)\",\"type\":\"common\",\"lessons\":[{\"id\":124060,\"likeDown\":0,\"likeUp\":0,\"description\":\"создать простые проекты с использованием sbt; \\nсоздать функции / методы; \\nзапустить приложение.\",\"title\":\"Обзор языковых конструкций. Интерфейсы, классы, методы\",\"summary\":\"почему Scala гибридный язык;\\nструктура Scala проекта, запуск / сборка с помощью sbt / Intellij Idea;\\nпеременные;\\nблоки кода;\\nфункции / методы;\\nуправляющие конструкции.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124061,\"likeDown\":0,\"likeUp\":0,\"description\":\"создать интерфейсы / классы;\\nобъявить методы;\\nиспользовать generic параметры.\",\"title\":\"Обзор языковых конструкций. Интерфейсы, классы, методы. Часть 2\",\"summary\":\"система типов;\\ngeneric parameters и type constructors;\\ntraits / classes / objects.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124062,\"likeDown\":0,\"likeUp\":0,\"description\":\"использовать неизменяемые структуры данных; \\nиспользовать рекурсивные методы для итерирования с состоянием; \\nсоздать и использовать функции и функции высших порядков.\",\"title\":\"Функциональные конструкции языка scala\",\"summary\":\"неизменяемые структуры данных;\\nрекурсивные методы;\\n\\\"хвостовая рекурсия\\\";\\nфункции.\",\"likeUser\":null,\"homeworks\":[{\"id\":47243,\"title\":\"Иммутабельные структуры данных: Option и List\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"На практике освоить некоторые приемы работы с такими иммутабельными структурами данных как Option и List.\",\"likeUser\":null,\"description\":\"$25\"}]},{\"id\":124063,\"likeDown\":0,\"likeUp\":0,\"description\":\"создать и использовать алгебраические типы данных; \\nиспользовать частично применимые функции.\",\"title\":\"Алгебраические типы данных и сопоставление с образцом\",\"summary\":\"ADT;\\npattern matchin.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124064,\"likeDown\":0,\"likeUp\":0,\"description\":\"использовать стандартные коллекции Scala; \\nиспользовать for comprehension; \\nдобавить поддержку for comprehension в собственные типы данных.\",\"title\":\"Библиотека коллекций\",\"summary\":\"for comprehension;\\nмонада;\\nфунктор;\\nколлекции.\",\"likeUser\":null,\"homeworks\":[{\"id\":47244,\"title\":\"Коллекции данных\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Научиться практическому использованию наиболее употребляемых методов работы с данными и немного вспомнить математику (теорию вероятности), в виду того, что скалу очень часто применяют для анализа данных, то это будет полезно.\\n\",\"likeUser\":null,\"description\":\"Необходимо будет \\\"проверить\\\" формулу вероятности\\nhttps://www.matburo.ru/tvbook_sub.php?p=par15\\n\\nЕсли кратко:\\nВ урне 3 белых и 3 черных шара. Из урны дважды вынимают по одному шару, не возвращая их обратно. Найти вероятность появления белого шара\\n\\nКак будем делать:\\n1. создать класс с моделированием эксперимента, в нем должна быть коллекция (List) моделирующая урну с шариками (1 - белый шарик, 0 - черный шарик) и функция случайного выбора 2х шариков без возвращения (scala.util.Random), возвращать эта функция должна true (если был выбран белый шар) и false (в противном случае)\\n2. создать коллекцию обьектов этих классов, скажем 10000 элементов, и провести этот эксперимент (функция map)\\n3. посчитать количество элементов массива из пункта 2 где функция вернула true, это количество поделенное на общее количество элементов массива \\n\\nPS: чем больше будет количество опытов в пункте 2, тем ближе будет результат моделирования к аналитическому решению\"}]},{\"id\":124065,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить как устроена иерархия коллекций в Scala;\\nиспользовать основные 2 методы для работы с коллекциями: map, flatMap, filter etc;\\nприменить синтаксис for comprehension.\",\"title\":\"Библиотека коллекций. Часть 2\",\"summary\":\"базовые интерфейсы коллекций.\",\"likeUser\":null,\"homeworks\":[{\"id\":47245,\"title\":\"Коллекции\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Закрепление изученного материала по библиотеки коллекций Scala, for-comprehension и функции flatMap, map\",\"likeUser\":null,\"description\":\"1. Выполнить задания по пути: src/main/scala/collections/task_collections.scala\\n Добиться успешного прохождения тестов в папке: src/test/scala/collections/check_collections_task.scala\\n\\n\\nПрислать ссылку на свой репозиторий с выполненными заданиями\"}]},{\"id\":124066,\"likeDown\":0,\"likeUp\":0,\"description\":\"использовать встроенные инструменты асинхронного программирования и обработки исключительных ситуаций; \\nиспользовать неявные параметры для передачи контекста.\",\"title\":\"Асинхронные операции, обработка исключений, неявные параметры\",\"summary\":\"Future;\\nTry;\\nEither;\\nNonFatal.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124067,\"likeDown\":0,\"likeUp\":0,\"description\":\"научиться отличать синхронный код от асинхронного в Scala;\\nнаписать асинхронные программы с использованием Scala Future;\\nразобраться в особенностях выполнения Scala Future.\",\"title\":\"Асинхронные операции, обработка исключений, неявные параметры. Часть 2\",\"summary\":\" Scala Future.\",\"likeUser\":null,\"homeworks\":[{\"id\":47246,\"title\":\"Scala Future\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Закрепление изученного материала по работе со Scala Future\",\"likeUser\":null,\"description\":\"Склонировать репозиторий https://github.com/ScalaOtus/scala-dev-mooc-2023-12\\n\\nЗадача лежит в src/main/scala/futures/task_futures_sequence.scala\\n\\nВыполнить задания в папке futures \\ntask_futures_sequence\\n\\nДобиться успешного прохождения тестов\\nfutures_sequence_test\\n\\nПрислать ссылку на свой репозиторий с выполненными заданиями\"}]}]},{\"id\":21245,\"number\":2,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Advanced Scala concepts, знакомство с концепциями функционального программирования\",\"description\":\"В данном модуле будут рассмотрены следующие темы: \\n- Продвинутые возможности языка Scala\\n- Типы высшего порядка\\n- Scala implicits и type class паттерн\\n- Начинаем знакомство с FP экосистемой Scala на примере библиотеки cats\\n- Рассматрим основные структуры данных и type classes\",\"type\":\"common\",\"lessons\":[{\"id\":124068,\"likeDown\":0,\"likeUp\":0,\"description\":\"объяснить higher-kinded types;\\nобъяснить виды implicits и мотивацию за ними;\\nобъяснить type classes и какие задачи они решают.\",\"title\":\"Higher kind types, implicits, type classes. Часть 1\",\"summary\":\"Higher-Kinded Types;\\nImplicits;\\nType Classes.\",\"likeUser\":null,\"homeworks\":[{\"id\":47247,\"title\":\"Реализовать общий метод tupleF\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Использовать на практике концепции занятия - HKT и Implicits\\nРеализовать общий метод tupleF который будет способен превратить два любых контейнера с типом F[A] и F[B] в один контейнер с типом F[(A, B)]\",\"likeUser\":null,\"description\":\"1. Обновите свой форк учебного репозитория\\n2. Отцепите локально ветку с помощью git для выполнения задания\\n3. Задание находится в файле module2/homework_hkt_implicits.scala\\n4. Выполните необходимые действия для реализации логики необходимой для работы метода tupleF\\n5. Оформите задание в виде пул реквеста в СВОЙ форк учебного репозитория\\n6. Приложите ссылку на ПР в ЛК\"}]},{\"id\":124070,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить, что такое HKT;\\nобсудить, что такое implicit и какие бывают implicit, где и как компилятор ищет implicit;\\nрассмотреть type classes.\",\"title\":\"Higher kind types, implicits, type classes. Часть 2\",\"summary\":\"recap | HKT;\\nrecap | Implicits;\\ntype classes.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124071,\"likeDown\":0,\"likeUp\":0,\"description\":\"обзор нововведений.\",\"title\":\"Scala 3 в сравнении с Scala 2, основные изменения, обзор\",\"summary\":\"нововведения; \\nизменения в версиях.\",\"likeUser\":null,\"homeworks\":[{\"id\":47249,\"title\":\"Переписать JsValue и JsonWriter на Scala 3\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"- Получить опыт ручной миграции кода со Scala 2.13 на Scala 3\\n- Попробовать на практитке синтаксис и новые языковые конструкции\\n\",\"likeUser\":null,\"description\":\"1. Переписать JsValue и JsonWriter из занятия про implicits на Scala 3\\n2. Максимально использовать конструкции и синтаксис Scala 3\\n3. https://docs.scala-lang.org/scala3/book/introduction.html\"}]},{\"id\":124069,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть место cats в Scala FP экосистеме;\\nрассмотреть примеры реализации и использования популярных тайпклассов.\",\"title\":\"Сats core, data types\",\"summary\":\"введение в scala cats.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124072,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть на примере функторы, моноиды, полугруппы;\\nдля чего используются.\\n\\n\",\"title\":\"Cats type classes\",\"summary\":\"функторы, моноиды, полугруппы.\",\"likeUser\":null,\"homeworks\":[{\"id\":47652,\"title\":\"Тайп Классы и Cats \",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Закрепление знаний по типичной структуре тайп классов (трэйт, инстансы, суммонер, синтаксис и т.д.)\",\"likeUser\":null,\"description\":\"Подготовка: Обновить форк рабочего репозитория OTUS\\nДЗ находится в папке module2/catsHomework\\n\\nЗадача:\\n\\n1. Реализовать инстанс Functor из cats.core для объявленного catsHomework трейта Tree (см. коментарии в коде)\\n2. Для объявленного в catsHome тайп класса MonadError реализовать инстансы для Try и Either (см. комментарии в коде)\\n\\nПримечание:\\nдомашнее задание необходимо сдать после прохождения занятия №13 «Cats type classes».\"}]}]},{\"id\":21246,\"number\":3,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Функциональное программирование и эффекты в Scala. Подробное знакомство с ZIO и Cats effect\",\"description\":\"В данном модуле будут рассмотрены следующие темы: \\n- Функциональное программирование на Scala с «эффектами»\\n- Введем понятие функционального эффекта\\n- Познакомимся с принципами функционального дизайна для некой предметной области\\n- Рассмотрим такие библиотеки, как ZIO и Cats effect.\",\"type\":\"common\",\"lessons\":[{\"id\":124073,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить, что такое эффект и зачем нужны эффекты.\",\"title\":\"Введение в функциональные эффекты\",\"summary\":\"эффект;\\nфункциональный дизайн;\\nразработка эффекта.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124074,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить ZIO эффект, конструкторы, операции.\",\"title\":\"ZIO эффект, конструкторы, базовые операции\",\"summary\":\"мотивация за ZIO;\\nZIO effect;\\nконструкторы и параметры типа;\\nпоследовательные операторы.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124075,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть ZIO.\",\"title\":\"ZIO модель ошибок\",\"summary\":\"мотивация за моделью ошибок в ZIO;\\nZIO Error Model;\\nДоработка нашего ZIO для обработки ошибок;\\nZIO операторы для работы с ошибками.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124076,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть ZIO.\",\"title\":\"ZIO асинхронность и паралеллизм\",\"summary\":\"Fiber model;\\nSupervision;\\nInterruption;\\nLocking \u0026 Executors.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124077,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть ZIO.\",\"title\":\"ZIO работа с ресурсами\",\"summary\":\"ресурсы;\\nстандартный подход;\\nbracket;\\nZManaged.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124078,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть ZIO.\",\"title\":\"ZIO Environment и его место в DI\",\"summary\":\"конструктор DI;\\nTagless Final DI;\\nReader Monad DI;\\nZIO DI.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124079,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть ZLayer и какую роль он играет в контексте ZIO.\",\"title\":\"ZIO ZLayer, ZIO сервис паттерн\",\"summary\":\"ZLayer;\\n ZIO Service pattern;\\nкомпозиция слоев.\",\"likeUser\":null,\"homeworks\":[{\"id\":47250,\"title\":\"ZIO эффекты\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"На практике попробовать создание и взаимодействие с ZIO эффектами, сервисами\",\"likeUser\":null,\"description\":\"1. Обновите свой форк рабочего репозитория Otus\\n2. Задания находятся в пакете module3.homework\\n3. Выполните 6 заданий согласно описанию\\n\\nОбратите внимание, результатом каждого задания должна быть zio программа, которую можно исполнить передав в zio.Runtime.default.unsafeRun \\n\\nПросьба отправлять задание в виде pull request к форку репозитория в вашем github аккаунте.\"}]},{\"id\":124080,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть тестирование ZIO программ;\\nпознакомиться со структурами Chunk, Schedule, Ref.\",\"title\":\"ZIO тестирование и дополнительные структуры данных\",\"summary\":\"Zio-test;\\nChunk;\\nSchedule;\\nRef.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124081,\"likeDown\":0,\"likeUp\":0,\"description\":\"показать базовые операторы cats.effect.IO;\\nразработать интуицию и понимание монадических эффектов;\\nразработать интуицию и понимание tagless final.\",\"title\":\"Cats effects: ведение, основные типы данных\",\"summary\":\"cats и cats-effect;\\nIO - семантика;\\nIO - конструкторы;\\nTagless Final.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124082,\"likeDown\":0,\"likeUp\":0,\"description\":\"разобрать структуру тайп классов cats effect;\\nна примере тайп классов CE разобрать использование принципа наименьшей силы;\\nнаучиться работать без привязки к конкретному эффекту.\\n\",\"title\":\"Cats effects: работа с ресурсами\",\"summary\":\"принцип наименьшей силы;\\nIO-специфичные классы cats;\\nклассы cats effect;\\nFFI.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124083,\"likeDown\":0,\"likeUp\":0,\"description\":\"показать основные типы CE3: Ref, Resource, Deferred;\\nразработать асинхронную модель CE3;\\nнаучиться применять изученные раннее техники.\",\"title\":\"Cats effects: конкурентность\",\"summary\":\"основные типы данных CE3;\\nпродвинутые комбинаторы IO;\\nприменение Tagless Final к IO-heavy коду.\",\"likeUser\":null,\"homeworks\":[{\"id\":47251,\"title\":\"Cats-effect\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Получить самостоятельный опыт решения реальных практических задач с помощью tagless final, файберов и concurrency-примитивов.\",\"likeUser\":null,\"description\":\"$26\"}]}]},{\"id\":21247,\"number\":4,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Scala библиотеки fs2 и http4s. Работа с БД \",\"description\":\"В данном модуле будут рассмотрены следующие темы: \\n- Популярные библиотеки из FP экосистемы Scala\\n- Web + Доступ к БД\\n- Функциональные стримы на примере FS2\\n- Работа с http с помощью http4s\\n- Реализация взаимодействия с БД JDBC, Scalike, Slick\",\"type\":\"common\",\"lessons\":[{\"id\":124084,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить, что такое стримы;\\nпопрактиковаться.\",\"title\":\"Функциональные стримы на примере fs2\",\"summary\":\"стримы;\\nразновидности стримов;\\nконструирование и комбинаторы на примере FS2;\\nпримеры.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124085,\"likeDown\":0,\"likeUp\":0,\"description\":\"научиться использовать основные монадические трансформеры и распознавать их эффекты в API;\\nпоказать основные модули http4s;\\nориентироваться в http4s API.\\n\",\"title\":\"Введение в http4s + DSL\",\"summary\":\"монадические трансформеры: проблема;\\nмонадические трансформеры: практика;\\nhttp4s: обзор экосистемы;\\nhttp4s: DSL.\\n\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124086,\"likeDown\":0,\"likeUp\":0,\"description\":\"получить опыт работы с Kleisli\\nпоказать основные типы http4s для композиции сервисов и аутентификации\\nнаучиться ориентироваться в http4s API.\\n\",\"title\":\"http4s middleware + аутентификация\",\"summary\":\"reader и Kleisli;\\nтипы http4s сервисов;\\nработа с запросами и ответами;\\nпрактика.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124087,\"likeDown\":0,\"likeUp\":0,\"description\":\"научиться работать с http4s-client API;\\nнаучиться писать кодеки для circe;\\nнаучиться обрабатывать стримы в запросах и ответах.\",\"title\":\"http4s стриминг + работа с JSON \",\"summary\":\"HTTP Клиент;\\nстриминг в HTTP;\\ncirce;\\nпрактика.\",\"likeUser\":null,\"homeworks\":[{\"id\":47252,\"title\":\"http4s и FS2\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"\",\"likeUser\":null,\"description\":\"Обновите свой форк учебного репозитория Otus\\n\\nЗадача:\\n\\n1. HTTP эндпоинт /counter\\n\\nВозвращающий JSON в виде {\\\"counter\\\": 1}, где число увеличивается с каждым запросом, поступающим на этот эндпоинт\\n\\n2. HTTP эндпоинт /slow/:chunk/:total/:time выдающий искусственно медленный ответ, имитируя сервер под нагрузкой\\n\\n:chunk, :total и :time - переменные, которые пользователь эндпоинта может заменить числами, например запрос по адресу /show/10/1024/5 будет выдавать body кусками по 10 байт, каждые 5 секунд пока не не достигнет 1024 байт. Содержимое потока на усмотрение учащегося - может быть повторяющийся символ, может быть локальный файл. Неверные значения переменных (строки или отрицательные числа в переменных) должны приводить к ответу Bad Request\"}]},{\"id\":124088,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть общие принципы и проблематику в работе с БД;\\nнаучиться использовать технологии для взаимодействия с БД;\\nреализовать CRUD DAO слой для приложения.\",\"title\":\"Доступ к БД\",\"summary\":\"общие принципы и проблематика;\\nуправление соединениями;\\nуправление сземой;\\nзапросы к БД.\",\"likeUser\":null,\"homeworks\":[{\"id\":47253,\"title\":\"Реализация CRUD в DAO\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"Выполнив домашнее задание Вы попрактикуетесь в реализации DAO слоя, а также с его помощью реализуете сервис для бизнес слоя. В ДЗ используются ZIO, Quill, Testcontainers\\n#zio #zio services #quill #testcontainers \",\"likeUser\":null,\"description\":\"Для запуска тестов из ДЗ понадобиться скачать и установить docker-compose https://docs.docker.com/compose/install/ \\n\\nОбновите свой форк рабочего репозитория Otus\\nВ папке test/module4 вы найдете весь инфраструктурный код. Также там находятся 2 файла с тестами UserRepositorySpec и UserServiceSpec\\nДля успешной сдачи ДЗ все тесты должны успешно запускаться и проходить.\\n\\nТесты можно запустить из вашего IDE или же из консоли с помощью команды sbt test.\\n\\nОбращаю ваше внимание, что первый запуск может занять больше времени, т.к. будут качаться докер образы.\\n\\nДля того, чтобы тесты запустились и прошли, вам нужно реализовать:\\n- UserRepository\\n- UserService\\n\\nОни представляют собой классические ZIO сервисы с готовыми интерфейсами\\nРеализовывая метод сервиса addUserWithRole, подумайте о транзакционности.\"}]}]},{\"id\":21249,\"number\":5,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Akka и CQRS/ES с использованием Akka\",\"description\":\"В данном модуле будут рассмотрены следующие темы: \\n- Модель акторов и ее реализация на Scala\\n- Библиотека Akka\\n- Событийные архитектуры\\n- Паттерн с разделения команд и запросов (CQRS)\",\"type\":\"common\",\"lessons\":[{\"id\":124091,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть основные свойства реализации модели акторов в Akka;\\nреализовать набор простых акторов и взаимодействие между ними.\",\"title\":\"Акка\",\"summary\":\"мотивация;\\nмодель акторов;\\nсвойства акторов;\\nАККА.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124092,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть проблемы с приземлением данных;\\nзапустить Flink на кластере;\\nвыделить фигурой/маркеро м инфы;\\nимитировать падение нод.\",\"title\":\"Обработка потоков данных\",\"summary\":\"как данные попадут в целевые приложения;\\nсобытия, ограничение памяти, обработка.\\n \",\"likeUser\":null,\"homeworks\":[{\"id\":47255,\"title\":\"Доработка Akka Stream pipeline для Read Side\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"В проекте доработать сторону чтения TypedCalculatorReadSide, чтобы разобраться с типами компонентов Akka Strems\",\"likeUser\":null,\"description\":\"В read side приложения с архитектурой CQRS (объект TypedCalculatorReadSide в TypedCalculatorReadAndWriteSide.scala) необходимо разделить чтение событий, бизнес логику и запись в целевой получатель и сделать их асинхронными, т.е.\\nвместо CalculatorRepository создать Sink c любой БД (например Postgres из docker-compose файла).\\nДля последнего задания пригодится документация - https://doc.akka.io/docs/alpakka/current/slick.html#using-a-slick-flow-or-sink Результат выполненного д.з. необходимо оформить либо на github gist либо PR к текущему репозиторию.\"}]},{\"id\":124093,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть проблемы взаимодействия в системе;\\nобъяснить как проблемы решаются с помощью событий и Akka;\\nреализовать простой пример.\",\"title\":\"Событие как основной тип данных в системе\",\"summary\":\"возможности Акка.\",\"likeUser\":null,\"homeworks\":[{\"id\":47256,\"title\":\"Рефакторинг akka streams\",\"likeUp\":0,\"likeDown\":0,\"goal\":\"В проекте доработать сторону чтения TypedCalculatorReadSide, чтобы разобраться с типами компонентов Akka Strems\",\"likeUser\":null,\"description\":\"В read side приложения с архитектурой CQRS (объект TypedCalculatorReadSide в TypedCalculatorReadAndWriteSide.scala) необходимо разделить чтение событий, бизнес логику и запись в целевой получатель и сделать их асинхронными, т.е.\\n1) Persistence Query должно находиться в Source\\n2) Обновление состояния необходимо переместить в отдельный от записи в БД flow, замкнуть пуcтым sink\\n\"}]},{\"id\":124094,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить когда применять паттерн разделения.\",\"title\":\"Разделение команд и запросов\",\"summary\":\"команды;\\nзапросы;\\nразбор примеров.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124095,\"likeDown\":0,\"likeUp\":0,\"description\":\"рассмотреть проблему консистентности с CQRS;\\nрассмотреть паттерн и технологии, который решают проблему консистентности с CQRS;\\nсделать реализацию стороны чтения на Akka и Scala.\",\"title\":\"Query часть CQRS\",\"summary\":\"CQRS;\\nпаттерн;\\nтехнологии;\\n примеры.\",\"likeUser\":null,\"homeworks\":[]},{\"id\":124096,\"likeDown\":0,\"likeUp\":0,\"description\":\"обсудить, как организовать доставку кода на сервер в CI/CD с Jenkins, чтобы обеспечить CI в рабочих проектах.\",\"title\":\"ES в кластере\",\"summary\":\"рассмотрим задачи для Akka Clustering, Cluster Sharding;\\nвыделение фигурой/маркеро м инфы;\\nразберемся как работает Cluster Sharding;\\nреализуем проверку карт Тройка с Cluster Sharding.\",\"likeUser\":null,\"homeworks\":[]}]},{\"id\":21248,\"number\":6,\"likeDown\":0,\"likeUp\":0,\"likeUser\":null,\"title\":\"Проектная работа\",\"description\":\"Заключительный месяц курса посвящен проектной работе. Свой проект — это то, что интересно писать слушателю. То, что можно создать на основе знаний, полученных на курсе. При этом не обязательно закончить его за месяц. В процессе написания по проекту можно получить консультации преподавателей. \",\"type\":\"project\",\"lessons\":[{\"id\":124089,\"likeDown\":0,\"likeUp\":0,\"description\":\"выбрать и обсудить тему проектной работы;\\nспланировать работу над проектом;\\nознакомиться с регламентом работы над проектом.\",\"title\":\"Выбор темы и организация проектной работы\",\"summary\":\"правила работы над проектом и специфика проведения итоговой защиты;\\nтребования к результату проекта и итоговой документации.\",\"likeUser\":null,\"homeworks\":[{\"id\":47254,\"title\":\"Проектная работа \",\"likeUp\":0,\"likeDown\":0,\"goal\":\"В этом дз необходимо выбрать и утвердить в чате по ДЗ темы проекта, разработать и презентовать проект.\",\"likeUser\":null,\"description\":\"1. Выбрать тему\\n2. Утвердить тему в чате по ДЗ\\n3. Презентовать проект \"}]},{\"id\":124090,\"likeDown\":0,\"likeUp\":0,\"description\":\"защитить проект и получить рекомендации экспертов.\",\"title\":\"Защита проектных работ\",\"summary\":\"презентация проектов перед комиссией;\\nвопросы и комментарии по проектам.\",\"likeUser\":null,\"homeworks\":[]}]}]},\"error\":null}},{\"text\":\"\u003ch2\u003eПроектная работа\u003c/h2\u003e\\n\u003cp\u003e\u0026nbsp;\u003c/p\u003e\\n\u003cp style=\\\"font-size: 20px;\\\"\u003e\u003cspan style=\\\"font-weight: 400;\\\"\u003eПопробуйте себя в роли разработчика на Scala. Создайте отказоустойчивый, масштабируемый веб-сервис: REST API + backend + базы данных. \u003cbr\u003e\u003cbr\u003e\u003cstrong\u003eПервый этап:\u003c/strong\u003e классическое SOLID-приложение в пять классов и с хранением данных в памяти. \u003cbr\u003e\u003cstrong\u003eВторой этап:\u003c/strong\u003e приложение с FP-подходом (ZIO), расширенной функциональностью, простой схемой в SQL-базе данных. \u003cbr\u003e\u003cstrong\u003eТретий этап:\u003c/strong\u003e микросервисы с отказоустойчивостью, ES на основе Akka Persistence, CQRS для сложных запросов\u003c/span\u003e\u003c/p\u003e\",\"imageUrl\":null,\"id\":3985,\"type\":\"SPECIALIZATION_PROJECT_WORK\"},{\"id\":3986,\"type\":\"teachers\",\"teachers\":[{\"id\":1497,\"fullName\":\"Алексей Воронец\",\"company\":\"Naumen\",\"companyRole\":\"Руководитель разработки департамента проектных решений и поисковых систем\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\",\"description\":\"Руководитель разработки департамента проектных решений и поисковых систем в компании Naumen.\\r\\n\\r\\nОпыт профессиональной разработки 14 лет. Последние 9 лет — это Scala. До этого были Java, JavaScript, когда-то знал PHP.\\r\\nРаботал в разных странах и в разных командах. \\r\\nГеография: Беларусь, Франция, Россия\\r\\n\\r\\nИмеет опыт проектной и продуктовой разработки в B2B и B2C сегментах.\\r\\nУчаствовал в проектировании, разработке и запуске различных проектов для Минобрнауки, Сколково, Росатома, крупных федеральных вузов. \\r\\nПроектировал, разрабатывал и запускал платформу RUSSIA.STUDY\\r\\nСфера интересов: Scala, функциональное программирование, архитектура приложений.\",\"years\":6,\"lessonsCount\":329,\"studentsCount\":437,\"courses\":[\"Scala-разработчик\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":\"superteacher\"},{\"id\":3279,\"fullName\":\"Валентин Шилин\",\"company\":\"Deutsche Telekom IT GmbH\",\"companyRole\":\"Старший программист/аналитик данных\",\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\",\"description\":\"Более 15 лет программирования на С++, С#, JavaScript, Python, Scala, Java.\\r\\n\\r\\nЭксперт в обработке больших данных с помощью Scala/Spark и Hadoop Cloudera.\\r\\n\\r\\nПроекты: \\r\\n- автоматизация документооборота для скандинавских стран в составе команды Aditro (10-15 человек); \\r\\n- автоматизация метеорадарной станции (программно-аппаратный комплекс управления метеорадаром MRL5) для активного воздействия на погоду (Болгария- Аргентина) (20 человек); \\r\\n- различные проекты от стартапов до крупных химических предприятий (Eurofins) в Германии с составом команды от 3 до 50 человек. \\r\\n\\r\\nТекущий проект: обработка сверхбольших данных DSL-метрик и прогнозирование потенциальных проблем на линиях связи в Deutsche Telekom.\\r\\n\\r\\nОбразование: \\r\\nПрикладная математика и физика, СПбГУ ПM-ПУ\\r\\n\\r\\nOtus Certified Educator\",\"years\":5,\"lessonsCount\":518,\"studentsCount\":1395,\"courses\":[\"Spark Developer\",\"Apache Kafka\",\"Python-разработчик. Продвинутый уровень\",\"Scala-разработчик\"],\"shortDescription\":\"$undefined\",\"directions\":\"$undefined\",\"yearDevelopment\":\"$undefined\",\"scheduleGroupRole\":\"teacher\"}]},{\"desc\":\"\u003cp\u003e\u003cspan\u003eБесплатный открытый вебинар \u0026ndash; онлайн-занятие с преподавателем курса. На открытом вебинаре можно посмотреть, как проходит обучение, а ещё \u0026ndash; узнать что-то ценное по интересующей теме. На занятии слушатели могут задавать ведущему вопросы\u003c/span\u003e\u003c/p\u003e\",\"header\":\"\u003ch2\u003eБлижайшие мероприятия\u003c/h2\u003e\",\"id\":3988,\"type\":\"SPECIALIZATION_FUTURE_WEBINARS\",\"events\":[{\"date\":\"2026-04-01T17:00:00+00:00\",\"eventCourseId\":171,\"eventDesc\":\"Как валидировать данные функционально и получать все ошибки сразу, используя Cats Validated вместо Either и исключений.\\r\\n\\r\\n\\r\\nО чем поговорим:\\r\\n- Почему Either неудобен для валидации (fail-fast проблема)\\r\\n- Знакомство с Validated и NonEmptyList в Cats\\r\\n- Пример: валидация формы регистрации пользователя\\r\\n- Комбинирование проверок через mapN\\r\\n- Когда использовать Validated, а когда Either\\r\\n\\r\\nКому будет интересно:\\r\\nScala-разработчикам, начинающим и практикующим функциональный подход, а также всем, кто использует Cats или хочет начать применять его в реальных задачах.\\r\\n\\r\\nВ результате урока:\\r\\nВы поймете, как работает Validated в Cats, научитесь писать композиционную валидацию данных и сможете применять это в production-коде вместо исключений и громоздких проверок.\",\"eventId\":6944,\"eventSlug\":\"scala-lesson-01-04-2026\",\"eventTitle\":\"Scala + Cats: аккумулируем ошибки с Validated без боли\",\"eventType\":\"open_lesson\",\"id\":7020,\"isRequireAssessment\":false,\"registrationEnded\":false,\"teacher\":{\"fullName\":\"Валентин Шилин\",\"id\":3279,\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\",\"work\":null}},{\"date\":\"2026-04-14T17:00:00+00:00\",\"eventCourseId\":171,\"eventDesc\":\"Разберём ключевые возможности Scala через case classes и pattern matching и покажем, как писать чистый и безопасный код.\\r\\nДанный открытый урок проходит в рамках курса … (ссылка).\\r\\n\\r\\nО чём поговорим:\\r\\n\\r\\nЧем case class лучше обычного class\\r\\n\\r\\nАвтоматические equals, copy, apply и immutability\\r\\n\\r\\nОсновы pattern matching на реальных примерах\\r\\n\\r\\nПрактический пример: обработка событий через sealed trait\\r\\n\\r\\nКак это используется в production-коде\\r\\n\\r\\nКому будет интересно:\\r\\nНачинающим Scala-разработчикам, Java-разработчикам, переходящим на Scala, и всем, кто хочет понять ключевые конструкции языка.\\r\\n\\r\\nВ результате урока:\\r\\nВы научитесь использовать case classes и pattern matching для создания безопасных и читаемых моделей данных и обработки бизнес-логики.\",\"eventId\":6945,\"eventSlug\":\"scala-lesson-14-04-2026\",\"eventTitle\":\"Case classes и pattern matching: суперсила Scala на практике\",\"eventType\":\"open_lesson\",\"id\":7021,\"isRequireAssessment\":false,\"registrationEnded\":false,\"teacher\":{\"fullName\":\"Валентин Шилин\",\"id\":3279,\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\",\"work\":null}},{\"date\":\"2026-04-20T17:00:00+00:00\",\"eventCourseId\":171,\"eventDesc\":\"Эффекты в Scala — ключ к безопасному, масштабируемому и предсказуемому коду в современных высоконагруженных системах.\\r\\n\\r\\nО чем поговорим:\\r\\n- Что такое эффекты? Разбираем разницу между побочными эффектами и контролируемыми эффектами в функциональном программировании\\r\\n- Зачем это нужно? Как эффекты помогают писать чистый, композируемый и предсказуемый код без сюрпризов\\r\\n- Основные типы эффектов: обзор Option, Either, Future, а также Cats Effect (IO) и ZIO\\r\\n- Композиция и работа с эффектами: for-comprehension, трансформеры (OptionT, EitherT) и обработка ошибок\\r\\n- Эффекты в реальных приложениях: конкурентность, управление ресурсами (Bracket/Resource) и тестирование кода с эффектами\\r\\n\\r\\nКому будет интересно:\\r\\nВсем разработчикам, желающим познакомиться с концепцией эффектов и ее применением на практике в Scala.\\r\\n\\r\\nВ результате урока:\\r\\nУзнаете, какие виды эффектов бывают и как это влияет на наш код. Научитесь использовать эффекты для решения реальных задач.\",\"eventId\":6967,\"eventSlug\":\"scala-lesson-20-04-2026\",\"eventTitle\":\"Эффекты в Scala\",\"eventType\":\"open_lesson\",\"id\":7043,\"isRequireAssessment\":false,\"registrationEnded\":false,\"teacher\":{\"fullName\":\"Алексей Воронец\",\"id\":1497,\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\",\"work\":null}}]},{\"desc\":null,\"header\":\"\u003ch2\u003eПрошедшие мероприятия\u003c/h2\u003e\",\"id\":3989,\"type\":\"SPECIALIZATION_PAST_WEBINARS\",\"events\":[{\"id\":5511,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-68.userapi.com/impg/dbEoJI19M5UFo7kRuVG-CpsWDMrlGNoR6DCPww/cPboLxeIqYI.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=b46e4970eda5a46b13c1034874fdeecb\u0026c_uniq_tag=qeJ9vxPzvQKFxo4lfkATP0ugLS9cDOV-wNVJvkDQT30\u0026type=video_thumb\",\"eventTitle\":\"Функциональное программирование в Scala\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248333\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":5572,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-25.userapi.com/impg/bHS3J64pfIOxQySCxTrXpd05CrQ-R6yMxiUC8g/jTaUs7TJVI0.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=fce91b827a70c7c0be10f16cf43dc254\u0026c_uniq_tag=DqRhfOoLiFAYsVR25oL0y_nDgBnEUw1CxE3r6UJeX-o\u0026type=video_thumb\",\"eventTitle\":\"Эффективная работа с Future в Scala: асинхронное программирование на практике\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248247\",\"teacher\":{\"fullName\":\"Валентин Шилин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\"}},{\"id\":5497,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-26.userapi.com/impg/2cG4R5HUcyp4yQPl-4NUEH_Xxx0Gj8Be9wQQtg/Rwzkd15KddI.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=0a9cd42cea30acf799316edec8f4e8ba\u0026c_uniq_tag=pKAopZCLiNyRbuDTLP5Uj3Xmb9ZIev9LT9pkqehLMUo\u0026type=video_thumb\",\"eventTitle\":\"Scala в разработке веб-приложений\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456248152\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":5138,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-15.userapi.com/impg/fsghLg9aXMPSBuxYA92fLVBn75xzhz0m-NJzqg/c_yRvuLX564.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=dc2e068fe7d860741934fdebce96e56d\u0026c_uniq_tag=ABx4Dk7wMYJ87XSH5iSouS96ayFvvIif12UlDtH0TvY\u0026type=video_thumb\",\"eventTitle\":\"Основы и особенности языка Scala\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247593\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":5137,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-78.userapi.com/impg/XdieQ1fom7HxxKjqxBLZ063N778nU1h_EK8wcA/vgA0h0qIoCM.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=243995e1b3d8f5917ab56a0c22317b68\u0026c_uniq_tag=QuvcIQZqLl0il6ug2O0T6IjDngQYy5DSUrh2MI5GGvo\u0026type=video_thumb\",\"eventTitle\":\"Эффекты в Scala\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247541\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":5136,\"eventType\":\"open_lesson\",\"previewLink\":\"https://sun9-67.userapi.com/impg/rW0UnbFOMchFEhWui-UTEDqw_3M-bceOKr4C2g/9LyTYfMt4JQ.jpg?size=320x240\u0026quality=95\u0026keep_aspect_ratio=1\u0026background=000000\u0026sign=7421c7354f862dec59a7b0d257a8f1c7\u0026c_uniq_tag=SvYf3XFkWg2zAS2yHFTXRvMLERF2uHzm4Errbfk8uQ8\u0026type=video_thumb\",\"eventTitle\":\"Функциональные стримы в Scala на примере fs2\",\"recordLink\":\"https://vk.com/video_ext.php?oid=-145052891\u0026id=456247494\",\"teacher\":{\"fullName\":\"Валентин Шилин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\"}},{\"id\":3993,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/F916o56Dd1k/0.jpg\",\"eventTitle\":\"Простой Web-сервис на ZIO. zio-http + zio + quill\",\"recordLink\":\"https://www.youtube.com/embed/F916o56Dd1k\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3992,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/M5k6uFe82qc/0.jpg\",\"eventTitle\":\"Основы и особенности языка Scala\",\"recordLink\":\"https://www.youtube.com/embed/M5k6uFe82qc\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3991,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/zbwTfA_ovYY/0.jpg\",\"eventTitle\":\"Эффекты в Scala на примере ZIO\",\"recordLink\":\"https://www.youtube.com/embed/zbwTfA_ovYY\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3716,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/c5aDtz3ZGXA/0.jpg\",\"eventTitle\":\"Пишем акторы Akka на Scala\",\"recordLink\":\"https://www.youtube.com/embed/c5aDtz3ZGXA\",\"teacher\":{\"fullName\":\"Валентин Шилин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\"}},{\"id\":3669,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/0zpirK7xOos/0.jpg\",\"eventTitle\":\"Type classes в Scala\",\"recordLink\":\"https://www.youtube.com/embed/0zpirK7xOos\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3646,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/cjOzbSl3biY/0.jpg\",\"eventTitle\":\"Механизм implicits в Scala\",\"recordLink\":\"https://www.youtube.com/embed/cjOzbSl3biY\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3256,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/nT60OIkFt00/0.jpg\",\"eventTitle\":\"Пишем REST API на Scala и http4s\",\"recordLink\":\"https://www.youtube.com/embed/nT60OIkFt00\",\"teacher\":{\"fullName\":\"Валентин Шилин\",\"photoUrl\":\"https://cdn.otus.ru/media/public/04/9a/049a9663adef4a50945be68dccfd3dbb.jpg\"}},{\"id\":3255,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/a5haqm70h5g/0.jpg\",\"eventTitle\":\"Эффекты в Scala\",\"recordLink\":\"https://www.youtube.com/embed/a5haqm70h5g\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":3254,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/FePK8QFGlxU/0.jpg\",\"eventTitle\":\"Традиционные и функциональные подходы к работе с ресурсами\",\"recordLink\":\"https://www.youtube.com/embed/FePK8QFGlxU\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2966,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/lSxM_CSeXv0/0.jpg\",\"eventTitle\":\"Скрещиваем http4s и ZIO\",\"recordLink\":\"https://www.youtube.com/embed/lSxM_CSeXv0\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2965,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/AVLcFYy90Xo/0.jpg\",\"eventTitle\":\"Практическое применение функционального дизайна в Scala\",\"recordLink\":\"https://www.youtube.com/embed/AVLcFYy90Xo\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2641,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/oWs4551JQNY/0.jpg\",\"eventTitle\":\"Основы и особенности языка Scala\",\"recordLink\":\"https://www.youtube.com/embed/oWs4551JQNY\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2640,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/U3CflMZXXHk/0.jpg\",\"eventTitle\":\"Знакомство с ZIO\",\"recordLink\":\"https://www.youtube.com/embed/U3CflMZXXHk\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2382,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/yr8S6Ekjlts/0.jpg\",\"eventTitle\":\"Scala и парсер-комбинаторы\",\"recordLink\":\"https://www.youtube.com/embed/yr8S6Ekjlts\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2381,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/MjLPOgJDgC4/0.jpg\",\"eventTitle\":\"Функциональные конструкции языка Scala\",\"recordLink\":\"https://www.youtube.com/embed/MjLPOgJDgC4\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2096,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/ZD0-ZAVGWhI/0.jpg\",\"eventTitle\":\"Открытый урок «Алгебраические типы данных и сопоставление с образцом»\",\"recordLink\":\"https://www.youtube.com/embed/ZD0-ZAVGWhI\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":2097,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/6lwb-GCVGGg/0.jpg\",\"eventTitle\":\"Открытый урок «Эффекты в Scala»\",\"recordLink\":\"https://www.youtube.com/embed/6lwb-GCVGGg\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1911,\"eventType\":\"open_lesson\",\"previewLink\":\"https://bs.boomstream.com/balancer/GkWxdix9-m1.jpg\",\"eventTitle\":\"Открытый урок \\\"REST API при помощи HTTP4S и ZIO\\\"\",\"recordLink\":\"https://play.boomstream.com/O0FsH8qQ\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1912,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/zeiCOp_Zp58/0.jpg\",\"eventTitle\":\"Открытый урок \\\"Functional Design в Scala\\\"\",\"recordLink\":\"https://www.youtube.com/embed/zeiCOp_Zp58\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1670,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/RSGXayZ8YfY/0.jpg\",\"eventTitle\":\"Demo Day курса «Scala-разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/RSGXayZ8YfY\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1674,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/xWTCn-v7Wrw/0.jpg\",\"eventTitle\":\"Scala и парсер-комбинаторы\",\"recordLink\":\"https://www.youtube.com/embed/xWTCn-v7Wrw\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1673,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/4YDw6WLGq4Y/0.jpg\",\"eventTitle\":\"Scala коллекции\",\"recordLink\":\"https://www.youtube.com/embed/4YDw6WLGq4Y\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1370,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/rprxRNGVO9k/0.jpg\",\"eventTitle\":\"Разработка простого REST API c помощью HTTP4S и ZIO\",\"recordLink\":\"https://www.youtube.com/embed/rprxRNGVO9k\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1368,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/oXOUQI4siC4/0.jpg\",\"eventTitle\":\"Demo Day курса \\\"Scala-разработчик\\\"\",\"recordLink\":\"https://www.youtube.com/embed/oXOUQI4siC4\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1093,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/2FYlcAQeBhI/0.jpg\",\"eventTitle\":\"Демо-занятие «Событие как основной тип данных в системе»\",\"recordLink\":\"https://www.youtube.com/embed/2FYlcAQeBhI\",\"teacher\":{\"fullName\":\"Вадим Опольский\",\"photoUrl\":\"https://cdn.otus.ru/media/public/d7/4a/d74ac6ca4cec40cc839597f29a819ca6.jpg\"}},{\"id\":1062,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/vuDMXPuT4qU/0.jpg\",\"eventTitle\":\"Demo Day курса «Scala-разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/vuDMXPuT4qU\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1063,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/x56WuzbriF4/0.jpg\",\"eventTitle\":\"Демо-занятие «Эффекты в Scala»\",\"recordLink\":\"https://www.youtube.com/embed/x56WuzbriF4\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":1061,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/TTbbDTrEx_s/0.jpg\",\"eventTitle\":\"Карьера для Scala-разработчика\",\"recordLink\":\"https://www.youtube.com/embed/TTbbDTrEx_s\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":872,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/WhAcjoARK7M/0.jpg\",\"eventTitle\":\"Функциональное программирование в Scala\",\"recordLink\":\"https://www.youtube.com/embed/WhAcjoARK7M\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":831,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/LNoeiHZyqz8/0.jpg\",\"eventTitle\":\"Всё о курсе «Scala-разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/LNoeiHZyqz8\",\"teacher\":{\"fullName\":\"Алексей Воронец\",\"photoUrl\":\"https://cdn.otus.ru/media/public/b1/28/b128b58a27e04149b23bc12ae561f2b7.jpg\"}},{\"id\":643,\"eventType\":\"open_lesson\",\"previewLink\":\"https://img.youtube.com/vi/-2kImsQQygs/0.jpg\",\"eventTitle\":\"Scala в разработке веб-приложений\",\"recordLink\":\"https://www.youtube.com/embed/-2kImsQQygs\",\"teacher\":{\"fullName\":\"Семён Попугаев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/c8/9e/c89ecfcc6ea846fbb381f24dea965d02.jpg\"}},{\"id\":623,\"eventType\":\"dod\",\"previewLink\":\"https://img.youtube.com/vi/HudXwjDHtp4/0.jpg\",\"eventTitle\":\"Всё о курсе «Scala-разработчик»\",\"recordLink\":\"https://www.youtube.com/embed/HudXwjDHtp4\",\"teacher\":{\"fullName\":\"Семён Попугаев\",\"photoUrl\":\"https://cdn.otus.ru/media/public/c8/9e/c89ecfcc6ea846fbb381f24dea965d02.jpg\"}}]},{\"id\":3990,\"type\":\"EMPLOYEE_REQUEST\"},{\"title\":\"Отзывы\",\"id\":3991,\"type\":\"SPECIALIZATION_REVIEW\",\"reviews\":[{\"id\":2803,\"dateCreated\":\"2024-12-27T12:22:23+00:00\",\"text\":\"Уважаемые руководители образовательной компании Otus, благодарю Вас, преподавателей и руководителя курса \\\"Scala-разработчик\\\".\\r\\n\\r\\nБлагодаря этому курсу я получил необходимые знания и получил интересную и высокооплачиваемую работу в крупной компании.\\r\\n\\r\\nОгромное СПАСИБО!\",\"shortText\":null,\"user\":{\"avatarUrl\":\"https://cdn.otus.ru/media/public/34/ec/avatar-377284-34ec2c.png\",\"fullName\":\"Валерий Сафронов\",\"socials\":[{\"id\":257747,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Валерий Сафронов\"},{\"id\":2648,\"dateCreated\":\"2024-10-30T17:13:54+00:00\",\"text\":\"$27\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Яков Сидин\",\"socials\":[{\"id\":287278,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Яков Сидин\"},{\"id\":2636,\"dateCreated\":\"2024-10-28T08:37:38+00:00\",\"text\":\"$28\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Ярослав Зубарев\",\"socials\":[{\"id\":292751,\"service\":\"telegram\",\"value\":\"telegram\"}]},\"name\":\"Ярослав Зубарев\"},{\"id\":2635,\"dateCreated\":\"2024-10-28T08:34:49+00:00\",\"text\":\"Работаю инженером данных и имею поверхностный опыт со Scala, хотел понимать лучше, т.к. сейчас у нас основные фреймворки разработки на Scala и хотелось лучше понимать этот язык разработки. Дополнительно был замотивирован, т.к. в начале года на интервью в другой отдел понял, что нужно свой уровень подтянуть. Курс выбрал в Otus, т.к. уже имел положительный опыт обучения в Otus на другом курсе. Курс очень понравился, т.к. инструкторы курсы хорошо раскрывают материал на простых примерах, что позволяет объяснить сложные вещи просто. Также хорошо подготовлены домашние задания. Из пожеланий: хотелось бы получить на курсе дополнительно больше материала по новым версиям фреймворков разработки, например ZIO2. В практическом смысле обучение помогает лучше и более уверенно ориентироваться в сложных задачах , где применяется Scala, на текущем месте работы.\",\"shortText\":null,\"user\":{\"avatarUrl\":\"https://cdn.otus.ru/media/public/64/32/avatar-1801-6432cf.png\",\"fullName\":\"Алексей Квашнин\",\"socials\":[{\"id\":86838,\"service\":\"skype\",\"value\":\"skype\"}]},\"name\":\"Алексей Квашнин\"},{\"id\":2358,\"dateCreated\":\"2024-06-25T12:21:01+00:00\",\"text\":\"Работал Data Engineer’ом, в основном в банковской сфере, немного в телекоме.\\r\\n\\r\\nВ целом очень нравился и нравится Scala как язык, хотелось продолжать в нем развиваться, но для этого нужно было перейти куда-то ближе к backend’у, ради чего я и записался на курс.\\r\\n\\r\\nНа курсе нравится ориентированность на «работающего» ученика, разумный баланс между теорией и практикой, проработанные практические задания, где ты можешь сфокусироваться на решении проблемы, а не на настройке среды, мотивированные преподаватели. Где-то хотелось бы улучшить документацию по ДЗ, в частности, по последним заданиям, потому что там пришлось повозиться с настройкой Docker на Linux, а также собрать все практические задания в одном репозитории (их было три).\\r\\n\\r\\nГде-то за месяц-полтора до окончания курса перешел на позицию backend Scala-разработчика в «Тинькофф» (теперь - «Т-Банк»), наверное, большего от курса и не мог бы пожелать.\",\"shortText\":null,\"user\":{\"avatarUrl\":\"https://cdn.otus.ru/media/public/28/5b/avatar-504527-285bf5.png\",\"fullName\":\"Василий Сотников\",\"socials\":[]},\"name\":\"Василий Сотников\"},{\"id\":1921,\"dateCreated\":\"2023-09-29T17:10:36+00:00\",\"text\":\"Напишу свой отзыв здесь в целом по курсу. Итоговой опрос уже прошел, там все детали описал.\\r\\nХотел бы выразить огромную блогадрность организаторам и преподавателям Алексею Воронцу и Валентину Шилину. Курс действительно мощный, охватывает много. От части это и его минус, потому что части тем оставили вопросы, но вектор есть, куда копать понятно, иначе весь курс занял бы год, а то и больше.\\r\\nВ целом список тем актуальный, темы раскрыты, но с разной степенью качества, тоже надо признать. Остался очень доволен темой с zio, по-другому взглянул на concurenncy, поигрался со scala 3, до этого ее вообще не видел, систематизировал для себя эффекты, монады, функторы и прочую местную экзотику. Курс однозначно пошел на пользу, апгрейднул навыки и позволил выйти за пределы стандартной скалы. Все то, за чем я шел на курс, я получил.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Антон Лыткин\",\"socials\":[]},\"name\":\"Антон Лыткин\"},{\"id\":1912,\"dateCreated\":\"2023-09-25T18:42:03+00:00\",\"text\":\"Отличный курс! Не только помог привести текущие знания по scala в порядок но и освоить довольно сложную, для меня тему - функциональное программирование. Большое спасибо преподавателям за работу над этим курсом)\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Денис Сладковский\",\"socials\":[]},\"name\":\"Денис\"},{\"id\":1580,\"dateCreated\":\"2022-12-15T14:19:17.736506+00:00\",\"text\":\"Курс понравился, ожидания оправдались. Информация подаётся в систематизированном виде. По итогу можно сказать, что прошёл основной roadmap по миру Scala, получил базис, теперь на этом базисе можно продолжать самостоятельное изучение. Преподавательский состав понравился, особенно запоминались занятия Алексея из-за чёткости и структурированности изложения материала и хорошей камеры :)\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Павел \",\"socials\":[]},\"name\":\"Павел\"},{\"id\":1573,\"dateCreated\":\"2022-12-09T13:54:24+00:00\",\"text\":\"Обучение проходило хорошо. Курс по наполнению понравился. Но есть проблемы с подачей материала у Павкина и не много у Опольского. Павкин - мало структурности в подаче, перепрыгивает с мысли на мысль, видно что знаний много, но правильно поделиться не может. В этом отношении отличная подача материала происходит у Воронец Алексея.\\r\\nНо в общим знаний дали много, узнал новое и теперь собираюсь это применять в своём новом проекте.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Максим Петров\",\"socials\":[]},\"name\":\"Максим Петров\"},{\"id\":1377,\"dateCreated\":\"2022-05-31T16:28:00+00:00\",\"text\":\"Хороший курс с достаточно широким охватом технологий для начинающего скала разработчика. Все было неплохо, пока не дошли до акторов. Преподаватель явно вел свою первую группу, материал был еще не отработан, примеры кода не работали и большое количество времени тратилось на отлаживание, периодически сбивались с темы из-за чего очень сложно было уследить за ходом объяснения. Но главное это живое общение с преподавателем, озвучено было много библиотек и технологий, курс есть, а остальное непонятное можно уже догуглить или в документации дочитать.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Алексей Аносов\",\"socials\":[]},\"name\":\"Алексей\"},{\"id\":1242,\"dateCreated\":\"2021-12-25T17:23:10.455120+00:00\",\"text\":\"Отличный курс. Особенно понравились модули, посвященные функциональному программированию. Очень рекомендую.\",\"shortText\":null,\"user\":{\"avatarUrl\":\"https://cdn.otus.ru/media/public/5c/23/avatar-1801-5c2352.png\",\"fullName\":\"Александр Степанянц\",\"socials\":[]},\"name\":\"Александр\"},{\"id\":1153,\"dateCreated\":\"2021-09-29T20:00:41.137505+00:00\",\"text\":\"Курс в целом понравился\\r\\nлекции по ZIO, Cats - огонь. \\r\\nAkka Typed + CQRS также заинтересовала после лекций преподавателя.\\r\\n\\r\\nК сожалению, темы рассмотренные на курсе слишком обширны, для полного охвата. По каждой можно составить отдельный курс. \\r\\nЧто бы я посоветовал, прошлому себе :-) , перед началом курса - сосредоточится на одной теме, слушать лекции, читать по ней статьи, прорабатывать неясные моменты и чаще спрашивать преподавателя.\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Александр Грачев\",\"socials\":[{\"id\":85940,\"service\":\"whatsapp\",\"value\":\"whatsapp\"}]},\"name\":\"Александр Грачев\"},{\"id\":818,\"dateCreated\":\"2021-02-03T07:57:35.472927+00:00\",\"text\":\"$29\",\"shortText\":null,\"user\":{\"avatarUrl\":null,\"fullName\":\"Константин -OP\",\"socials\":[]},\"name\":\"Konstantin\"}]},{\"header\":\"\u003ch2\u003eДиплом о профессиональной переподготовке\u003c/h2\u003e\",\"desc\":\"\u003cp\u003e\u003cspan\u003eOTUS осуществляет лицензированную образовательную деятельность. В конце обучения вы получите сертификат OTUS о прохождении курса, а при выполнении проектной работы \u0026ndash; удостоверение о повышении квалификации\u003c/span\u003e\u003c/p\u003e\",\"sideDesc\":\"\u003ch3\u003eПосле обучения:\u003c/h3\u003e\\n\u003cul\u003e\\n\u003cli\u003eполучите доступ к обучающим материалам: видеозаписям всех вебинаров, презентациям к занятиям, к решениям задач и проектов в виде кода на GitHub\u003c/li\u003e\\n\u003cli\u003eприобретёте опыт enterprise-разработки на Scala\u003c/li\u003e\\n\u003cli\u003eдополните портфолио проектом веб-сервиса\u003c/li\u003e\\n\u003c/ul\u003e\",\"id\":3992,\"type\":\"SPECIALIZATION_CERTIFICATE\"},{\"id\":13845,\"type\":\"PRICE_INFORMATION\",\"isEnableInstallmentPercentageFeature\":true,\"installmentInfo\":{\"full\":5416.67,\"discount\":0,\"isMaxDiscount\":false,\"discountPercent\":0}},{\"id\":8944,\"type\":\"SPECIALIZATION_FAQ\",\"items\":[{\"name\":91,\"title\":\"Что, если в середине курса я не смогу продолжать обучение?\",\"description\":\"Вы можете бесплатно перейти в другую группу. Но только один раз.\"},{\"name\":92,\"title\":\"Обязательно ли защищать выпускной проект?\",\"description\":\"Для получения сертификата OTUS сдавать проект необязательно (в сертификате будет отражено кол-во выполненных домашних работ). Для получения Удостоверения о повышении квалификации необходимо выполнить итоговый проект. Кроме того, проект необязательно защищать перед аудиторией, а можно сдать в чате с преподавателем.\"},{\"name\":93,\"title\":\"Я могу вернуть деньги?\",\"description\":\"Да, мы можем вернуть деньги за то время, которое вы ещё не успели отучиться.\\r\\nНапример, если курс длится пять месяцев, а вы отучились один, мы вернём деньги за оставшиеся четыре месяца.\"},{\"name\":627,\"title\":\"Обязательно ли выполнять домашние задания? Кто проверяет домашние задания и итоговый проект?\",\"description\":\"Да, если вы действительно хотите повысить свои навыки программирования на Scala.\\r\\nНа все задания развернутую обратную связь дают наши преподаватели и наставники. При желании вы можете защитить свой итоговый проект перед руководителем и преподавателями курса.\"},{\"name\":628,\"title\":\"Можно ли задавать вопросы?\",\"description\":\"Да, даже нужно! Вы можете задавать преподавателю вопросы по содержанию во время онлайн-вебинара, в закрытом Telegram-чате или в чате по ДЗ. На организационные вопросы вам всегда поможет ответить коммьюнити-менеджер курса.\"},{\"name\":629,\"title\":\"Насколько сложно учиться?\",\"description\":\"Курс подходит для всех, кто имеет опыт разработки на Java, Scala или других языках программирования. Для успешного прохождения обучения необходимо приложить усилия и старания, в т.ч. и при самостоятельном изучении материалов. Будьте готовы тратить на обучение и выполнение домашних заданий от 6 до 12 часов в неделю.\"},{\"name\":630,\"title\":\"Какой объем практики предусмотрен на курсе?\",\"description\":\"Больше 80%. Также во время обучения вам будут доступны дополнительные источники информации, богатый список литературы и референсов для ознакомления и углубления знаний, видеозаписи всех вебинаров занятий. А наши преподаватели всегда готовы поделиться с вами самыми актуальными материалами.\"},{\"name\":935,\"title\":\"Помогаете ли вы с трудоустройством после курса?\",\"description\":\"Мы проводим вебинары на тему трудоустройства в OTUS Club: разбираем резюме, способы прохождения собеседований, особенности реферальных программ при найме. Что важно: преподаватели курса занимают ведущие позиции в разных компаниях, и вы можете получить ценную рекомендацию. Поэтому будьте активны, выполняйте домашние задания, проявляйте себя\"},{\"name\":936,\"title\":\"Здесь нет моего вопроса\",\"description\":\"Позвоните по номеру +7 499 938-92-02 (звонок бесплатный) или напишите на почту help@otus.ru: мы постараемся ответить на все ваши вопросы\"}]}],\"theme\":\"$2a\",\"button\":{\"nextAttempt\":null,\"assessmentId\":null,\"state\":\"course_request_required\",\"userCourseId\":null,\"courseTitle\":\"Scala-разработчик\",\"courseSlug\":\"scala\",\"groupId\":3341,\"showFastbuyButton\":false},\"structuredData\":{\"@context\":\"http://schema.org\",\"@type\":\"Course\",\"name\":\"Scala-разработчик\",\"url\":\"https://otus.ru\",\"logo\":\"https://otus.ru/__new_static__/img/meta-image.png\",\"sameAs\":[\"https://vk.com/otusru\",\"https://t.me/Otusjava\"],\"description\":\"Углубленный курс по Scala, в котором вы получите практические знания в популярных технологиях Scala, подходах функционального программирования и познакомитесь с самыми мощными Scala-библиотеками. Курс рассчитан на Java-разработчиков с опыт…\",\"provider\":{\"@type\":\"Organization\",\"name\":\"OTUS\",\"sameAs\":\"https://otus.ru\"},\"image\":\"https://otus.ru/__new_static__/img/meta-image.png\",\"aggregateRating\":{\"@type\":\"AggregateRating\",\"ratingValue\":\"4.7\",\"ratingCount\":\"150\"},\"offers\":{\"@type\":\"Offer\",\"priceCurrency\":\"RUB\",\"price\":65000,\"availability\":\"https://schema.org/InStock\",\"url\":\"https://otus.ru/lessons/scala\"},\"hasCourseInstance\":{\"@type\":\"CourseInstance\",\"name\":\"Scala-разработчик (Онлайн)\",\"courseMode\":\"Online\",\"startDate\":\"2026-04-29\",\"endDate\":\"2026-10-23\",\"duration\":\"P6M\"}}}}]}]\n"])</script><style data-styled="" data-styled-version="5.3.10"></style><script>self.__next_f.push([1,"2c:T57e,{\n \"@context\": \"http://schema.org\",\n \"@type\": \"Course\",\n \"name\": \"Scala-разработчик\",\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 \"description\": \"Углубленный курс по Scala, в котором вы получите практические знания в популярных технологиях Scala, подходах функционального программирования и познакомитесь с самыми мощными Scala-библиотеками. Курс рассчитан на Java-разработчиков с опыт…\",\n \"provider\": {\n \"@type\": \"Organization\",\n \"name\": \"OTUS\",\n \"sameAs\": \"https://otus.ru\"\n },\n \"image\": \"https://otus.ru/__new_static__/img/meta-image.png\",\n \"aggregateRating\": {\n \"@type\": \"AggregateRating\",\n \"ratingValue\": \"4.7\",\n \"ratingCount\": \"150\"\n },\n \"offers\": {\n \"@type\": \"Offer\",\n \"priceCurrency\": \"RUB\",\n \"price\": 65000,\n \"availability\": \"https://schema.org/InStock\",\n \"url\": \"https://otus.ru/lessons/scala\"\n },\n \"hasCourseInstance\": {\n \"@type\": \"CourseInstance\",\n \"name\": \"Scala-разработчик (Онлайн)\",\n \"courseMode\": \"Online\",\n \"startDate\": \"2026-04-29\",\n \"endDate\": \"2026-10-23\",\n \"duration\": \"P6M\"\n }\n}5:[\"$\",\"script\",null,{\"type\":\"application/ld+json\",\"dangerouslySetInnerHTML\":{\"__html\":\"$2c\"}}]\n"])</script></body></html><style data-styled="" data-styled-version="5.3.10"></style>