Quantcast
Channel: Найцікавіше на DOU
Viewing all 8789 articles
Browse latest View live

Research Lead Микола Максименко — про квантових програмістів та роботу поруч з Нобелівськими лауреатами

$
0
0

Микола Максименко — Research Lead у R&D відділі компанії SoftServe. Тривалий час він займався фізикою в Інституті комплексних систем Макса Планка у Німеччині та в Інституті Вайцмана в Ізраїлі, де працював поруч з лауреатами Нобелівських премій. А про роботу одного з його колег навіть зняли серію в Теорії великого вибуху. В інтерв’ю для DOU Микола Максименко розповів про роботу в закордонних університетах і правильне середовище, що чекати від квантових комп’ютерів та коли потрібні будуть квантові програмісти.

— З чого почалось ваше захоплення фізикою?

В дитинстві фізика мені здавалась майже суперсилою, бо можна було робити певні оцінки відстаней чи швидкостей, користуючись досить простими рівняннями, які можна рахувати подумки. Наприклад, вирахувати довжину нитки, маючи лише годинник і монетку. Але серйозно наукою захопився вже майже наприкінці школи через участь в олімпіадах. Саме при вступі до університету фізика, в порівнянні з інженерними спеціальностями, здалась мені більш фундаментальною. Тому обрав її. Ти намагаєшся зрозуміти суть явища, відкинувши не важливі фактори. Фізика цікава способом мислення.

— Як саме виглядає цей спосіб мислення?

На рух електронів в металах можна дивитись як на рідину або газ, які ми достатньо добре розуміємо. Складні суспільні явища, в яких, здавалось, є неймовірна кількість різних факторів, можна також описати достатньо простими моделями. Це як здоровий глузд, який є очевидний, але ним мало хто користується.

— Здоровий глузд — доволі відносне поняття.

Маю на увазі логічні дії і розуміння їх наслідків, але не тільки миттєвих, а й довгострокових. Іван Лешко, віце-президент SoftServe, написав про це класну книжку — «Common sense по-українськи».

— Як ви потрапили до Інституту комплексних систем Макса Планка в Німеччині та до Інституту Вайцмана в Ізраїлі?

Формально це звичайний аплікаційний процес, в якому потрібно подати CV й описати свої наукові інтереси, бачення майбутніх досліджень. Потім потрібно пройти кілька інтерв’ю та зробити семінар. Але до цього всього ще треба було дійти. В аспірантурі мені пощастило працювати з дуже хорошим науковим керівником, який окрім того, що підключав студентів до цікавих проблем, в яких є ще достатньо простору для новизни, ще й підштовхнув їх подаватись на конференції та гранти. В Україні з цим ситуація критична, бо середовище досить ізольоване. Молодому науковцю важливо працювати зі «свіжими» ідеями і проблемами, про які активно дискутують і де можна швидко зробити фундаментальний внесок. Інакше можна втратити багато зусиль та часу, досліджуючи задачу, яка може бути в принципі нікому не цікава і чиновий внесок у яку вже особливо нічого не змінює.

— Чим ви займалися в Інституті Макса Планка?

Я займався квантовими системами з незвичайними кристалічними гратками, які мали досить багато недосліджених ефектів: від магнетизму і нових фаз матерії до квантової інформатики. Я досить швидко отримав кілька грантів від німецького фізичного товариства DPG та німецької програми академічних обмінів DAAD. Завдяки цьому я познайомився зі своїми співавторами в університетах Геттінгену і Магдебурга та мав нагоду представляти наші результати на багатьох хороших конференціях в Європі, наприклад, Міжнародна конференція по магнетизму. Співавтори і науковий керівник були потім тими, до кого відповідні інституції звертались за рекомендаційними листами. Зазвичай я мав до шести конференцій на рік.

Інститут Макса Планка фізики складних систем є одним з найкращих місць для розвитку світогляду молодого вченого. Цей інститут є водночас конференційним центром, де щотижня відбувається нова конференція. За рік часу можна побачити майже весь зріз науки, а більшість людей там з фізики конденсованого стану, статистичної та біофізики, фізики складних систем. Навіть зустрінеш Нобелівських лауреатів. Наприклад, Данкана Галдейна, який отримав Нобелівську премію два роки тому за внесок в дослідження топологічних фаз матерії. Його можна зустріти в інституті кілька разів на рік. Протягом певного часу ти працюєш разом з цими людьми, ходиш разом на обід чи в гори, а між тим — дискутуєш про науку. В світі зовсім небагато таких місць.

Я працював також з директором Інституту — Родріхом Мьоснером. Про його передбачення магнітних монополів у спіновому льоді навіть зняли серіюв Big Bang Theory. Ми придивлялись до подібних екзотичних систем, де могли б бути несподівані яскраві ефекти. Одним з таких явищ була повна локалізація хвиль у структурах з конкуруючою геометрією зв’язків, наприклад, візерунок кагоме — типовий для японських корзинок.

Наприклад, уявіть, що ви створили збудження (звук, світло, електрон) у певному матеріалі, але замість того, щоб поширитись по всьому кристалу, таке збудження буде жити лише в обмеженій комірці. Це явище має багато цікавих застосувань — від нового типу магнетизму і ізоляційних матеріалів до нових холодильних елементів і квантової інформатики, де ця вся історія стосується кубітів і поширення інформації. Несподівано це привело нас до аналогії магнетизму таких локалізованих електронів з «вибухами» (або розпадом) соціальних та інших мереж (explosive percolation).

— А у Вайцмана?

В Інституті Вайцмана були два дуже активних професори, з якими мені було дуже цікаво попрацювати, — Егуд Альтман та Ерец Берг. Вони зараз в Берклі та Чікаго — тому це був правильний час і правильне місце.

На той момент всі говорили про нову фазу речовини, в якій завдяки дуже сильному безладу може порушитись термодинаміка та поширення інформації, але не було зрозуміло, наскільки це все стабільно до взаємодії з зовнішнім світом. Ми дослідили одне з фундаментальних питань на той момент — як швидко зруйнується квантовий сплутаний стан в такій системі, якщо ми почнемо за нею «підглядати». Виявляється інформація про стан ще довго залишатиметься стабільною, і це потенційно може бути добрим варіантом квантової пам’яті. В іншому проекті ми бавились ідеєю нових фаз матерії у «матеріалах», де взаємодії змінюються з часом. Знайшли цілий зоопарк нових екзотичних фаз і показали, що можемо створювати «кристалічні дефекти у часі». Наш інтерес був з точки зору зручних «топологічних квантових обчислень», де ми можемо створювати квазічастинки і маніпулювати ними, опромінюючи матеріали лазерами. На цей напрямок також ставить ставки Microsoft, очікуючи, що «топологічні фази» допоможуть отримати стабільні кубіти.

В Тель-Авіві

— Спробуйте порівняти свою роботу в цих університетах — чим вона відрізнялась?

Вайцман є трохи спокійнішим місцем ніж Макс Планк з точки зору кількості подій, але з постійними хорошими гостями, відкритими людьми і дуже тісною інтеграцією теоретиків і експериментаторів.

— Чи є щось схоже на конфлікт між теоретиками і експериментаторами?

Ні, але деколи ці групи можуть бути зовсім розділені. Наша група також була частиною європейського проекту UQUAM, що інтегрувало нас з кількома сильними центрами в напрямку квантових симуляцій і обчислень в Мюнхені, Парижі та Інсбруці. Також в Інститутідіє магістерська програма, на яку дуже раджу подаватись. В мене була нагода там вести один з курсів для студентів.

— І як?

Я ще не бачив більш мотивованих студентів. Вони буквально жили в інституті. Був такий жарт: що якщо ти вчишся в Вайцмані, то з трьох речей — тусівки з друзями, сон, навчання — треба обрати дві.

— Як цей досвід тусівки з видатними людьми та роботи за кордоном вплинув на вас?

В хорошому середовищі є можливість підхопити свіжі ідеї і навчитись відрізняти проблеми, які мають фундаментальну цінність. Люди всюди приблизно такі самі, але саме середовище впливає на те, над якими проблемами ти працюєш й чи є вони важливим в глобальному контексті.

Думаю, що я позбувся багатьох стереотипів, які є в людей, що весь час були в одному місці. Мені пощастило багато дискутувати з великою кількістю надзвичайно розумних людей та розпочати багато проектів. Радий, що маю ці зв’язки, бо навіть не перебуваючи формально в академічній науці, я залишаюсь досить добре з нею інтегрований.

— З чим у вас асоціюється той час?

Дрезден — не найвеселіше місто, але в ньому є район Нойштадт, в якому селяться в основному молоді люди та студенти, там постійно вирує життя. Варіантів жити деінде ми, звісно, не розглядали. Я навіть мав нагоду подіджеїти на одній з вечірок і організувати концерт своїх улюблених Zapaska. Я колись грав у різних групах, але зараз лише рідко джемлю з друзями, а ще рідше граю на вечірках. Зазвичай, працюю в тиші або вмикаю один з Deep Focus плейлистів в Google Music.

Тель-Авів же навпаки дуже живе місто, з яким мало, що зрівняється. З приємностей можна було зранку встигнути посерфити на морі і вчасно прийти в інститут, де за вікнами великий цитрусовий сад з апельсинами, мандаринами та кумкватом. Моя донька свої перші мандаринки від Миколая рвала сама з дерева.

Весна в Дрездені

— Чим ті інститути відрізняються від українських наукових установ?

Якщо у випускника з Вайцману щось піде не так в науковій кар’єрі, то він принаймні може бути добрим баристою. В нас на кухні стояла професійна італійська кавова машина, і якщо з нею раптом щось ставалося, то інститут буквально завмирав. Деякі люди навіть не приходили на роботу. Думаю, що в Україні добре було б почати хоча б з хорошої кави.

— Чому ви пішли в ІТ та як приймали це рішення?

В Ізраїлі в нас народилась донька. Це дуже сильно змінило моє ставлення до мандрівного і трохи невизначеного життя вченого, адже вчені — дуже мобільні. Ці мандри важко планувати таким чином, щоб всі в сім’ї мали однаково класні умови. Водночас я бачив гарні приклади своїх друзів, які вже пішли в індустрію і досить ефективно застосували там свій досвід. Ми в першу чергу приглядались до Берліну, але я бачив, що і в Україні справи в ІТ йдуть зовсім непогано. Подумав: якщо б у Львові було щось достатньо цікаве, то сюди цікаво повернутись. В SoftServe є R&D. Частина клієнтів — це ті самі компанії, куди я планував надіслати резюме. Здалось, що зі Львова з ними працювати буде комфортніше, бо тут старі друзі, рідні і можна більше впливати на різні речі, які тебе оточують.

— Чи не було у вас страху покидати науку та йти в нову сферу?

Нещодавно в Федеральній вищій технічній школі Цюриха мене представили «from the dark side». В академії є міф про «непостійність» роботи в індустрії і, мовляв, звідти ніхто не вертається назад в академічну науку. Це правда щодо кожної окремої компанії, але ринок можливостей насправді є набагато ширшим. З моїх знайомих хтось пішов в автоіндустрію, хтось в фінтех, інвестиційний банкінг, умовний «Гугл» чи компанію з виробництва супутників. Але у всіх справи йдуть дуже добре.

Зрештою, ми натреновані розв’язувати різноманітні складні проблеми, і цей досвід досить легко адаптувати до проблем іншого типу, адже методи і підходи часто залишаються тими самими.

— В чому полягає ваша робота в SoftServe?

В SoftServe я розробляю архітектуру систем машинного навчання для різних проблем та продуктів, вирощую експертизу в наукоємних технологічних проектах. Це консалтинг і R&D в штучному інтелекті, біотеху, обробці сигналів, human-computer interaction, наприклад. Моя група досить тісно співпрацює з нашою Data Science Group, бо часто дані можуть мати фізичну природу, як от дані сенсорів, яку треба розуміти, або даних може не бути взагалі, і їх потрібно створити.

— Спробуйте порівняти вашу роботу в науці та в ІТ — чим вони схожі та чим відмінні?

В індустрії я більше сфокусований на прикладних задачах, які завершуються певним технологічним рішенням в чітких часових рамках. Наприклад, клієнт може очікувати хоч якогось результату, щоб показати щось на виставці. В цьому випадку важливо вміти досить швидко пройти фазу невизначеності в проекті і спланувати, які результати ми зможемо зібрати за певний час. В науці ми працювали над фундаментальними проблемами, де час часто сприймається необмеженим, а учасники одного проекту можуть перебувати в різних куточках світу й паралельно бути залученими ще в десяток різних проектів. В цьому випадку важливо, щоб в проекті був лідер, який ефективно координує таку мережу і посуває проект вперед.

Навчальний процес

— В яких сферах, на вашу думку, штучний інтелект можна найкраще застосувати?

Сьогодні штучний інтелект найкраще робить частину роботи, яка пов’язана зі сприйняттям інформації. Це системи, які можуть краще бачити, краще чути, краще розуміти масив даних ніж людина, відповідно можуть оптимальніше робити рутинні процеси, де саме ці здібності є ключовими.

Штучний інтелект — це робоча сила, яка стоїть за кожною технологічною ідеєю, яку, наприклад, ми розробляємо у відділі R&D. Камера спостереження у коридорі, наприклад. Замість того, щоб просто пасивно знімати відео, вона може розпізнавати об’єкти та обличчя, певні дії, небезпечні ситуації та емоційний стан працівників офісу.

Дуже багато потенціалу є в аналізі медичних зображень та в телемедицині. В рітейлі ми ще маємо домінування супермаркетів з касирами, продуктами, які нам не цікаві, і людьми, які роблять безглузду роботу з опису товарів на поличках. Але це все вже змінюється. Майже в будь-якій сфері є багато простору для швидких результатів.

Як вченому мені цікаво, чи можемо ми використовувати ШІ для нових наукових відкриттів і оптимізації того, як ми зараз робимо науку. Вже зараз є досить цікаві результати по синтезу нових матеріалів, і багато вчених по всьому світу долучають машинне навчання до своїх інструментів.

— Тобто можна?

Як інструмент для пришвидшення пошуку наукових відкриттів — так. Думаю, тут варто очікувати на цікаві новини найближчим часом.

— Ілон Маск, Білл Гейтс, вже покійний Стівен Гокінг, доволі застережливо ставляться до штучного інтелекту.

З ним справді треба бути обережним. Деколи нейронна мережа вилазить з чорної коробочки і кусається. Насправді, є люди, у яких параноя щодо штучного інтелекту. Все, що може бути автоматизованим, має бути автоматизованим. Якщо комп’ютер може писати тексти краще ніж людина, він повинен це зробити. Якщо комп’ютер може краще керувати автомобілем, він повинен це робити. Багато адміністративних робочих місць можна було б усунути, дозволяючи цим людям перейти до іншої діяльності. Я вірю, що ШІ зробить світ кращим, він звільняє від непотрібної роботи. Тобто це дозволить звільнити творчий потенціал. В світі є купа важливіших справ, ніж писати, наприклад, описи товарів в інтернет- магазині.

— Як могло б відбутися написання текстів комп’ютером?

Нейронним мережам ще важко справитись з довгими текстами, але на рівні окремих речень та абзаців такі тексти вже можуть мати сенс і можуть бути використані для постів у Twitter чи Facebook.

— Ви говорите, що людина повинна бути креативною. Що саме ви маєте на увазі під креативністю?

Людина може створювати нові ідеї та знання або ж ефективно їх комбінувати. Принаймні деякий час машинам буде ще важко це повторити.

— Деякий час?

Зараз частину креативності генеративні нейронки забирають в фотошоперів. Вони можуть генерувати непогані псевдокласичні фортепіанні партії. Тому це лише питання часу, коли кількість цих здібностей розшириться. Сьогодні креативність комп’ютерів є дуже обмеженою. Зараз це швидше оптимальна стратегія, визначена обмеженнями або виграшем, який ми закладаємо.

— В історії нейронних мереж вже двічі наставали часи занепаду після великого резонансу. Вважаєте, що ця тема може вичерпатись в третє?

Обчислювальні потужності, які дали друге життя нейронним мережам, підсилили і інші класичні методи. Зараз ми часто маємо хвилю застосування багатьох ідей останніх двох десятиліть, і це має чітку бізнесову цінність, яка вимірюється в прибутку або зекономлених коштах. Тут я бачу повно роботи в різних індустріях на найближчі роки.

— Тобто вважаєте, що ця тема буде тільки набирати оберти?

В плані продуктизації — так. Хайп же трішки спаде, і це перетвориться у щось типу теперішнього джава-програмування.

— Чи правильно думати, що скоро дуже затребувані будуть програмісти квантових комп’ютерів?

Зараз є брак практичних ідей застосувань універсальних квантових комп’ютерів, адже це в певному сенсі новий тип мислення, до якого ще потрібно звикнути. Але водночас самого заліза ще немає в тому вигляді, коли з ним можна робити хоч щось корисне. Тому IBM, Microsoft, Rigetti та інші відкривають свої платформи для симуляції квантових обчислень. Це пісочниця, в якій можуть прорости цікаві застосування і нові ідеї алгоритмів.

— Спробуйте пояснити, що таке квантовий комп’ютер для десятирічної дитини? Чим він кращий за звичайний?

Класичні комп’ютери — це лише трохи складніша рахівниця. Тому вони повільні і неефективні, коли потрібно порахувати якісь природні явища, наприклад, плавлення шматка матеріалу. Ми не зможемо навіть зберегти всі можливі координати атомів в такому шматку. Нам дуже швидко бракує пам’яті. Квантові комп’ютери дозволять нам рахувати і зберігати інформацію подібно до того, як це робить природа.

Для багатьох задач він не буде потужніший за калькулятор, але певний тип задач він вирішує набагато ефективніше. Ми зможемо ефективніше розв’язувати складні оптимізаційні задачі, для яких потрібно багато паралельних обчислень або кодувати велику кількість інформації. В першу чергу є застосування в матеріалознавстві, де це дозволить значно пришвидшити валідацію ідей та дослідження нових матеріалів. Суттєвий прогрес буде і в ШІ. Квантове машинне навчання вже зараз дає більш оптимальні аналоги класичним алгоритмам.

— Як писати алгоритми для таких комп’ютерів?

Ще кілька років тому квантові алгоритми виглядали, як певний нотний стан з квантовими операторами, які діяли на кубіти. Зараз є багато спроб спростити цю репрезентацію, що дозволить людям без знання квантової механіки створювати свої алгоритми. Я думаю в ідеалі ми прийдемо до певних API, коли частина коду виконуватиметься на квантовому процесорі, коли це необхідно.

— Чим сидіння в Фейсбуці на квантовому комп’ютері відрізнятиметься від тої ж справи на звичайному?

Фронтенд користувача, напевно, виглядатиме так само, але на серверній частині деякі алгоритми та ШІ зможуть працювати швидше.

Зараз ми говоримо про специфічні задачі, в найближчому майбутньому це радше будуть мейнфрейми, де буде розв’язуватись якась частина проблеми. Не факт, що коли ми зможемо це все мініатюризувати і персоналізувати, Фейсбук буде існувати в тій формі, яку ми маємо зараз. Можна сказати точно, що за наступні кілька десятків років взаємодія людини з машинами дуже сильно зміниться.


Читайте також «DOU Books: 5 книжок, які радить Микола Максименко»


Бонусы в IT: в топе гибкий график работы и корпоративные мероприятия

$
0
0

В 2014 году мы уже публиковалистатью о бонусах в ІТ. В этом году вновь решили взглянуть на эту тему и в анкету «Портрета украинского ІТ-специалиста»добавили два вопроса: какие бонусы предоставляет ваша компания и какие бонусы вам бы хотелось получать. Представляем небольшое исследование.

78,5% респондентов Портрета указали зарплату и бонусы, как важный для них критерий при выборе работы.

Каждый четвертый респондент отмечает, что на решение о выборе работы влияет комфортность условий труда и обустройство офиса, особенно комфорт в офисе важен молодым сотрудникам. А вот для сотрудников старше 30 лет более актуальна возможность работать удаленно.

Медицинская страховка есть только у каждого 3-гореспондента

В топ-5 самых распространённых бонусов, которые предоставляют работодатели, попали: гибкий график работы (68% опрошенных указали этот вариант), корпоративные мероприятия (66%); компенсация образовательных курсов (42%); зоны отдыха в офисе (41%), а также медицинская страховка (37%).

Самым желаемым бонусом среди опрошенных оказалась медицинская страховка (42% хотели бы иметь в качестве бонуса); премии и материальные бонусы (40%); компенсация образовательных курсов (35%); компенсация занятий спортом (33%) и компенсация питания (30%).

Как видно, только 2 пункта из списка топ-5 предоставляемых попали в топ-5 желаемых бонусов: медицинская страховка и компенсация образовательных курсов.

Бонусами, которые больше респондентов хотят, чем получают оказались: неограниченный оплачиваемый отпуск (29% хотят / 2% получают); беспроцентная материальная помощь (25% / 5%); премии и материальные бонусы (40% / 22%); компенсация питания (30% / 12%); медицинская страховка (42% / 37%) и компенсация занятий спортом (33% / 32%).

30% разработчиков хотят гибкий график работы, а 35% тестировщиков — компенсацию питания

Если смотреть в разрезе должностей, то картина в целом сохраняется без изменений. Разработчики чаще других работают по гибкому графику (71% против 63% менеджеров проекта, которые указали, что работают по гибкому графику), еще 30% разработчиков указывать гибкий график в качестве желаемого бонуса.

Тестировщикам чаще компенсируют занятия спортом (39% против 29% менеджеров проекта, которым компенсируют спортивные занятия реже всех).

Менеджеры проекта больше пользуются компенсацией образовательных курсов (51% против 38% разработчиков, которые пользуются этим бонусом меньше других должностей) и релокационными программами (14%). Также они чаще, чем разработчики и тестировщики, получают материальные бонусы — 30% против 19% и 18% соответственно.

Вне зависимости от должности самым желаемым бонусом остается медицинская страховка и материальные бонусы. Компенсацией питания можно привлечь 35% тестировщиков, а 40% менеджеров проектов хотели бы получить в качестве бонуса компенсацию занятий спортом, также менеджеры больше других заинтересованы в сертификации (37%), для сравнения разработчиков, заинтересованных в сертификации, только четверть.

Каждый пятый джуниор без «соцпакета»

Распределение бонусов в зависимости от уровня должности достаточно предсказуемо: чем выше уровень должности, тем больше бонусов. Лиды чаще других отмечают все предложенные бонусы как предоставляемые, кроме компенсаций занятий спортом и релокационных программ — этими бонусами чаще пользуются респонденты с приставкой Senior. А джуниоры чаще других отмечают все предложенные бонусы как желаемые, и практически каждый пятый респондент на этой позиции выбирает вариант «нет соцпакета» (18%), к примеру среди мидлов таких респондентов 15%, среди сеньоров — 11%, а лидов — 12%.

Аутсорсинговые компании — лидеры по количеству предоставляемых бонусов

Наиболее выгодным местом работы для получения бонусов являются аутсорсинговые компании, которые предоставляют почти все из предложенных бонусов чаще других, кроме компенсации питания и предоставления премий и материальных бонусов, которые охотнее выдают продуктовые компании.

Разбивка бонусов в топ-5 городах

Наибольшее количество респондентов с медицинской страховкой от компании проживает в Киеве — 47% (35% в среднем по топ-5 городам), а во Львове, чаще чем в других городах, предоставляют в качестве бонусов гибкий график работы — 75% (69%), зоны отдыха в офисе — 49% (42%), подарки — 41% (31%), сертификацию — 28% (15%), релокационные и дисконтные программы — 17% (12%) и 32% (14%) соответственно.

В Днепре мотивируют сотрудников компенсациями образовательных курсов — 48% (44%), а также премиями и материальными бонусами — 27% (22%).

Респонденты из Харькова чаще получают корпоративные мероприятия — 73% (68%) и компенсацию занятий спортом — 39% (32%) в качестве бонуса от компании, а в Одессе 15% (11%) опрошенных указали, что им компенсируют питание.

В целом бонусы, которые упрощают повседневную жизнь, оказались самыми желаемыми среди украинских айтишников. Медицинская страховка, спорт и компенсация питания — то, чем можно привлечь сотрудников в компанию, не считая материальных бонусов.

Компенсация питания оказалась одним из самых недооцененных компаниями бонусов: только 12% получают этот бонус, в том время как хотели бы получать 30% респондентов. Также из нематериальных бонусов востребована компенсация образовательных курсов, и это актуально не только для начинающих карьерный путь, но и для опытных специалистов.


Текст и аналитика: Виктория Солдатова
Визуализация данных: Игорь Яновский

DOU Labs: как в EPAM делают облачную платформу, которая откроет разработчикам доступ в автомобиль

$
0
0

В рубрике DOU Labsмы приглашаем IT-компании делиться опытом собственных интересных разработок и внутренних технологических инициатив. Вопросы и заявки на участие присылайте на editors@dou.ua.

Всем привет. Меня зовут Алекс, я руковожу направлением Automotive & Embedded Systems в EPAM. Чуть больше полутора лет назад мы начали проект разработки облачной платформы для автомобилей. И этим проектом занимаются ребята из киевского офиса. Надеемся, в ближайшие годы он позволит автопроизводителям перестроиться на новые рельсы и глобально подружиться с software и облачными сервисами.

Эта платформа — внутренняя инициатива EPAM. Сегодня мы используем ее как наш value add, когда предлагаем наши услуги для автомобильных компаний.

Расскажу о том, почему мы рассчитываем на успешное использование платформы производителями автомобилей и чем наше облачное решение отличается от других.

Мостик между разработчиками и автоиндустрией

Automotive — интенсивно развивающийся сегмент в любой IT-компании. Автомобильные компании все больше уходят в software, и это прекрасно видно по машинам, которые уже продаются. Все мировые производители поголовно говорят о будущем self-driving car. А мы только успеваем вносить их заявления в презентации.

По объемам индустрия automotive никак не меньше того, что недавно происходило с мобильными или с веб-технологиями. Однако и вызовы она ставит не меньшие. Автомобилестроение в отличие от мобильных, финансовых приложений или e-commerce отличается главным: разработка программного обеспечения для автомобиля сложна и требует жесткого контроля процесса разработки и качества. Потому что автомобиль в случае самой маленькой программной неисправности может травмировать или лишить жизни человека.

Поэтому было бы ошибочно предполагать, что сейчас мы, используя Agile-подход, разработаем на Java, .NET или Python программное обеспечение, которые моментально интегрирует автомобиль в цифровой мир. Автомобильные компании такого не допустят. Причем не потому что не хотят, а исключительно в целях создания безопасного и надежного автомобиля.

К тому же автомобильные компании не умеют разрабатывать digital-сервисы самостоятельно. Для них это всегда делали и продолжают делать подрядчики — опять же, в рамках закрытых монолитных решений.

И вот, допустим, какая-то компания хочет использовать автомобиль в своем бизнес-процессе и должна провести интеграцию с ним с точки зрения программного обеспечения. Если делать по законам разработки ПО для авто, в очень быстром режиме это может занять 1,5 года. В среднем — 2,5-3 года.Для них это нормально. А в digital-индустрии вообще непонятно, зачем начинать разработку, если речь о таких сроках.

Это и есть основной конфликт в диджитализации автомобильной индустрии. Разрабатывать софт по законам и со скоростью digital-индустрии автоотрасль не может. А диджитализация не должна влиять на безопасность — авто 100% должно функционировать без сбоев и проблем.

Так в EPAM родилась идея фундаментальной облачной платформы для connected vehicle — связующего звена между разработчиками digitlal-сервисов и производителями авто.

Не просто еще одна платформа

На первый поверхностный взгляд не очень понятно, в чем революция. Если открыть Google-поиск и набрать «connected vehicle platform», в результатах вывалится порядка 2500 разных продуктов от всех возможных производителей. Зачем нужна еще одна?

Загвоздка в том, что все нынешние варианты рассматривают автомобиль, как монолитное устройство, с которого можно получать данные. Как с датчика движения в умном доме (или пусть даже устройства посложнее).

Схема подобных платформ выглядит примерно так. Вся бизнес-логика для реализации конкретного приложения или сервиса делается на стороне облака. Она рассчитана на то, что данные через всяческие aftermarket devices или специальные Telecommunication Units принимаются из авто и складываются в облако. И только тогда конкретное бизнес-приложение или сервис используют эти данные для реализации бизнес-логики.

Выглядит просто, привычно и понятно, если бы не очевидный минус. Даже два.

  1. Зависимость от постоянного интернет-соединения. Плохая или отсутствующая связь между автомобилем и облаком — это реальность. Связь пропадает — сервис не может работать: данные не передаются, расположение автомобиля неизвестно и т.д. и т.п.
  2. Автомобиль не знает, какие данные могут понадобиться конкретному сервису. Поэтому он делает очень простую вещь — собирает все возможные данные и шлет это большим потоком в облако. Но канал связи между автомобилем и облаком достаточно лимитирован. Получается, что он используется неэффективно. А с учетом того, что эти каналы нигде и никогда не отличаются совершенством, сервис становится нереализуемым.

Поэтому, в отличие от других облачных платформ, в нашем варианте компьютер автомобиля может исполнять часть бизнес-логики. Прямо на нем может исполняться программный код, который я, как вендор сервиса, пишу для каждого конкретного сервиса. Но! Он должен исполняться так, чтобы стопроцентно не затронуть safety и security critical части софта, который обеспечивает безопасное и надежное функционирование автомобиля.

Общая логика платформы такова:

  1. Разработчикам платформа позволяет создавать сервисы без оглядки на то, что одним из элементов сервиса является автомобиль. Они пишут свой сервис теми языками, используя процессы, как уже это делают в мобильных приложениях, e-commerce или cloud services.
  2. Автопроизводители должны без опаски разрешать service vendors интегрировать автомобили в свою систему. Платформа же заботится о том, чтобы бизнес-сервисы никоим образом не спровоцировали сбой в safety и security critical частях ПО. Даже если кто-то разработал сервис с багами.

Так система позволяет совместить два подхода в разработке ПО: классический, сертифицированный waterfall в автомобилестроении и гибкие digital-сервисы с возможностью быстрого изменения бизнес-логики и обновления версий.

Очевидно, что подобная платформа не может существовать без аппаратной поддержки. Мы договорились о партнерстве с японской компанией Renesas Electronics — одним из лидеров по разработке и производству процессоров для автомобильных компьютерных систем. Мы совместно строим платформу, которая хорошо оптимизирована и интегрирована именно с их процессорами, особенно по части safety, security и performance. Но, если возникнет потребность интегрировать платформу с другими процессорами, это тоже возможно.

Если сравнивать наше решение с любой существующей connected platform, подобного сейчас не делает никто. Причина проста: для реализации такого продукта нужно интегрироваться с автопроизводителем на этапе проектирования автомобиля. Это долгий и ресурсоемкий процесс, поэтому разработчики connected vehicle platform ждут, пока автопроизводители дойдут до глубокой интеграции с software.

Мы решили не ждать, а помочь автопроизводителям ускорить этот процесс. И работаем на будущее — 4-5лет вперед.

Примеры сервисов

Разницу между «традиционными» платформами и продуктом EPAM легко объяснить на примерах.

1. No connection

Эта вещь, которая от разработчика не зависит и может случиться в любой момент. Используя существующие платформы остается только ждать, пока коннект восстановится.

В нашем варианте разработчик может подготовиться: написать специфическую логику для внутриавтомобильной части своего сервиса, которая как-то отреагирует, если связь пропала. Как минимум, будет буферизировать данные, считываемые с машины. А в момент, когда появится связь с интернетом, отослать их в облако.

2. Fleet control

К примеру, компания занимается грузоперевозками. У нее есть набор автомобилей, которые ездят по маршрутам и развозят товар. Компания хочет, чтобы машины оптимально поделили город на небольшие зоны и работали каждая в своей зоне.

Как работают классические платформы? Автомобиль, который катается по зоне А, каждую секунду или полсекунды посылает в сеть свои координаты. Оператор, который сидит «где-то там» за компьютером, следит, чтобы автомобили не выезжали из своих зон. Но вот перегруз сети, место плохого сигнала — и связь между авто и облаком исчезает. Оператору не на что опираться, ведь точка на карте замерла или вовсе пропала. А с ней — и контроль за соблюдением границ рабочей зоны.

В нашем случае разработчик проектирует свой сервис таким образом, что часть логики будет исполняться непосредственно в автомобиле. Например, мы хотим сказать автомобилю № 1 ездить только в зоне А. Из облака на нашу же логику внутри авто мы посылаем команду об этом.

Если связь между автомобилем и облаком пропала, бортовой компьютер сам знает, где должен находиться автомобиль, и контролирует это. В зависимости от того, как будет спроектирован наш сервис, при приближении к границе допустимого района компьютер может вывести водителю предупредительное сообщение на один из экранов. Или начать более активные действия: поморгать фарами, посигналить, уменьшить скорость, припарковаться, включить аварийку. Хотя, конечно, лучше обойтись просто предупреждением.

Все это может работать безо всякой связи с интернетом. Эту логику мы спроектировали, когда думали, как имплементируем свой сервис.

Более того, даже если связь не пропадает, модуль, работающий в автомобиле, может оптимизировать использование коммуникационного канала. Вместо того, чтобы слать GPS-координаты в облако каждую секунду, он может делать это в 5-10раз реже — чисто для мониторинга. И продолжать контролировать зону нахождения авто изнутри самого авто.

3. Predictive maintenance

Это уже распространенная история с той лишь разницей, что во многом ее работа снова-таки завязана на связь с интернетом. Автопроизводитель мониторит состояние автомобиля. Если в том что-то начинает портиться, водитель получает рекомендацию поехать в гараж и предотвратить поломку, а не стать внезапно посреди дороги с неисправной махиной. Это обоюдно выгодно и производителю, и пользователю.

4. Quality of Service

Как по мне, это самый приземленный и понятный пример.

Представьте, что вы находитесь в Киеве и собираетесь ехать в аэропорт. Вызываете Uber. По правилам сервиса водитель узнает, куда вас вести, только по прибытию к вам. Он приезжает, вы садитесь, называете пункт назначения. И оказывается, что бензина в автомобиле хватит только на полдороги. А вам нужно ехать и побыстрее.

С нашей платформой Uber мог бы установить в автомобиль свой сервис, который еще на этапе заказа мог бы сказать Uber-бэкенду о состоянии автомобиля: сколько бензина в баке, какой расход, подкачены ли колеса. И ситуация с нерелевантной машиной не произошла бы.

Кто участвует в разработке?

Есть три типа software-инженеров, которых мы задействуем в разработке платформы.

Первый — low level embedded developer — эти ребята знают, как правильно работать с железом, виртуализацией, как работает Linux на уровнях kernel-драйверов и т.п.

Второй — классический embedded developer — ребята понимают, как софт разрабатывается и живет во встроенных системах, где есть ограничение по памяти, дисковому пространству, ЦПУ. Что нельзя писать программы и аллоцировать 20 Мб памяти на стэке просто потому, что мне так удобно.

Третий — high level developer — специалисты по разработке распределенных cloud-сервисов. Понимают, что это такое, как делать сервисы, как происходит CI/CD, как строятся сервисы, способные обслуживать большое количество пользователей и оперировать большим количеством данных, как использовать современные облачные технологии и инструменты.

Что до самой структуры, то в автомобильной ее части мы используем подход виртуализации и контейнеризации — для того, чтобы изолировать mission critical ПО от ПО, которое может прийти из облака.

На автомобильном компьютере устанавливается система виртуализации, где есть отдельная виртуальная машина, которая контролируется облаком. В нее могут деплоиться контейнеры.

Контейнеры — не просто обыкновенные, как Docker, а легковесные, которые мы разработали специально для этой платформы. Чтобы более-менее спокойно деплоить что-то из облака в авто, это что-то должно быть небольшим — в пределах нескольких Мб. Во-первых, для автомобиля, у которого на onboard-компьютере всего 2 Гб памяти, привычные cloud-разработчикам контейнеры по 1 Гб — это очень много. Во-вторых, опять-таки нестабильные коммуникационные каналы. И чем меньше будет контейнер, тем больше шансов, что он действительно задеплоится, а не прервется где-то посередине.

Следующий этап — контейнеризация. И верхний уровень — система управления деплойментом между cloud и автомобилем.

Фишка нашей системы в том, что люди, которые разрабатывают сервисы для connected vehicle на базе платформы, ничего специфического про автомобиль знать не должны. Они могут продолжать пользоваться Javascript, .NET, Python или любым другим языком, в котором делают cloud-сервисы. А платформа обеспечит магию: возьмет часть микросервисов, которые должны быть в автомобиле, установит их туда и будет заботиться, чтобы они работали, не вредили друг другу и никак не помешали критическим функциям.

Вызовы, или Что занимает наши головы

Конечно, разработка такой платформы — не прогулка выходного дня. Самая большая сложность — концептуальная. Приходится пробиваться сквозь стереотипы автопроизводителей и объяснять, что правильно разработанное ПО будет помогать, а не вредить. Пока что в их головах cloud, software, Agile = зло.

Если говорить о сложных технических вопросах, решаем следующие:

1. Виртуализация.Все о ней говорят, все понимают, что такое виртуальная машина и зачем она нужна. Но как это использовать в автомобильном компьютере?

Например, есть автомобильный компьютер, на котором установлено несколько виртуальных машин. Машины выполняют разные функции. Как в таком случае управлять power & clock management? Если говорить о классической виртуализации в дата-центрах, у них этот вопрос не стоит: на то и дата-центр. В автомобиле же power & clock management — одна большая задача.

Виртуализация — достаточно тонкая материя, в которой разбирается небольшое количество компаний. Часто на технических переговорах с потенциальными клиентами много времени уходит именно на поиск консенсуса правильной архитектуры с точки зрения виртуализации.

2. Использование GPU.Механические спидометры почти ушли в небытие, а бортовой компьютер выводит все показания на мониторы. Но чтобы это работало и рисовало красивые приборы, нужен GPU. Как поделить его ресурс, когда есть несколько виртуальных машин, которые им пользуются? Что сделать, чтобы внезапная фатальная ошибка GPU от одной из систем, не положило его для других частей?

3. Надежность.Об этом я неоднократно говорил выше, и это приоритетный вопрос. Как правильно построить архитектуру, чтобы cloud software никоим-никоим образом не смогло привести к ошибке в safety software?

Эти и другие архитектурные вопросы обсуждаются в каждом конкретном случае. И это постоянный диалог между нами и потенциальным клиентом.

Мы получаем очень положительные отзывы от автопроизводителей. Хотя все движется медленнее, чем нам бы хотелось, но мы помним, что у автомобилестроения свой таймлайн.

Чтобы концепция прижилась и стала успешной, она обязана быть легкой в использовании и разработке бизнес-приложений и сервисов. В нашем подходе не нужно каждый раз искать разработчиков по embedded и учиться заново — все один раз сделано автопроизводителем. А компании могут сосредоточиться на business value, которых хотят достичь.

Сроки и люди

Над платформой в EPAM работают несколько десятков человек. Мы стартовали в конце 2016 года. В середине 2017-гоначали показывать ее потенциальным клиентам. А в этом январе на CES-2018 вместе с Renesas Electronics презентовали платформу широкой общественности.

За все это время у нас не было кардинальных смен маршрута. Понятно, что обычно происходят какие-то поправки и корректировки. Мы говорим с потенциальными клиентами, и у каждого есть свои соображения, ограничения, предпочтения. Мы коллекционируем всю информацию, обрабатываем и решаем, как и что нужно поменять, добавить, убрать.

К примеру, у автомобилистов огромные требования к секьюрити. Поэтому мы постоянно мониторим и апдейтим тему безопасности. Ведь если мы разрешаем облачному сервису установить микросервис прямо в автомобиль, то теоретически можно предположить, что придет злой дядя-хакер и подменит сервис того же Uber на свой зловредный. И нужно понимать, как это не допустить. Или минимизировать последствия.

Команда разработки воспользовалась концепцией американского Агентства национальной безопасности, которая называется Defense in Depth. В нашей платформе мы имплементируем этот подход: многоуровневая система безопасности, при этом каждый уровень независим друг от друга. И если даже злоумышленнику удается взломать один из уровней, он застревает на этом уровне и не может пройти дальше.

Дополнительную секьюрность дают процессоры Renesas — они дают для этого большой спектр hardware-опций. В итоге, количество ресурсов, которое необходимо потратить на взлом, по отношению к бизнес-бенефиту становится непропорционально большим. И эта система постоянно совершенствуется.

На данный момент у нас несколько автопроизводителей на разной стадии пилотных программ. В будущем они приведут нас к продакшн-программам. Нужно понимать таймлайн автоиндустрии — в лучшем случае, даже если все будут очень спешить, рынок и будущие создатели сервисов увидят эту систему лет через пять.

Важный момент напоследок.

Платформу мы делаем на базе open source. И сама система в конечном итоге тоже будет open source. Разрабатывая этот продукт, мы ожидаем, что компании будут приходить к нам за поддержкой и модификацией. Однако если они почувствуют необходимость выстраивать все самостоятельно, у них будут для этого все возможности.

Как я готовился и сдал PMP Exam с результатом “Above Target” по PMBoK‎ 6th Edition

$
0
0

В июне этого года я сдал PMP сертификацию с результатом Above Target, чему я очень рад. И в этой статье хочу поделиться своим планом подготовки, советами, полезными ссылками и кое-какими нюансами, которые отметил непосредственно до и во время экзамена.

Началось все с решения получить таки РМР ачивку, как только мой РМ-ский опыт перешагнул отметку в три года. Как вы, наверное, знаете, требования Project Management Institute (PMI)для кандидатов: 3 года чисто РМ-опыта при наличии профильного образования либо 5 лет опыта при отсутствии такового.

У меня образование профильное, поэтому я мог быть допущен к экзамену после 3 лет отработанных Project Manager-ом.

PMI делает ставку именно на практикующих РМ-ов и сдать экзамен без реального опыта почти невозможно. Сам экзамен полон сложных ситуационных вопросов, в которых требуется понимание процессов, многих техник и инструментов. Необходимо на ходу анализировать ситуацию, поданную в вопросе, дабы найти единственный правильный ответ. Не раз попадались вопросы, в которых все 4 ответа кажутся логичными и правильными, но необходимо определить именно «самый правильный ответ», который возможно применить в первую очередь с наименьшим негативным воздействием на проект либо с наибольшим положительным влиянием.

Что касается стоимости экзамена, то есть два варианта. Первый — $555, если у вас нет платной годовой подписки PMI, и второй — подписка $139 в год плюс $405 экзамен. Экономия несущественная, однако подписка дает право доступа на скачивание последней версии PMBoK‎, что в свою очередь «маст хэв» для подготовки. Итого получается $544 стоимость экзамена. Мне 50% компенсировала компания AltexSoft, в которой я на данный момент работаю. Так что в моем случае экзамен обошелся в $272 личных средств.

Попытка номер раз

Первую попытку подготовиться я начал в конце ноября 2017 года. В первую очередь я решил ознакомиться с восьмым изданием «Риты» (PMP Exam Preparation 8th edition PMBok 5 by Rita Mulcahy), так как именно эта книга была в наличии в библиотеке компании.

Я прочитал всю книгу с начала до конца, не выполняя упражнения, просто чтобы разобраться, что к чему. На первый взгляд, книга кажется довольно большой, около 800 страниц, и так на самом деле и есть, но когда ты ежедневно уделяешь ей пару часов, дней 10-15 достаточно,чтобы ее осилить.

Примерно на середине прочтения книги я увидел официальную информацию на pmi.orgо том, что 5-еиздание PMBoK является актуальным до 27 марта 2018 года, а с 28-говступает в силу 6-еиздание, и все экзамены после 28 марта будут базироваться на шестом издании.

И я решил вложиться в отведенное время (около 4-хмесяцев) и сдать по пятому изданию, потому что на просторах интернета было много вспомогательной информации именно по этому изданию и совсем мало информации по новому изданию.

В связи с этим я начал готовиться еще усерднее — все-таки дедлайн делает свою работу. Прочитав «Риту» один раз, я купил подписку PMI, которая дает право подать заявку на экзамен и скачать PDF версию PMBoK‎.

И к концу года начался мой второй заход к прочтению «Риты» с выполнением всех упражнений в параллель с прочтением соответствующей главы в PMBoK‎. Читаешь главу PMBoK‎, затем читаешь туже главу «Риты» и выполняешь упражнения.

К сожалению, этот заход не увенчался успехом — из-за высокой загруженности на работе у меня совсем не оставалось времени на подготовку.

Стоит отметить, что в большинстве случаев, как и в моем, подготовка осуществляется в свободное от работы время, так что я просто физически не смог уделять этому время.

Моя попытка номер два

Вторая попытка подготовки началась с марта. Я понял, что до 27 марта я никак не успею подготовиться, чтобы сдать по 5-муизданию. Поэтому меня ждало новое, свежайшее 6-еиздание PMBoK‎. Годовая подписка PMI давала возможность скачать оба издания на разных языках. Рекомендую следовать английскому «трушному» варианту от начала до конца (в разделе экзамен я объясню, почему).

PMP Exam prep от Rita Mulcahy тоже обновилась и выпустила 9-еиздание, которое базируется на 6-миздании PMBoK‎. Благо компания, в которой я работаю, пошла мне навстречу и заказала книгу из Америки в нашу корпоративную библиотеку, полностью погасив все затраты на саму покупку и доставку.

В этот раз я подошел к вопросу более сознательно, как настоящий менеджер проекта :) Почитав несколько статей о подготовке к экзамену, я отнесся к подготовке как к проекту, с которыми имею дело каждый день.

Я выделил на все про все три месяца — март, апрель, май. Поставил себе дедлайн — 31 мая. И сделал себе Gantt Chart на все три месяца с еженедельными вехами.

График и приложение, которое я использовал

Решил, что готовиться буду 6 дней в неделю по 2-4часа в будний день и один из выходных часов по 8, оставляя себе день на отдых от работы и учебы.

Схема была следующая:

  1. Прочитать PMBoK‎ 6th edition — на это я выделил три недели пока ехала новая «Рита» из Штатов.
  2. Прочитать «Риту» в параллель с PMBoK‎— очень важно выполнить качественно все упражнения из «Риты» и пройти тесты в конце каждой главы. Они действительно помогают. На это я выделил апрель с учетом того, что у меня был недельный отпуск в конце апреля. То есть до отпуска я планировал с этой вехой справиться. Я так и сделал, когда дочитывал последнюю главу в 2 часа ночи за день до вылета.
  3. На отпуск моей задачей было пройти найденные мной тесты. Во время отпуска, пока мы летели в самолете, ехали в поезде или ждали обед, я решал тестовые задания.
  4. В первую неделю после отпуска по плану было перечитать раздел tips for passing the exam от «Риты», выучить все формулы (обязательно!) и пройти первый полный экзамен (200 вопросов). Ниже напишу, как я проходил тестовые экзамены и какие заметки делал, чтобы выделить максимум пользы из потраченного времени.
  5. Следующая неделя была на перечитывание и анализ всех заметок с начала подготовки и выучить входы-выходы всех процессов (Inputs Tools&Techniques Outputs — ITTO). Попытка выучить входы-выходы была моей ошибкой, но я потратил почти всю неделю на это, прежде чем понял, что надо менять подход. Ниже в советах/полезных ссылках я напишу, как я смог разобраться и победить таки входы-выходы.
  6. Третья неделя мая была потрачена на очередное перечитывание «Риты» и PMBoK‎ и на выявление и заполнение, так называемых, gaps in knowledge.
  7. На четвертой неделе я проходил все тесты, которые нашел, плюс те, которые уже проходил во время отпуска либо в начале мая, чтобы проследить динамику.
  8. В конце мая взялся за еще один полноразмерный тест.

Важно отметить, что я не следовал этому графику один в один, я старался выполнить недельный план. То есть за неделю сделать все, что в плане. Иногда мне приходилось уделять весь выходной день, чтобы таки закончить, а иногда пару часов субботы вместо восьми.

Подача заявки

Имея действующую подписку PMI, я мог подавать заявку на свое желание сдать экзамен, если соответствую требованиям по опыту, о чем я писал выше. Необходимо также посетить 35 часов курсов по подготовке.

В моем случае у меня за плечами были 105 часовые курсы по People Management от HRM, организованные компанией, которые были одобрены для подачи заявки.

Процесс подачи несложный, но достаточно длительный, так как надо заполнить достаточно большой объем данных. Например, вам надо расписать 4 500 отработанных часов (3 года фултайм) с делением на проекты, их длительностью, фазами и т. д. Приходится поднимать/вспоминать старую информацию. Также они требуют реальные контакты людей, которые могут подтвердить, что у вас был опыт на тех проектах, о которых вы пишите, что вы действительно посещали те курсы, на которые ссылаетесь. Согласование всех этих моментов тоже занимает время. PMI это понимает, и для этого есть возможность сохранить драфт заявки и вернуться к ней позже. У меня ушло около недели на заполнение информации время от времени — за обедом, в трамвае и т. д.

Насколько я знаю, 10% всех заявок отсылаются рандомно на аудит. И все мои знакомые предупреждали меня, чтобы я готовился к аудиту. Моя заявка была одобрена без аудита, в чем я был уверен, так что я не знаю ничего, кроме общей информации, что надо собрать кучу подтверждающих документов о том, что вы описали в заявке и отправить их традиционной почтой в Штаты.

Советы

Как я проходил тестовые экзамены

Зачастую, все проходят тесты, отвечая на них, а затем делают ревью ответов, которые были отмечены неверно. Я считаю, что есть более качественный способ — это когда вы просматриваете не только ошибки, но и вопросы, на которые ответили верно. Да, на это тратится больше времени, чем на ревью исключительно ошибок, но таким способом, читая пояснение к правильному ответу, я много раз ловил себя на мысли, что ответил правильно не потому что знал верный ответ, а потому что подфартило либо просто методом исключения. Это, конечно, хорошо, когда сдаешь экзамен, но гораздо лучше знать, какой ответ правильный.

Итак, на каждый тест я брал чистый лист, простой карандаш и делал пометки с номером вопроса, если я не на 100% уверен в ответе. На тесте в 200 вопросов у меня иногда получалось больше 100 вопросов с пометками. После получения результатов, я ревьюил ошибки и пояснения к ответам, плюс те вопросы, которые отметил на листе, даже если ответ был верный, чтобы удостовериться, что я правильно интерпретировал вопрос и ответ.

Таким образом, я тратил больше времени на каждый тест и его ревью, но, считаю, что такой подход дает лучший выхлоп. Попробуйте.

Заметки

На протяжении всей подготовки я делал себе электронные заметки. Например, что-то повторить — какое-то утверждение, которое мне показалось важным, либо что-то, о чем я уже читал, но забыл при прохождении тестов и т. д. За пару месяцев собралась такая приличная простыня текста, которую я с радостью запроцессил в середине мая.

Входы-выходы (Inputs Tools&Techniques Outputs — ITTO)

Я не смог выучить входы-выходы, потому что их очень много. И тогда в поисках «серебряной пули» я начал гуглить и читать на форумах. Все советы сводились к тому, что учить ITTO не стоит, главное понять, что и как работает, и тогда эти ITTO будут в голове. Скажу сразу, по факту я не выучил их от и до назубок, но я реально нашел для себя видео, с помощью которого я смог разобраться в самом подходе, и тогда вопросы по ITTO решались очень легко, потому что большинство экзаменационных вопросов направлены на понимание.

NEW! Elaboration of the Processes Flow of the PMBoK‎® Guide 6th Edition — это видео помогло мне понять и впоследствии восстановить всю диаграмму процессов на листике за 5-7минут после 10 тренировочных попыток. Именно понимание процессов подсказывало мне большинство входов-выходов.

Я нашел это видео будучи уже в финальной стадии подготовки, за пару недель до дедлайна, поэтому смею предположить, что на старте подготовки оно не даст такого эффекта, разве что ознакомиться с ним и потом вернуться в конце.

Каша в голове

К концу подготовки у меня было тревожное чувство «каши в голове». Особенно, когда я отвечал неверно на простые ситуационные вопросы. Мне казалось, что я много знаю, но не понимаю, как это использовать на экзамене и впоследствии, как применить новое на практике.

Я нашел на просторах интернета интересный курс, который дал мне осознание, что в общем-то я разобрался довольно неплохо.

Курс называется CBT nuggets PMI PMP for the PMBoK‎® Guide 5th Edition. Его можно найти в интернете по запросу.

Мне этот курс понравился по трем причинам:

  1. Очень хорошо изложен материал. Мне кажется, что преподаватель курса все-таки РМ-ил и до сих пор это делает. Потому что практические примеры, изложенные в курсе, попадали именно в точку. Для сравнения youtube канал iZenBridge, который считается одним из самых популярных бесплатных ресурсов по подготовке, мне не зашел именно по причине того, что преподаватель очень хорошо знает материал PMBoK‎, но РМ-ством, скорее всего, не занимался никогда, ИМХО.
  2. Он не слишком длинный. Около 8 часов видео, и его можно смотреть где угодно. Главное не «втычить мимо» как на парах в универе, а слушать, воспринимать и рефлексировать :)
  3. По этому курсу я уловил разницу между 5-ми 6-мизданием книги. Например, когда в курсе шла речь о тайм-менеджменте, я понимал, что в шестом издании нет такого раздела, так как РМ управляет не временем, а расписанием (Schedule). Это одно из изменений 6-гоиздания. И на этом я отслеживал свое понимание изменений, какие там артефакты, как они обновились в новом издании, каких не хватает, какие процессы добавили, какие убрали и т. д.

Результаты тестовых экзаменов

На просторах интернета можно найти информацию, что готовность к экзамену проверяется средним показателем по тестам, который должен быть 80% правильных ответов и выше. В моем случае получалось где-то 70%-75%, и я никак не мог добиться лучших результатов. Меня это немного волновало и, казалось, что я не готов. Думаю, что 80% — это прям очень высокий показатель особенно в тестах типа PMP® Exam Self-Assessment Test, который базируется не только на PMBoK‎. И действительно, если у вас в среднем от 80%, то вы готовы.

Единственное, что хочу сказать, мой опыт показывает, что у вас очень хорошие шансы сдать экзамен и при 70%-75% в среднем. Я, кстати, так и пошел на экзамен с результатом по тесту 77% в одном из последних тестов на 200 вопросов, не добившись 80% и выше. Результат — Above Target :)

Полезные ссылки и приложения

Сайт

Ресурс, который я нашел совершенно случайно, — Edward Designer. Просто офигенский сайт с советами, пояснениями, ссылками и чем угодно. Это кладезь полезной инфы. На финальном этапе моей подготовки я только им и пользовался, там есть ответы на большинство вопросов. Например, разница между Project Life Cycle vs. Product Life Cycle на пальцах. Либо разница между Contingency Reserve и Management Reserve очень просто на примере. Там столько полезной информации, что единственное, чего я хотел бы, так это найти этот сайт не в середине мая, а на пару месяцев раньше.

iOS приложения

Перепробовав большинство доступных в Apple store приложений, нашел два самых интересных:

  • PMP Pocket Prep by Pocket Prep, Inc.— одним из первых обновилось до 6-йверсии PMBok. Хорошая база, множество настроек, гибкое. Из минусов — весьма обрезано в бесплатной версии. Полная версия стоит 30 баксов, что не так уж и дорого.
  • PMP Exam Mentor — здоровенная база по 6-йверсии книги, бесплатно, без регистрации и смс. В конце подготовки я пользовался этим приложением 100-500раз ежедневно. Много тестовых вопросов и возможность прокачать именно область знаний, например, выбрать Risk Management и все вопросы будут по этой теме. Из минусов хочу отметить, что очень много простых вопросов и маловато ситуационных, которых подавляющее большинство на самом экзамене.

Пазл процессов

  • Пазл процессов PMP на INPMI — упрощенный вариант пазла процессов. Игрался с ним на начальном этапе подготовки, затем легко собирается за 5 мин.
  • Rita process game — посложнее, но даже лучше. Вот тут мне приходилось попотеть и в результате добился 95%-98% верно расставленных процессов. Обновлено до 6-гоиздания PMBoK‎.

Экзамен

В интернете и в «Рите» можно найти массу информации о самом экзамене, много советов из рода не волнуйтесь, выспитесь и т. д. Постараюсь выделить несколько самых топовых моментов, на которые стоит обратить внимание:

  • Необходимо выучить все формулы наизусть и уметь легко, в любое время дня и ночи выписать их на листке за несколько минут.
  • Лично я рисовал всю таблицу процессов, так как во время подготовки заметил, что когда у меня есть таблица под рукой, я могу быстро ответить на вопросы по ITTO, глядя на нее. И находить нужный мне процесс гораздо быстрее на листике, чем вспоминать в голове, к какой группе он относится. На просторах интернета нашел схему (см. ниже) с ключевыми выходами, которую я использовал как источник для воссоздания.

Детальнее



  • Для экзамена я выбирал основной язык английский, а русский как вспомогательный. Это можно сделать при подаче заявки. Русский перевод там ужасный, без падежей и иногда даже неверный. Скорее всего, машинный перевод Гугл переводчиком из 2000-х.Именно поэтому в начале статьи я рекомендовал следовать «трушному» (оригинальному) варианту и готовиться по английскому PMBoK‎ и «Рите». К тому же большинство информации в интернете доступно на англоязычных ресурсах.
  • Почти в каждой статье про сам экзамен я видел заметку, что пока вы знакомитесь с программой непосредственно перед стартом 4-часовогоэкзамена, следует выписать формулы и сделать себе заметки, так как на это выделяется 15 мин, а вам хватит 2-3,чтобы понять устройство программы. Так вот, когда я к этому приступил перед стартом экзамена, меня остановили и сказали, что по правилам PMI, на момент фактического старта теста, все листы для заметок, которые выдаются вместе с ручкой, должны быть чистыми и не содержать ничего. Так что мне пришлось тратить 10 минут на написание заметок, когда экзамен уже начался. Надеюсь, кому-нибудь эта инфа пригодится, потому что я был слегка обескуражен, хоть и смог быстро собраться.

Заключение

Хочется добавить, что РМР сертификат не сама цель. Да, я очень хотел его получить и сделал это, так что теперь я Project Management Professional. Но для меня оказался более ценен тот объем новой информации и знаний, который я получил в процессе подготовки за чтением множества статей и просмотром видеокурсов. Именно то, что осталось с вами после экзамена, когда груз с плеч спал, и является знаниями.

  • Разберитесь, зачем оно вам надо и поставьте цель — Initiating;
  • Выработайте свою стратегию подготовки, взвесив все нюансы, — Planning;
  • Следуйте вашему плану — Executing;
  • Анализируйте отклонения и подстраивайте план под это — monitoring and controlling;
  • И сдайте этот экзамен — Closing.

P.S. Хочу выразить благодарность Ольге Кобзарь, Delivery Director AltexSoft за поддержку и помощь. И Лизе Сидоренко, РМР, CSM за дельные советы. Спасибо :)

Как я работаю: Владимир Кубицкий, Head of AI в ЛУН

$
0
0

[В рубрике «Как я работаю»мы приглашаем гостя рассказать о своей работе, организации воркспейса, полезных инструментах и лайфхаках]

Владимир Кубицкийвозглавляет команду искусственного интеллекта в ЛУН, украинской продуктовой компании, которая разрабатывает интернет-проекты в тематике недвижимости. На сегодня проекты компании работают в 37 странах.

В ЛУН он пришел еще на третьем курсе университета и за 4 года прошел путь от позиции продуктового аналитика до создания собственного подразделения по разработке алгоритмов.

О себе

Я вырос в семье физиков. Дедушка был одним из первопроходцев в изучении природы ударов абсолютно твердых тел, написал ряд публикаций и книг о педагогическом аспекте физики, участвовал в разработке первых голограмм. Брат — PhD физики и математики, имеет десятки научных публикаций в передовых изданиях, на данный момент живет во Франции и работает в CNRS над применением новейших ML подходов в ускорителях элементарных частиц. Я всегда равнялся на них и с детства интересовался наукой и технологиями.

Еще в начале 2000-х,когда у нас в провинции (я родом из Глухова, Сумская область) о существовании ПК мечтать никто не мог, у деда была возможность взять его на некоторое время домой, пока брат был на каникулах. Так с ранних лет я начал осваивать бейсик. Вскоре написал свой первый калькулятор с визуальным интерфейсом. В школьное время регулярно ходил на олимпиады по математике, физике, занимал призовые места.

После школы поступил на мехмат в КНУ им. Шевченко, на кафедру математической физики. Выбрал это направление по двум причинам: полностью физика «не отпускала», и именно на этой кафедре работал мой будущий научрук, с которым я хотел написать диплом.

На бакалавриате работал над распознаванием лиц методом Виолы—Джонса на каскадах Хаара. Магистерскую диссертацию писал уже по сверточным нейронным сетям, которые на момент моей защиты более двух лет успешно работали у нас в ЛУН. Так что защититься было не сложно :)

Я получил два приглашения в аспирантуру — в КНУ на кафедру и в Институт математики НАН Украины, но оба предложения пока на паузе. Решил направить все силы на работу.

От анализа к решениям

В ЛУН я пришел более 4 лет назад на позицию продуктового аналитика. Фактически это была моя первая работа — не считая небольшой подработки в «Яндекс» еще в 2013 году.

Первое время я занимался аналитикой продукта, изучал паттерны поведения, использования разных фич, находил проблемные места. И примерно через 4-5месяцев от понимания проблем захотел перейти к попыткам их решения. Так и начался мой путь в алгоритмику. ЛУН организован как стартап, и зона ответветственности сотрудника определяется только тем, с чем он хочет и может справиться. Потому никаких формальностей в переключении на другие задачи не было, и я просто принялся их решать.

Одним из первых моих проектов в этой области была разработка системы, которая анализирует текст и автоматически определяет, кем написано объявление квартиры — собственником или посредником. Большинство людей хотят иметь дело непосредственно с собственником, чтобы не платить комиссию. Также посредники часто размещают фейковые объявления, чтобы им позвонили. А мы, агрегируя все объявления, накапливали на себе весь пользовательский негатив, вызванный контактом с такими предложениями. Появлялись плохие отзывы, проседали продуктовые метрики.

Первая версия алгоритма основывалась полностью на эмпирических наблюдениях, обернутых в группу SQL запросов. Мы предположили, что если за владельцем одного номера телефона закрепляется более трех объявлений разных квартир, то, скорее всего, это посредник. Точность такого алгоритма составляла около 70%. Это был baseline, от которого можно двигаться дальше.

Затем я вычитывал статьи, изучал новые подходы и технологии, постепенно улучшал качество. Сейчас этот алгоритм принимает более сотни параметров на вход, имеет точность классификации ~96%, использует градиентный бустинг над деревьями принятия решений.

Продуктовые метрики выросли, количество жалоб на неправильное определение владельца упало на порядок. Так мы и начали применять ML в нашем продукте. Затем внедрили системы обработки и анализа текстов рекуррентными нейронными сетями, сделали классификаторы изображений на сверточных нейронных сетях и еще много всего.





Задачи Head of AI

В ЛУН я отвечаю за решение всех проблем, которые можно решить с помощью машинного обучения. И, соответственно, за создание, внедрение и поддержку всех алгоритмов — сейчас их около двух десятков.

Каждый алгоритм разрабатывается под конкретную бизнес-задачу. Например, мы заметили, что в некоторых объявлениях некорректно указана цена. Человек пишет, что квартира стоит $40, — подразумевает $40 тыс. Фильтры просто скроют такое объявление. Чтобы это исправить, мы создали алгоритм, который находит и исправляет некорректное значение. Он реализован на основе другого алгоритма — регрессора цены, который по площади, месторасположению, фотографиям и другим факторам рассчитывает примерную стоимость квартиры.

Особое внимание уделяем системе дедупликации объявлений — чтобы поисковая выдача не показывала объявления одной и той же квартиры, агрегированные с разных сайтов. Два опорных столба этой системы: классификатор картинок и их группировщик.

Мы ежедневно обрабатываем около 30 млн изображений и относим каждое фото к одной из 37 категорий. Это позволяет автоматически понять, что изображено на картинке: кухня, ванная, фасад дома, паркинг и т. д. Затем можно провести сравнение по фотографиям интерьеров.

Но недостаточно работать только с изображениями. Бывает, что недобросовестные риелторы используют фотографии чужих более привлекательных квартир — чтобы привлечь внимание. В таком случае картинки одинаковые, а квартиры на самом деле — разные. Чтобы это определить, мы сравниваем текстовые описания.

Для понимания степени схожести текстов между собой внедрили подсистему глубокого анализа. За основу взяли работукоманды ребят из Google. Используя большой корпус текстов из объявлений, мы представляем слово в виде вектора в N-мерном пространстве. Чтобы оценить текстовою близость, попробовали усреднить векторы всех слов, которые встретились в тексте. Предварительно провели их нормировку так, чтобы норма каждого была равна 1. Чем ближе по косинусному сходству векторы слов будут находиться друг к другу, тем больше вероятность, что эти слова об одном и том же, их контекст одинаков.

Благодаря переходу от текста к векторам, мы смогли использовать более производительные подходы и можем сравнить более 50 000 текстов в секунду.

В конце 2015 года мы запустили ЛУН под брендом Flatfy — сперва в Польше и Венгрии, а сейчас в 37 странах мира. Это бросило новые вызовы, связанные как с локализацией, так и с кратным ростом объема данных.

Из забавного: в Индии встречается, что в объявлении не указывают адрес дома, а пишут, что он находится возле такого-то ларька, который все местные знают. Как из этого вытянуть локацию — координаты широты и долготы? :) В ближайшее время будем заниматься этим вопросом.

Еще один вид деятельности, который я тоже отношу к работе, — это выступления на различных конференциях, внутренних встречах. Раньше я считал для себя непозволительным тратить время на подготовку к докладам, когда есть текущие задачи и понимание, как их решить.

Но со временем пришел к осознанию, что для глобальных проектов нужна сильная команда. Сейчас у нас в подразделении работают четыре человека, но в течение года планируем расширить команду до десяти. Выступления на конференциях — хороший способ познакомиться с интересными людьми.





Типичный рабочий день

10:00-11:00.Встаю, проверяю почту и мессенджеры, собираюсь на работу. Живу очень близко — всего 6 минут пешком. Пока иду, размышляю о текущих задачах и ближайших встречах.

11:00.Прихожу на работу. Заливаюсь кофе. Рабочий день мало формализован — ежедневных митингов или созвонов, назначенных на конкретное время, у меня нет. Несколько раз в неделю бывают собеседования с новыми кандидатами и другие встречи. Все остальное время я погружаюсь в решение проблем, над которыми работаю лично я или ребята из команды.

Конкретные действия зависят от этапа работы над проблемой. К примеру, первым делом всегда пытаюсь понять ее истинную природу — а вдруг проблемы и нет :) Затем формирую ряд гипотетических подходов к решению. Получаю безумное удовольствие от больших вызовов и люблю делать первый шаг в решении самостоятельно.

Дальше делаю прототип, который реализует основную идею. Если концепция подошла, принимаюсь за ее улучшение и довожу уровень качества до требований продакшна. Если не подошла, беру следующую из ранее составленного списка подходов. Порой ни одна из них не срабатывает — тогда рождается что-то совершенно новое.

Раньше соотношение непосредственной работы и встреч было примерно 90% к 10%. Сейчас мы активно расширяем команду, поэтому на данный момент больше похоже на 60 к 40.

21:00.Стараюсь уходить с работы не позже 21:00, получается не всегда. Но я никогда не воспринимал свою работу как работу :) Потому, часто приходя домой, еще дописываю что-то, чтобы поскорее увидеть, сработала ли идея. И даже если бы мне в принципе не нужно было работать, чтобы обеспечивать жизнь, я бы все равно продолжил заниматься ровно тем тем, чем занимаюсь сейчас.

В первые несколько лет в ЛУН у меня был период, когда я работал по 12-14часов в день. Хотелось еще, но на ночь офис закрывался и нужно было идти домой. С помощью такого интенсива мне удалось достичь определенных результатов за более короткий промежуток времени. Но из-за такого графика страдал сон и затем начались проблемы с краткосрочной памятью. Я понял, что это недопустимо, поэтому сейчас стараюсь не работать больше 10 часов в день.

Инструменты и продуктивность

Мне нравится решать не какие-то конкретные задачи, а комплексные проблемы. Разницу между этими понятиями хорошо объясняет история из SpaceX. Инженерам надо было снять информацию с множества датчиков на ракете, и из-за больших объемов данных у них не получалось это сделать в режиме реального времени. Когда к вопросу подключился лично Маск, он понял, что часть информации списывать не обязательно, так как ее можно рассчитать на основе других показателей. Это пример решения именно проблемы, а не задачи.

Задача была такой: успеть снять информацию с датчиков. А проблема — получить необходимые данные для принятия решения. И после того, как понимание задачи расширили до понимания проблемы, родилось эффективное решение.

В компании все стараются работать по принципу baby steps: сначала попробовать простое или известное решение, и только затем переходить к сложному. Простые и элегантные решения сложных проблем я считаю высшим пилотажем.





В любом случае, зафиксировать результаты простого решения очень полезно — чтобы потом сравнить их с результатами сложного и оценить, насколько оправдались усилия.

Например, первая версия классификатора, который определял, изображен ли на фотографии фасад здания, была сделана очень просто. Мы разбивали изображение на 9 частей и пытались найти небо вверху на фотке, сравнивая относительное количество синего цвета в верхнем секторе ко всему изображению. Получив baseline в ~70% по f1-score, мы уже могли двигаться дальше и сравнивать результаты более сложных решений с первым простым. Сейчас наш классификаториспользует дообученую сверточную нейронную сеть. В прошлой версии он понимал 28 классов и обладал точностью 98.6%. Уже собрали новый датасет на 37 классов и 100 тыс. изображений, тестируем новую версию.

Для работы с почтой использую принцип Zero Inbox: стараюсь сразу реагировать на все вопросы, которые требуют какого-то решения от меня, и не удаляю цепочки писем, пока задача не будет закрыта.

Любимый инструмент для заметок, мыслей, расчетов и всего-всего — бумага и ручка. Записи всегда лежат передо мной: чтобы их посмотреть, не нужно открывать какой-то софт. Встречи веду в Google-календаре. Рабочие переписки — в Slack. Еще есть Telegram — «молодежь» не хочет общаться по почте и присылает решения тестовых заданий туда :)

Прототипирование в основном делаю в Jupyter, развернутом на серверах с необходимыми вычислительными мощностями — обычно это AWS. Продакшн крутится частично на наших собственных серверах, частично на Hetzner и RapidSwitch. У нас нет никаких ограничений по используемым фреймворкам, но мне больше других нравится PyTorch. Но есть подсистемы и на тензоре, и на caffe и на sklearn.

Когда исследовательская часть завершена и нужно оформить какой-то API или завернуть все в красивую коробку для внедрения, пишу код в PyCharm. Наш репозиторий с алгоритмами лежит на GitHub.

Книжки и самообразование

Я не могу выделить самообразование в отдельный процесс — у меня нет рутинных задач. По сути вся работа — это самообразование.

AI развивается колоссальными темпами, поэтому важно все время держать руку на пульсе. Те методы, которые считались передовыми пару лет назад, сегодня уже устарели. Мне нравится анализировать свои проекты несколько летней давности и думать, как бы их можно было реализовать более эффективно с сегодняшними знаниями и инструментами.

Регулярно читаю различные статьи по алгоритмам, машинному обучению, искусственному интеллекту. Еженедельно просматриваю рубрику Computer Science на arxiv.org, читаю white papers, пре-публикации. Подписан на страницы Yann LeCun, Andrew Ng и других в Facebook — там часто можно получить самую свежую информацию о новых достижениях в области ML.

Одной из фундаментальных книг по машинному обучению считаю «Pattern Recognition and Machine Learning»Кристофера Бишопа, познакомился с ней в начале своего пути. Сейчас читаю «Deep Learning»Яна Гудфеллоу. Еще начал читать Адизеса, хочу основательно подойти к вопросу формирования команды.

Стыдно признать, но на художественную литературу, к сожалению, сейчас банально не хватает времени.





Ретроспектива и планы на будущее

Я всецело согласен с утверждением: «Суть прогресса в переоценке возможностей». Потому всегда брался и берусь за новые вызовы. Себе в прошлом, настоящем и будущем я бы посоветовал меньше бояться ошибок. Основным инструментов эволюции была ошибка (и время). И к чему это все привело :)

Главное — делать выводы и не наступать на те же грабли. В остальном опыт фейлов — самый ценный.

Сейчас я формирую новую команду, которая будет заниматься вопросами разработки и интеграции алгоритмов, с дальнейшей поддержкой, в продукты ЛУН и Flatfy.

Проект называется FLAIR — Flatfy Artificial Intelligence Researchers. Но важнее его толкование: «Flair — a special or instinctive aptitude or ability for doing something well». Мне хочется, чтобы это всегда было о нас. В ЛУН очень плодородная почва для создания такого рода продукта: у меня есть все преимущества стартапа и при этом не надо думать о финансировании и административной возне.

Еще одна идея на перспективу — развивать академический бренд ЛУН. Я хочу, чтобы наши ребята больше делились своими интеллектуальными наработками, выступали, делали публикации. Так что будем работать над тем, чтобы стать заметными в академическим мире.

Как разработчику попасть в лучшие продуктовые компании в Украине или США

$
0
0

В этой статье я поделюсь основными принципами в найме A-players (топ-перформеров) для продуктовых компаний Украины и США. Не вижу смысла в пошаговой инструкции, потому что шанс получения оффера в конкретную компанию зависит от множества индивидуальных факторов. Но я подниму вопросы, важные для продуктовых компаний и разработчиков, которые хотят в таких работать.

Image by Janis Andzans

Люблю классные продуктовые компании и всегда с такими работала: сначала Playtika (сейчас многомиллиардный геймдев), потом Indigo Tech Recruiters, где я тоже работала только с продуктовыми: WIX, MacPaw, Livestream, Fareportal, AidaHealth и множество малоизвестных в Украине стартапов, потом Talkable (SaaS из Сан-Франциско), а сейчас создаю свою рекрутинг команду и нанимаю топ-перформеров в компании в Украине и США. Я живу в Калифорнии и работаю одновременно с украинским и американским рынками талантов уже два года, и меня часто спрашивают, как попасть в хорошую продуктовую компанию.

Конечно, Украина — это все еще рынок IT-аутсорса. И в этом тоже есть польза для страны. Во-первых, аутсорс заводит в страну деньги и создает огромное количество рабочих мест. Во-вторых, аутсорс — это возможность безопасно потренироваться на чьем-то продукте и нарастить опыт.

С появлением в Украине классных продуктовых компаний/стартапов и вообще с глобализацией IT-рынка украинские разработчики могут не просто писать код, а создавать свой продукт, иметь максимальное на него влияние, регулярно получать реальный фидбэк от пользователей, получить долю в компании, научиться построить свою компанию и, конечно, работать с самыми талантливыми людьми, которые также горят идеей творить.

Продуктовое мышление и инженерный подход

Уровень найма в продуктовых компаниях обычно на порядок выше, чем в аутсорсе. Они ищут не только технически талантливых специалистов, а и обращают особое внимание на личные качества, ценности и интересы специалистов. Продуктовые компании обычно нанимают или стараются нанимать только топ-перформеров. У разработчика зачастую ищут следующее:

Продуктовое/бизнес-мышление.Важно понимание, как твой код меняет продукт. Если кандидат на интервью не задает ни одного вопроса о продукте — это означает, что ценности продукта у него просто нет. Если разработчика не волнует, кто и как использует создаваемый им продукт — у него пока нет продуктового мышления. Мне часто встречаются опытные и скилловые разработчики, которые отмечают, что пишут качественный код, а как он используется дальше их не волнует. Для продуктовых компаний качества кода недостаточно.

Конечно, учитывая то, что девелопер проводит бОльшую часть дня только с девелоперами, вникать в продуктовую специфику не всегда есть возможность. И тут компаниям важно в этом помогать. Например, в Talkable вся продакт девелопмент команда в Киеве, а бизнес-команда в Сан-Франциско. Мы регулярно приглашали всех разработчиков в СФ, чтобы они развивали свое понимание бизнеса компании.

Инженерный подход.Разработчик — это не фреймворк. Продуктовые компании интересует, прежде всего, умение мыслить как инженер. Знание принципов и подходов в программировании, алгоритмы гораздо важнее самого языка и тем более фреймворков. Например, на собеседовании в больших компаниях в Долине (Google, Facebook и др.) язык программирования разработчика имеет крайне минимальное значение.

Личные качества топ-перформера:

  • Перфекционизм (в виде требований к себе и окружающему миру) или Экстра. Любовь к качеству, подход «пройти дополнительные 100 м» и «создать дополнительную ценность», желание взять от жизни больше, постоянное увеличение цели, быстрый рост.
  • Самоменеджмент и самомотивация. Полное отсутствие потребности в микроменеджменте и практически полное отсутствие потребности во внешней мотивации. Самое сильное проявление этого качества — умение вдохновлять людей вокруг.
  • Чувство владения (компанией/продуктом/фичей/задачей, обычно проявляется во всем). Отношение ко всему как к своему. Умение брать ответственность за свои действия и не искать оправдания.
  • Ценностный подход. Совершение всех действий согласно ценностям. Например, у меня был случай найма девелопера, которая, получив образование психолога, решила уйти из этой сферы, потому что не верила в эффективность науки психологии в Украине (в научных работах преподаватели ожидали фейковые данные ради более показательных результатов). Обычно для людей с сильно развитой системой ценностей крайне важно, кто и зачем создал компанию, кто и как использует продукт и какие ценности в команде. Часто эти люди — участники волонтерских программ, опенсорсеры и другие небезразличные члены общества.
  • Гибкость мышления. Желание и умение слышать мнение другого человека, умение глубоко анализировать информацию, предлагать альтернативное решение в случаях несогласия, готовность экспериментировать и отсутствие страха самого факта изменений.

Culture fit.У каждой компании он свой и определяется ценностями основателей, согласно которых собирается команда. Зачастую компании размещают инфо о культуре на своем сайте в разделе «О команде». Иногда это можно найти в описании вакансии. Соответствие культуре компании — ожидание, которое редко встречается в аутсорсинговых компаниях и практически всегда в продуктовых. Для того чтобы что-то с кем-то создать, крайне важно разделять с этими людьми ценности.

У меня был кейс, когда мы отказали финальному кандидату по причине несоответствия ценности компании «прежде чем взять — нужно отдать». Кандидат пришел через очень теплую рекомендацию и прошел несколько этапов интервью. Мое личное интервью с кандидатом проходило за обедом в одном из ресторанов в Калифорнии. Диалог был очень впечатляющим, но когда нам принесли счет, кандидат задал вопрос, покрою ли я обед расходами компании. Варианта ответить «нет» у меня этически не было. Хорошо зная команду, я понимала, что у нас с кандидатом просто разные взгляды на соотношение «дать-взять». Проявление качества получателя стало одной из основных причин отказа этому кандидату.

В продуктовых компаниях США обычно особенно высокие ожидания по перечисленным выше пунктам. И если откинуть случаи релокейта большими аутсорс компаниями, то для получения классного оффера в Штатах крайне необходимо развивать описанные выше личные качества.

Image by Janis Andzans

Резюме и LinkedIn профиль

На этапе поиска продуктовые компании всегда обращают внимание на резюмеили LinkedIn профиль. Когда ты еще не знаком с человеком лично, а рынок разработчиков в целом большой и тебе нужно за минимальное время найти лучшего, очень помогает выставлять правильные фильтры при поиске.

Например, я пишу только разработчикам из компаний, которые, по моему мнению, нанимают или стараются нанимать только топ-перформеров (список ниже), но иногда экспериментирую и с другими компаниями, а также которые были вежливы в предыдущих коммуникациях (кстати, часто тим лиды тоже просматривают историю коммуникации разработчика и рекрутера перед собеседованием и если были случаи откровенно хамского общения или надменности, то на интервью могут не позвать либо позвать, но поднять этот вопрос и попросить кандидата объяснить свою позицию.

Кроме этого в профиле у разработчика есть один и более пунктов из этого списка:

  • Опыт описан с позиции продукта, бизнеса, а не только технологий (редко пишу разработчикам, у которых в профиле только списки технологий). Например, здорово, когда в рамках каждой компании есть краткое описание продукта/проекта, того, как разработчик его улучшает/на что влияет (зона ответственности), чего достиг уже (особенно важно для менеджерских позиций) и с помощью каких технологий.
  • Высокий GPA или незаконченное образование. Первое зачастую означает перфекционизм и топ-перфоменс во всем, а второе — здоровое бунтарство и критическое мышление. Оба качества могут быть крайне полезными в продуктовых компаниях.
  • Топ-университет (например, в Киеве это КПИ, Могилянка, Шевченко). И тут не только про уровень образования в этих университетах. Зачастую у них, действительно, сильные фильтры при поступлении.
  • Продолжительность работы в каждой из трех последних компаний не менее 1,5 года (в случаях когда 3 последние места работы меньше года — никогда не пишу). Конечно, вариант «три раза подряд круто не повезло» встречается и если мне рекомендуют такого специалиста, я всегда познакомлюсь, но статистически это крайне редко. В основном, частые смены места работы говорят о плохом перфомансе либо потребительском отношении к компании (гонка за +$100 к ЗП, более вкусным кофе и другими зачастую бытовыми условиями).
  • Хорошие рекомендации в профиле (особенно от знакомых мне людей). Конечно, сухие копипасты в рекомендациях добавляют мало баллов, но искренние и наполненные фактами — отличный показатель.
  • Наличие опенсорс проектов (хотя сейчас отношусь к этому осторожно и стараюсь не впечатляться «любым» опытом). Зачастую это означает социальное небезразличие, желание что-то создать и помочь комьюнити. В то же время, от некоторых лучших разработчиков сейчас слышу, что опенсорс приобрел некую хайповость и идеализация наличия опенсорс проектов ограничивает в получении лучших офферов девелоперов, которые полностью отдаются своему коммерческому проекту и попросту не имеют времени участвовать в опенсорсе.
  • Предпринимательский опыт (независимо от его успешности). Развивает все личные качества топ-перформера. Это про потребность создавать, желание, а часто и умение мыслить с точки зрения продукта и бизнеса, умение брать на себя ответственность, готовность рисковать, экспериментировать, умение договариваться и отсутствие страха неудач.
  • Волонтерский опыт (здесь тоже очень осторожно, анализируя реальную его пользу). Зачастую это проявление ценностей и социальной позиции.
  • Другие редкие факторы. Например, опыт жизни в другой стране или знание редкого языка. Обычно это тоже проявление того самого «экстра».

Для примера хочу привести LinkedIn профиль одного из лучших известных мне Front-End разработчиков — Паши Лисового. Пашу хорошо знаю лично и его топ перфоменс могу подтвердить самыми лучшими отзывами моих клиентов-компаний, в которых он работал или проходил собеседование.

Вместо заключения

Как и обещала, делюсь списком компаний, которые на слуху и у которых, на мой взгляд, (достаточно) высокая планка хайринга (кроме продуктовых, включаю пять не самых больших аутсорс): Talkable, People.ai, RailsReactor, Restream, Wix, PetCube, Grammarly, MacPaw, Cogniance, Readdle, Preply, YouScan, DMarket, Liki 24, ZEO, PromoRepublic, Depositphotos, Glomex, AjaxSystems, Attendify, Ring, Genesis, Snap, Innovecs, Evergreen, Fareportal, CEX.IO, Terrasoft, Levi9.

Такой субъективный список я составила, основываясь на понимании принципов найма конкретных компаний (через личное знакомство с рекрутерами и/или хайринг менеджерами) и на наблюдении некоего паттерна на своих собеседованиях. У меня достаточно большой нетворк специалистов, который я расширяю ежедневно. И если я регулярно встречаю впечатляющих талантливых специалистов из одной компании — предполагаю о ее высоком уровне найма и отношу в свой список. Он не статичен — в нем появляются новые компании, а кого-то я могу исключать, если узнаю соответствующие детали о найме.

Классные продуктовые компании нанимают людей с соответствующим способом мышления, подходами и личными качествами. Для того, чтобы попасть в одну из таких компаний, нужно развивать эти качества. Обычно, на это уходит гораздо больше времени и сил, чем на изучение новой технологии, но результат оправдывает усилия.

В Украине разработчиков с описанными выше качествами крайне мало, а возможностей (в том числе финансовых) у них, конечно, гораздо больше, чем у других. И эта тенденция будет только прогрессировать. Хоть я и живу в Калифорнии, но я очень люблю Украину. И мне хочется, чтобы Украина была известна на мировом рынке не только как отличная страна для аутсорса таланта, но и страна, где создаются крутые продукты.

Как изменится индустрия кибербезопасности в ближайшие 10 лет

$
0
0

Индустрия информационной безопасности (ИБ) меняется. Я 8 лет проработал в Deloitte, около двух — в Укроборонпроме и видел, насколько уязвимыми становятся предприятия, если не «приручают» новый технический инструментарий. Чтобы решить эту проблему, мы с партнерами развиваем в Украине сообщество белых хакеров, а еще — разрабатываем для бизнеса современные решения в области кибербезопасности, в основе которых лежат новейшие технологии и нешаблонные подходы. Какие именно изобретения человечества стоит изучать специалистам по ИБ — разберем в этой статье.

Киберпреступность усиливает позиции. По данным Forbes, в 2017 году 100% предприятий (850 компаний-участников исследования) подвергались атакам через вредоносное ПО для мобильных устройств, 89% компаний стали жертвами man-in-the-middle через Wi-Fi.

Издание ссылается на ресурс Check Point, который уточняет, что среднее число атак через мобильные зловреды — 54 на один бизнес. Общее количество юзеров, использующих вредоносное мобильное ПО, выросло за прошлый год с 35,5 млн до 106 млн. При этом большинство пользователей загрузили зловреды непосредственно из Google Play (более 300 приложений). И это же только один источник угроз, а их намного больше.

Но что мы видим, когда ищем способ бороться с этими угрозами? Пит Герцог, ко-фаундер и управляющий директор ISECOM, пишет в блоге Veracode: «Однажды [...] вы находите статью о том, как идеально защитить свои данные в три шага. В ней говорится, что нужно включить фаервол, установить антивирус на все устройства и использовать автоматические обновления и патчи в режиме 24/7. И вы смеетесь в голос, так, что вода брызжет из носу». Это действительно смешно, потому что киберпреступность сложно организована и технически подкована, и простых решений тут быть не может. Чтобы защитить свои данные, придется копнуть намного глубже.

Как устроена современная киберпреступность

Европол в отчете SOCTA («Оценка серьезной и организованной преступности») за 2017 год отмечает, что «почти для всех видов организованной преступности характерно то, что злоумышленники со все большим мастерством адаптируют и развертывают технологии, повышая эффективность атак». Полицейская служба Евросоюза называет это самой большой проблемой, стоящей перед правоохранительными органами во всем мире. Не могу не согласиться: часто черные хакеры осваивают новые решения быстрее, чем специалисты по информационной безопасности.

Ведомство также отмечает сложную структуру организованной преступности. В нее входят не только организованные группировки и преступные сети, но и такое явление как CaaS — crime as a service — предоставляемое «криминальными экспертами».
O’Reilly развивает эту тему в своем отчете «Who Are the Bad Guys and What Do They Want?». Компания раскрывает структуру организованной преступности в контексте киберконфликтов с политической подоплекой. Исследователи выделяют несколько типов игроков: хактивисты, инсайдеры, преступники, террористы и нации.

Источник: O’Reilly

В O’Reilly акцентируют внимание на том, что структура не иерархична. Она скорее напоминает сеть или экосистему. По нашему опыту скажу: если отойти от темы политических конфликтов, ситуация все еще остается похожей. На рынке присутствуют самые разные игроки, которые могут иметь общие интересы, но они не подчиняются друг другу, а действуют как самостоятельные участники экосистемы. И да, они активно изучают новые технологии.

Источник: O’Reilly

В Европоле призывают использовать новые технологии и для борьбы с преступностью. Эксперты советуют внедрять современные инструменты цифровой криминалистики, развертывать интеллектуальное ПО на базе big data. Ведомство сравнивает такой подход с использованием дронов в ситуациях, когда нужно мониторить крупные территории или события. Посмотрим, какие еще технологии стоит внимательно изучить всем, кто работает в сфере кибербезопасности.

Без AI не обойтись

Многие эксперты — в частности, редактор MIT Technology ReviewМартин Джайлс — выражают опасения по поводу искусственного интеллекта в кибербезопасности. Джайлс говорит, что технология слишком сложна и непредсказуема. Но правда в том, что мы уже сейчас не можем справиться с защитой данных, потому что их слишком много. В той же колонке редактор пишет, что рынок кибербезопасности переживает сильнейший стресс: на нем уже сейчас не хватает специалистов. Как участник рынка, скажу, что это правда, и в будущем тенденция, вероятно, усилится.

Расти будет и количество передаваемых данных. В Ciscoподсчитали, что в 2018 году общий объем IP-трафика составит 151 Эбайт в месяц (эксабайт, экса — х10^18). К 2021 году он вырастет до 278 Эбайт в месяц или 3,3 Збайт в год (зеттабайт, зета — х10^21). Еще интереснее прогноз Seagate: к 2025 году объем данных, имеющих критическое или потенциально критическое значение для человечества, составит превысит 60 Збайт. Не защищать эти данные нельзя, а ресурсов для защиты «человеческими» методами не хватает.

SC Mediaвспоминает случай с Equifax. Напомню, в 2017 одно из крупнейших кредитных агентств США подверглось взлому: злоумышленники получили доступ к персональным данным почти 150 млн человек и 209 тысячам кредитных карт. У Equifax было 225 специалистов по кибербезопасности, но один из них все-таки забыл развернуть нужный патч. Так что вопрос «использовать ли AI в кибербезопасности?» уже не стоит. Речь идет только о том, как именно мы будем его использовать.

Где узнать больше:AI Innovation Summit, 10–11 сентября,Сан-Франциско; Cyber Security & Artificial Intelligence Summit, 12–13 сентября,Берлин. На AI Innovation Summit в Сан-Франциско можно будет послушать спикеров из Apple, Google, Uber, Atlassian, Visa, Intel и других компаний. На Cyber Security & Artificial Intelligence Summit в Берлине ждут докладчиков из Vodafone, IBM, Fujitsu и других.

Блокчейн в кибербезопасности

Защита данных от несанкционированного изменения и проверка их подлинности — важнейший аспект кибербезопасности. Когда количество информации растет с такой скоростью, нет смысла «охранять периметр»: даже небольшая уязвимость может стать фатальной, а компания рискует заметить изменения в данных слишком поздно. Решением становится блокчейн: распределенный реестр делает невозможным несанкционированное редактирование файлов. Эту же технологию можно использовать и для ограничения доступа к информации.

Источник: HCL

Но Harvard Business Review предупреждает: мы не должны заблуждаться, считая блокчейн «подрывной» технологией, которая быстро изменит существующие бизнес-модели, предлагая более дешевые и быстрые инструменты. Это технология фундаментальная, на полноценное освоение которой уйдет десятилетие, а может и не одно.

Издание сравнивает блокчейн со стеком протоколов TCP/IP, которые лежат в основе интернета. Это отличная аналогия. Сначала телекоммуникационная архитектура базировалась на коммутации каналов, потом появился TCP/IP, но он не изменил подход к телекоммуникациям в одночасье. В 1970-х TCP/IP использовался для разработки ARPAnet (закрытой сети Минобороны США), в 1980-хи в начале 1990-х —для создания частных сетей крупных коммерческих организаций и только в середине 1990-х,с появлением Всемирной паутины, TCP/IP получил широкое распространение. Скорее всего, становление блокчейна будет происходить по примерно такой же схеме.

Это не значит, что о блокчейне в кибербезопасности пока можно не думать. Наоборот, блокчейн в корне изменит наши представления обо всех бизнес-процессах и информационных технологиях, поэтому изучать его и адаптировать для своей отрасли нужно уже сейчас.

Где узнать больше:HackIT 4.0: Exploit Blockchain, 8–11 октября,Киев. В программе — двухдневная конференция, практические тренинги, день нетворкинга с туром на Чернобыльскую АЭС, CTF и bug bounty марафон для белых хакеров. В программном комитете — Фил Циммерман, в числе спикеров — эксперты из Великобритании, Франции, Канады, Турции, Китая и других стран.

Квантовые генераторы случайных чисел

Современные возможности криптографии не идеальны, пишут в колонке для IEEE Spectrumко-фаундеры стартапа в сфере квантовой криптографии Quside Карлос Абельян и Валерио Прунери. Они по большей части упираются в ограничения генераторов случайных чисел, которые, в свою очередь, производят псевдослучайные числа, основываясь на определенных алгоритмах.

Способов на 100% надежной доставки зашифрованного сообщения тоже нет. Популярное RSA-шифрование, которое считается крайне надежным, нельзя назвать безупречным. Во-первых, оно слишком медленное. Во-вторых, обратить его вычисления и найти исходные значения (следовательно, расшифровать ключ) невозможно только в теории — потому что не хватает времени и вычислительных мощностей. Но в будущем эти мощности могут появиться, и мы должны найти «противоядие» раньше, чем станем уязвимы.

Решением специалисты называют разработку новых генераторов истинно случайных чисел. Их работа базируется на фиксации процессов, имеющих квантовую природу. Только в этом случае генерацию можно назвать действительно непредсказуемой (и быстрой).

Источник: Korea Bizwire

Те генераторы истинно случайных чисел, которые существуют сейчас, слишком дорогие (на сайте ID Quantique цена стартует с €990 без НДС) и громоздкие, поэтому используются в основном на военных объектах. Но авторы колонки рассказывают о новых чипах — размером 5×5 мм, с возможностью использования в смартфонах и IoT-устройствах. Такой чип запатентовала в 2016 году южнокорейская компания SK Telecom. В перспективе разработчики планируют массовое производство и коммерческое использование.

Мероприятий, посвященных этому вопросу, крайне мало. О событиях проще всего узнавать, отслеживая активности конкретных компаний (тех же стартапов вроде Quside или таких мастодонтов как ID Quantique и QuintessenceLabs).

Где узнать больше:CHES Conference, 9–12 сентября,Амстердам. В числе докладчиков — сотрудники университетов США, Индии, Бельгии, Сингапура.

Что еще стоит изучить

Конечно, это еще не все технологии, которые стоит изучать специалистам в сфере информационной безопасности. Big data, machine learning, deep learning, ботнеты и IoT, облачные технологии — список можно продолжать долго. В мире регулярно появляются новые кейсы, связанные с этими технологиями.

Скажем, Forbesв начале года писал о сервисе Red Canary. Компания утверждает, что даже специалисты по безопасности игнорируют 95% оповещений от защитного ПО, не говоря уже о работниках других департаментов. В таких условиях искать новые инструменты нет смысла: каждая новая программа только снижает шансы заметить потенциальную опасность. Поэтому Red Canary устанавливает на компьютеры клиентов специальное ПО, которое фиксирует всю активность пользователей и отправляет отчеты в облако. Затем алгоритмы и боты анализируют данные и выявляют потенциально вредоносную или рискованную активность.

Подобные кейсы нужно изучать особенно внимательно. Это позволит точнее прогнозировать тренды и в киберпреступности, и в кибербезопасности. MSSP Alertпредлагает для этого отличный метод «Ten Year Lookback»:

  1. Вспомните себя 10 лет назад. Что вы делали? Что тогда было важным для вас?
  2. Представьте, что вы можете отправить себе сообщение из 2018-гов 2008-й.Какой совет вы себе дадите? Каким обещаниям и предсказаниям верить, а каким — не стоит?
  3. А теперь «разверните» этот совет в будущее. Каким бы мог быть совет из 2028-гов 2018-й?

10 лет назад говорили об автоматизации процессов, о «самозащите» файлов, прогнозировали рост количества кибератак, связанный с ростом самого интернет-рынка. Сейчас мы видим развитие облачных технологий, блокчейна, автоматизацию обработки данных. Следовательно, и кибербезопасность будет развиваться в этих направлениях.

Год назад Гил Пресс в колонке для Forbesписал: «Только две вещи о кибербезопасности в 2018 году можно предсказать так же точно, как смерть и налоги: будет больше впечатляющих взломов и GDPR вступит в силу 25 мая». Перефразируя журналиста, можно сказать, что есть только два точных прогноза о кибербезопасности на следующие 10 лет: будет больше впечатляющих взломов и злоумышленники продолжат использовать новые технологии. И мы должны быть к этому готовы.

Чому вони не їдуть з України: історії IT-спеціалістів

$
0
0

Ми розпитали досвідчених IТ-спеціалістів, чи розглядали вони можливість релокації, що їх утримує в Україні та чи допускають вони думку, що коли-небудь поїдуть.

Володимир Агафонкін, Software Engineer в Mapbox

Пропозиції щодо релокації я практично не розглядав, хоча їх для досвідчених фахівців на ринку дуже багато. Найсерйознішою була від Mapbox, американської компанії, в якій я працюю вже 5 років — з релокацією до Вашингтона або Сан-Франциско, повною юридичною підтримкою для візи O1, допомогою в облаштуванні з сім’єю. Пік цих обговорень припав на 2014-2015,коли американці були особливо занепокоєні ситуацією з безпекою в країні.

Але гострої необхідності переїзду так і не виникло: я добре справляюся з роботою віддалено. І з безпекою в Києві все гаразд — я б навіть сказав, набагато краще, ніж в якому-небудь центрі Сан-Франциско, з натовпами божевільних і наркоманів на вулицях і рівнем вогнепального насильства, що перевищує показники інших цивілізованих країн в десятки разів.

Крім цього, я досить часто літаю в Штати, бачу, як живуть люди, регулярно зустрічаюся з українськими друзями, які переїхали. І при цьому ніколи не виникало почуття, що там хочеться жити. Приїхати на пару тижнів, погуляти по національним паркам, заглянути в гості на барбекю або спробувати серфінг в океані — чудово. Але жити, ростити своїх дочок — зовсім інша історія. Як то кажуть, не варто плутати туризм з еміграцією.

Що тримає в Україні?Мені пощастило — роботу своєї мрії я вже знайшов. Та й з відповідною зарплатою жити в Україні набагато комфортніше, ніж в великих американських містах (навіть з урахуванням її підвищення при переїзді). Так що цей мотиватор вже відпадає.

Помандрувати, подивитися на іншу культуру? Це можна і без релокації — наприклад, перебиратися з родиною в найсумніші зимові місяці в теплі країни, а потім повертатися. Працювати віддалено можна з будь-якої країни, навіть дозволу питати не треба.

А ось тримає в Україні мене багато. Перше — сім’я і близькі друзі. Всіх з собою не перевезеш, і я бачу по своїх закордонних друзях, наскільки сильно вони тужать за спілкуванням з тими, хто залишився на батьківщині. А нових друзів заводити після 30 неймовірно важко, де б ти не був, що вже говорити про іншу країну і культуру.

Друге — мій рок-гурт, «Обійми Дощу». Музика для мене багато значить. Гурт розвивається вже 12 років, люди в ньому — мої близькі друзі, і необхідність починати все з нуля в іншій країні з іншими людьми була б для мене нестерпною.

Про плюси і мінуси нашої країни.Не подобається, що війна, і гинуть люди, хоча тут у нас немає вибору — потрібно захищатися. А ось все перераховане нижче — в наших руках.

Не подобається глибока корупція у всіх шарах суспільного життя. Не подобається відстала медицина, в якій у багатьох лікарів головне завдання — не допомогти, а прописати якомога більше ліків. Не подобається хамство, байдужість, позиція «Я зроблю собі добре за рахунок оточуючих, мені на всіх наплювати».

Не подобається схильність нескінченно скаржитися на життя і всіх навколо і при цьому не докладати ніяких зусиль, щоб змінити що-небудь. Не подобається нетерпимість до людей з іншим способом життя, і це стосується не тільки раси та сексуальної орієнтації, а й звичайних речей на зразок того, якої довжини у тебе волосся і яку музику ти слухаєш.

Але взагалі описувати проблеми можна довго, і вони знайдуться в будь-якій країні. З іншого боку, ці аспекти поступово поліпшуються, і є багато речей, які мене наповнюють глибоким оптимізмом.

Про розвиток України.Майбутнє України — це молоді люди. І спостерігаючи за нашими школярами, студентами, випускниками, всупереч усім буркотунам, мені здається, що вони більш розумні, освічені, добрі, терпимі, ініціативні і амбіційні, ніж ми були в тому ж віці.

Українці дуже змінилися за останні чотири роки, стали менш байдужими. Тішить кількість нових ініціатив — громадських, освітніх, волонтерських, спортивних, і навіть розважальних і творчих накшталт нових фестивалів та арт-просторів. Київ теж дуже змінився. Іноземці дуже дивуються, приїжджаючи після декількох років.

У повсякденному житті — подобається, що стало легше вести бізнес, і паперової бюрократії набагато менше, ніж було. Неймовірно низькі податки для малих підприємців. Думаю, що навіть занадто низькі для айтішників — мені соромно зізнаватися закордонним колегам про 5%. :) І я сподіваюся, що вони будуть поступово зростати — разом з якістю державних послуг.

Подобається зручний банкінг. Дуже швидкий і дешевий інтернет. Багато коворкінгів. Доступний транспорт. Смачна їжа з великим вибором і дуже дешеві продукти в порівнянні із західними країнами.

Все-таки скільки б песимісти НЕ розпиналися, що в країні нічого не змінюється, але змінилося дуже багато чого. І буде змінюватися на краще ще більше — я в цьому глибоко переконаний. А ще я люблю українську мову і виховую на ній своїх дітей.

Про майбутнє.Що стосується релокації в майбутньому, нічого не можна виключати, всяке може трапитися. Може, переїдемо на старості років в будиночок біля океану десь в Шотландії — на той час там має неабияк потеплішати (вибачте). Ну а в найближчі роки все-таки хочеться жити в Україні.

Руслан Шевченко, консультант / дослідник в Garuda.АІ

Вперше мене запрошували поїхати за кордон наприкінці 90-х —в аспірантуру до Швеції. Пропонували стипендію $500 і житло. Якби поїхав, то, напевно, зараз був би вченим.

Відмовився через патріотизм, як я зрозумів згодом — помилковий. Але тоді я їм був інфікований.

Чому помилковий? Тому що тоді я не розумів, що моя ступінь впливу або опору незрівнянно мала в порівнянні з глобальними процесами, які пізніше призвели до фактичного зникнення науки в Україні та в кінцевому результаті привели мене в індустрію.

Також я не бажав йти в ногу з трендом. Навпаки, вважав: раз всі прагнуть виїхати, то я не буду. Це теж позерство. Правильніше було б не слідувати ні тренду, ні анти-тренду.

Практично все моє оточення тоді виїхало — в Україні залишилося буквально пару чоловік. Я вже втомився рахувати хвилі еміграції, коли майже всі навколо мене їхали. До слова сказати, зараз цей потік трохи зменшився.

Останній раз пропозицію щодо релокейта отримав буквально кілька днів тому — в фінтех-компанію в Японії.

Є одна фірма з США, яка щороку із завидною постійністю надсилає мені запрошення пройти співбесіду — видно потрапив в їх CRM-машину. Я якийсь час також регулярно пропонував їм відкрити офіс розробки в Києві (одне з відділень CISCO знаходиться в Ізраїлі саме через те, що Міхаель Лаор хотів там жити, а компанія не хотіла втрачати цінного працівника). Поки глухо.

Що тримає в Україні?Я дивлюся на це питання з іншого боку: а які причини змушують переїжджати? Якщо аналізувати, то у мене немає особливих глобальних причин. Переїжджати варто, якщо у вас є якась мета, ви хочете щось зробити, і шанси цього домогтися в іншій країні вищі.

Якщо говорити про мене, у мене в планах — закрити один гештальт, пов’язаний з науковою діяльністю. Це вимагає або певного проміжку часу, або дуже близької відповідності профілю роботи моїм інтересам, що мало реально як тут, так і за кордоном. Але тут все-таки трохи реальніше :)

Ну і сім’я — не всі хочуть переїжджати. Якби не було родини, то, можливо, думав би по-іншому.

Слід визнати, що хоч тут, хоч там, — ми живемо «в бульбашці» свого мікросоціуму, який більш-менш однаковий у всіх країнах. Перебуваючи тут, ми створюємо мікросоціум для своїх друзів і близьких, а їдучи — збіднюємо їх оточення.

Але в цілому з розвитком глобалізації фактор місця проживання стає все менш важливим. Брати участь в житті глобального співтовариства багато в чому простіше по листуванню, ніж очно.

Про плюси і мінуси нашої країни. В Україні мені подобається система ФОП — це податковий рай для консультанта. Ще багато всього подобається: книги Леся Подерев’янського, картинки Андрія Єрмоленка, журнал «ШО», «Садок вишневий коло хати» ...

Якщо перераховувати, що не подобається, — це триватиме дуже багато часу. Одна з гострих проблем — якість шкільної освіти і повільні темпи реформ, які не передбачають розвиток хороших масових приватних шкіл в найближчому майбутньому. Можливо, саме через це доведеться переїхати.

Про ситуацію з державною владою, етикою бізнесу та менталітетом шахрайства на дрібницях — вже і без мене написано багато. Думаю, читач може самостійно розказати цю частину :)

Про розвиток України.Мені здається, цього разу логіка історичного розвитку на нашому боці. Вважаю, феодалізм все-таки піде — можливо, для цього нам доведеться пройти ще через кілька революцій.

Менталітет поступово буде модернізуватися. Якщо не всі поїдуть, оточення буде більш живим. Буде країна як країна :)

Тут теж можна робити щось цікаве. Ми зараз працюємо над проектом Garuda.ai: пробуємо організувати з України наукомісткий сервіс по формальної верифікації різних моделей, заснований на розробках наших вчених.

З іншого боку, якщо ви працюєте на глобальному рівні, то замикатись в Україні не можна. Треба розуміти, що в більшості практик ми відстаємо років на 10 і треба ці практики переймати. Тобто правильна модель: тусуватися — де потрібно, а жити — де хочеться.

Про майбутнє.Я допускаю можливість релокації в майбутньому. Одну причину я вже озвучив. Друга — не буду виключати можливості, що з’явиться якийсь виклик, що вимагає переїзду. Припустимо, ми зробимо якийсь аналог MATLAB і будемо його впроваджувати в якомусь умовному Goldman Sachs :) Або просто знадобиться отримати відгук на наш продукт «в полі».

Олександр Краковецький, CEO DevRain Solutions, CTO ДонорUA

Звісно, я думав про релокацію. Але, враховуючи, що останній раз я розглядав вакансії багато років тому, то і класичний варіант переїзду з офером для мене не підходить. Натомість я вивчав досвід країн, які пропонують стартап-візи і можливість розширення географії компанії. Хоча, буду відвертим, далі прочитання статей та вивчення кількох лінків не заходив. Можливо, тому, що розглядав можливість переїзду лише з теоретичної точки зору, а не практичної.

Що тримає в Україні?Якби мені за кожне подібне питання давали долар, я б уже був доларовим мільйонером :)

Дійсно, якщо ви — хороший ІТ-спеціаліст, то раціональних причин залишитись в Україні, маючи пропозиції з усього світу, мало. Можу знайти лише дві. По-перше, різниця між середньою зарплатою середньостатистичного українця і середньостатистичного ІТ-спеціаліста, що відрізняється в рази. По-друге, дефіцит ІТ-спеціалістів на ринку, що дає можливість увійти в досить непогану «зону комфорту». Звісно, є багато речей, які досить швидко нівелюють всі ці переваги: бюрократія, корупція, медицина, дороги, мажори, євробляхи тощо.

Що зупиняє конкретно мене від переїзду? Оскільки індивідуальні офери я не розглядаю, а сервісний бізнес тісно зав’язаний на присутності в Україні, то поки проводжу час тут з періодичними поїздками в Європу та США.

Про плюси та мінуси нашої країни. Не подобаються ідіоти і мудаки при владі. Більшість проблем, про які ми звикли говорити, — корупція, бюрократія, дороги, медицина, — є похідними від цієї проблеми. Ідіоти можуть на рівному місці провалити найпростішу задачу чи ініціативу, мудаки ж роблять все ідеально, але лише для себе і свого оточення.

Не подобається відсутність правоохоронної та судової систем. Немає жодного «позитивного» фактору, який може компенсувати цей недолік. Країна, де всі — від пересічного громадянина до президента — плюють на закон, не має майбутнього.

Не подобається совок і «русский мир», з яким реально доводиться боротися саме зараз — через 25 років після отримання незалежності. Особливо засмучують молоді люди, які до сих пір не зрозуміли, «какая разница».

Не подобається те, що Україна не задає і не бере участь в глобальных трендах і процесах. На глобальній мапі світу нас не існує. В країні немає посади (людини) чи організації, яка могла б взяти на себе роль смарт-представника країни в світі. А, отже, ми продовжуємо втрачати можливості.

Подобається динаміка розвитку ІТ-сфери, яка дає багато перспектив людям, що готові інвестувати в себе, свої навички, знання та розвиток.

Подобається ренесанс в багатьох сферах життя: стартапи, туризм, музична індустрія, видавництво книг, кінематограф, фестивалі, соціальні ініціативи. Хоча усвідомлюю, що знадобиться ще багато років і ресурсів, щоб все це підняти на потужний рівень.

Про розвиток України. Виділю ключові моменти, які, як я вважаю, є важливими і більш перспективними для України.

Позиціонування.Україна в даний момент асоціюється з Чорнобилем, Кличком-боксером, Шевченком-футболістом, корупцією, війною і гарними жінками. Звісно, таке позиціонування не дає можливості якось виділитись на глобальному фоні в позитивному ключі. Наприклад, в Барселоні є спеціальний орган, який відповідає за просування бренду міста в світі. Нам потрібно зробити щось схоже — але без шароварщини і кліше на кшталт UkraineNow, яким світ не здивуєш.

Лідерство в вузьких галузях.Давайте будемо чесними: з точки зору інноваційної економіки України на світовій мапі немає. Ось, наприклад, огляд національних стратегій розвитку штучного інтелекту. Ви бачите тут Україну? І я не бачу. Як і не бачу жодного фактору, що може принципово переломити ситуацію в кращу сторону. Але поки що це найбільш реальний сценарій: спробувати стати лідером хоча б в досить вузьких галузях — як, наприклад, Ізраїль в питаннях безпеки.

Інноваційний стрибок.В багатьох бідних країнах жителі не знають, що таке пейджер. І ніколи не бачили мобільні телефони з висувними антенами. Вони просто перестрибнули цей етап. Маю надію, що колись, хоча б на рівні міст ми отримаємо владу, яка буде занадто сміливою, щоб перестрибнути всі ці еволюційні процеси, що спостерігаємо в даний момент, і зробити якісний революційний стрибок. Для цього потрібно розвивати децентралізацію і спонукати регіони і міста до конкуренції за ресурси, таланти та інновації.

Освіта. Україна може стати новим центром освіти. Нинішня система освіта знаходиться в такому стані, що врятувати її практично неможливо. Так сталось, що в світі теж криза в освіті: багато людей відмовляються від класичних шкіл та університетів, онлайн-курси стають все більш розповсюдженими, а популярність курсів під умовною назвою «вайтівайті» (тобто швидкі курси для початківців) є безпрецедентною. Додайте сюди автоматизацію і штучний інтелект, які забирають і трансформують робочі місця, перетворюють ваші навички і накопичені знання в попіл з феноменальною швидкістю, то стає очевидним, що дуже скоро ми матимемо нові освітні формати і перехід на нову парадигму освіти. Україна могла б стати одним із центрів освіти під час демонтажу існуючої системи.

Еко-туризм. Величезна територія, зелені зони, колоритна сільська місцевість та кухня — Україна повинна використовувати свій туристичний потенціал. Але лише після того, як буде нормальна інфраструктура та дороги і коли українці навчаться не піднімати ціни на житло в 45 раз у випадку тієї чи іншої події, як це було у випадку з фіналом Ліги чемпіонів.

Друга державна мова. Технологічний розривще більше віддаляє нас від цивілізованого світу. Не впевнений, що країна знайде ресурси, щоб наздогнати англомовні сервіси по якості та можливостям. Навіть більш багаті і успішні країни відмовились від такої ідеї. Російську мову і «русский мир» я не розглядаю як альтернативу. Залишається наступний варіант: в країні потрібна друга державна мова. І ця мова — англійська. Таким чином, ми зможемо користуватись голосовими асистентами, глобальними сервісами, стати реальним учасником глобального ринку, отримати доступ до всіх знань та напрацювань світу.

Експорт соціальних інновацій.В Україні катастрофічна кількість проблем і катастрофічна нехватка ресурсів на їх вирішення. Перша проблема зумовлює появу величезної кількості соціальних ініціатив, друга — необхідності вирішувати проблеми за мінімальну кількість часу та ресурсів. Таким чином, суб’єктивно, наші класні українські соціальні проекти на два порядки кращі світових аналогів за співвідношенням ціна/якість. Потрібно знайти можливість експортувати соціальні інновації в світ.

Про майбутнє. Ми ніколи не знаємо, які можливості нас чекають і де й коли саме вони з’являться. Я досить багато подорожую, що дає мені можливість критично ставитись до багатьох речей, спостерігати, порівнювати, співставляти. Мені подобається привносити світовий досвід в Україну, але паралельно шукаю можливості дати щось навзаєм. Можливо, для цього знадобиться кудись переїхати. Поживемо — побачимо.

Сергій Калінець, Technical Architect в Steer73

Мені кілька разів пропонували релокацію. Останній — буквально місяць тому.

Зазвичай такі пропозиції робить великий аутсорсер, який шукає фахівців, допомагає їм з переїздом, робочою візою, грін картою тощо. А потім пропонує on-site позиції у своїх клієнтів. Я пройшов усі етапи співбесіди, але врешті-решт відмовився.

Що тримає в Україні?Основна причина — це, мабуть, якоря: сім’я, діти, батьки, школа, квартира, машина. Непросто, та й не хочеться все кидати і починати заново: шукати житло, заробляти кредитну історію, адаптуватися до сусідів, школи, культурних особливостей.

Рівень життя на заході вище, але одна справа відпочивати, і зовсім інша — жити.
В історіях переїзду моїх знайомих зовсім негативні сценарії зустрічаються рідко, але все одно на перших порах дискомфорт неминучий. І моїй родині він не потрібен.

З іншого боку, як казав кіт з мультика: «Нас і тут непогано годують». З моєю спеціальністю я досить впевнено почуваю себе і в Україні, і за кордоном. І поки мене цілком влаштовує працювати тут і періодично відпочивати там.

Про плюси і мінуси нашої країни.Мені багато чого не подобається, навіть якщо не брати до уваги війну, яка на першому місці. Наприклад, це люди, які викидають недопалки і плюють собі під ноги, розбиті дороги, корупція на всіх рівнях.

Іноді складається відчуття, що основна маса населення не поділяє моїх цінностей. З деяким побоюванням чекаю виборів: якщо в США примудрилися обрати Трампа, то у нас можливий будь-який варіант. Я підтримую поточний курс, який, як мінімум, анонсує нинішня влада, але при цьому бачу, як на місцевих рівнях сидять не ті люди, яких би хотілося там бачити. Прикриваючись добрими намірами і патріотизмом, вони творять казна-що.

Не можу знайти об’єктивних причин, чому у нас суворість законів компенсується необов’язковістю їх виконання. Чому не введуть відеоспостереження на дорогах зі штрафами? Чому не піднімуть штрафи? Я чую тільки відмазки, що наші «зубожілі» громадяни не зможуть платити штрафи, якщо вони будуть високими. Але ж це ж не абонплата — у всьому світі люди намагаються уникнути сплати штрафу.

Собачники не прибирають за своїми улюбленцями на вулицях, машини припарковані на тротуарах, транспорт постійно порушує правила дорожнього руху. Я думаю, якби всіх цих порушників штрафували або залучали до громадських робіт, якщо немає грошей, то через якийсь час само собою б навели порядок.

Адже за кордоном ті ж наші співвітчизники поводяться пристойно. Мені здається, що порядок і чистота за кордоном пов’язані не з тим, що люди там більш виховані, а з тим, що порушувати там — дорого.

Але при цьому мені в Україні комфортно. Якщо розглядати пострадянські країни, я б вибрав саме Україну (мабуть, ще б розглянув країни Балтії). У нас є така-сяка демократія, свобода слова і, як мінімум, відчуття свободи.

Про розвиток України.Зі зміною поколінь совок поступово виходить з наших голів. Все більше людей розуміють, що потрібно орієнтуватися на захід. Люди їздять за кордон, дивляться, їм подобається, і вони хочуть досягти такого ж рівня і у себе. Вектор розвитку України мені імпонує.

Швидкість, звичайно, могла бути і більше, але хоч не назад йдемо. Все у нас буде добре. Колись :)

Про майбутнє.Останні роки показали, що найнеймовірніші сценарії цілком можливі, тому я допускаю, що коли-небудь все ж переїду. Причиною може стати погіршення політичної чи економічної ситуації, соціальні напруги, які неминучі після приходу до влади популістів.

Або якщо раптом надійде пропозиція мрії — не знаю, як вона має виглядати, але я точно зрозумію, що це вона.

Зеновій Верес, Solution Architect в SoftServe, викладач НУ «ЛП»

Мені ніколи не пропонували офер з переїздом. Мабуть тому, що я не розглядав це як реальну опцію. А, як відомо, під лежачий камінь вода не тече.

Що тримає в Україні?Робота айтішника практично однакова як в аутсорсинговій, так і в продуктовій компанії чи стартапі. Є певні задачі, які ми вирішуємо за допомогою програмування. Зараз я працюю із кінцевими замовниками і маю можливість побачити результати своєї роботи.

Інший аспект: тут є набагато більше можливостей реалізувати свої ідеї. Зокрема, є можливість втілювати зміни в освіті. Під крилом Львівського ІТ кластеру вдалось запустити вже 9 інноваційних програм. Користуючись нагодою не можу не запитати: можливо, серед читачів є бажаючі долучитись до освітніх ініціатив в ролі ментора студентських команд?

Про плюси і мінуси нашої країни.Мені не подобається відсутність відповідальності. Точніше, зашкалююча безвідповідальність. Надзвичайно дивують очікування доброго чарівника, який прийде і зробить все добре.

Не подобається модель поведінки «щоб все було чесно, але кум міг порішати». Наприклад, корупція в школах, університетах та лікарнях, яку більшість вперто не зауважує.

Також іноді здається, що наше суспільство бачить всюди тільки «зраду».

Проте, я оптиміст. Я бачу, як відновлюється армія. Спостерігаю, в яких умовах працюють патрульні. Я бачу людей, які навчають студентів на волонтерських засадах. Я бачу очі студентів. Ні, не так. Я бачу запал і вогонь в їхніх очах, бажання реалізувати свою мрію. Це окрилює і надає мені драйву в ті моменти, коли хочеться опустити руки :)

Про розвиток Укрїни.Все залежить від виборів наступного року. Популізм може легко зруйнувати хиткий баланс в нашому суспільстві і відкотити всі зміни, котрі відбулись за останні чотири роки. Це спровокує посилення еміграції.

Про майбутнє. Ніколи не кажи «ніколи». На даний момент у мене таких думок немає. Хоча мені було би цікаво працювати з канадськими замовниками :)


Product Management дайджест #5: правильные роадмапы, эффект Рингельмана и лучшие доклады с Mind the Product SF

$
0
0

Всем привет, меня зовут Саша Емельянов, я Product Manager в MacPaw.

В этом выпуске: как привлекать инвестиции в стартап, о ментальных моделях в продакт менеджменте и что такое Customer Sentiment Analysis.

Почитать

Хорошая, честная статья о том, как привлекать инвестиции в стартап. Если коротко — почти никак.

Говорят, ни один роадмап в мире не был точным. Следующая статья о построении правильных роадмапов и управлении ожиданиями кастомеровпомогает нам понять, как минимизировать вероятность факапа.

Эффект Рингельмана, или Почему большие команды менее продуктивны, чем маленькие?Ответ в статье.

Разбор онбординг флоу крупных продуктов (Facebook, Twitter, Linkedin, Reddit etc.) с картинками.

Как всегда отличная статья Brandon Chu из Shopify о ментальных моделях в продакт менеджменте.

Довольно противоречивая статья с названием «Stop ‘delivering’ software with Agile — it doesn’t work». Однозначно стоит внимания, хотя я и не согласен с автором на 100%.

История о James Everingham (Head of Engineering в Instagram) и его подходе к созданию прозрачности в компании.

Что такое Customer Sentiment Analysisи как его использовать в своих продуктах, нам рассказывает блог Apptentive.

Послушать

Русскоязычный подкаст о создании USP. Ничего принципиально нового, но в пробке по дороге на работу может пригодиться.

Интервью с Nick Caldwell, VP of Engineering в Reddit о разнице между менеджментом и лидерством и формировании команд разработки.

Еще одно интервью подкаста Intercom с Lili Cheng из Майкрософт об AI, истории чатов, чат-ботах и making bots human (без again).

Посмотреть

В июле 2018 года в Сан-Франциско прошла одна из лучших продуктовых конференций — Mind the Product, на которой мне удалось побывать. Ниже список докладов, которые лично мне показались интересными:

Christina Wodtke говорила о командной работе. Было интересно и полезно.

Один из лучших докладов конференции под названием «Quantifying Qualitative Research»от Amplitude.

Синди Альварес из Microsoft рассказывала много очевидных вещей о кастдеве, приводила в пример confirmation bias (ищем факты, подтверждающие свою правоту), survivorship bias (вы точно знаете эту историю о самолётах, которые не долетели), social desirability bias и так далее. Видео здесь.

Лучшее с Product Hunt

Heroes Jobs — Instagram stories для поиска работы. Отвечайте рекрутерам с помощью видео-историй.

Make My Persona — бесплатный генератор user personas.

Handsome Illustrations — потрясающий генератор иллюстраций для сайтов и приложений.

Custom Bots by Intercom — обещанная революция в мире онлайн бизнеса. Любые боты для любого бизнеса без написания кода, звучит здорово, правда?

ResumeMaker.Online — абсолютно бесплатная тулза для создания и оформления резюме. Когда-то пригодится.

Plutio — приложение для управления малым/фриланс бизнесом.

#30DayStartup — пособие по созданию стартапа за 30 дней. Стартап вы, конечно же, не запустите, но набор знаний пригодится новичкам.


Спасибо, что дочитали до конца. Увидимся через месяц!

Подписывайтесь на мой канал в Telegram «Продуктология», там я делюсь интересными материалами об управлении продуктами и не только.


← Предыдущий выпуск: Product Management дайджест #4

Релокация в американскую глубинку: мои 4 года в Висконсине

$
0
0

На DOU народ часто любит писать отчеты «как я переехал в Долину», или NY, или еще какой-то элитный IT location. Но Штаты большие, и не Долиной единой живет американское IT. Не знаю, повезло мне меньше или больше, но я переехал в город Уоууотоса (Wauwatosa), штат Висконсин. В этой статье расскажу, какая там жизнь и работа, как найти круг общения, какие затраты и насколько комфортно жить.

Что вам приходит на ум при слове Висконсин? Если бы вам пришлось туда переезжать, наверное, вы бы сразу открыли карту и начали судорожно искать, где находится этот штат и есть ли там люди. У вас в голове появилась бы такая же картинка, как справа... И это отчасти правда :)

Такое же впечатление было и у моей жены: «Куда? В Висконсин? А это вообще где? Да ну его... Нам и в Киеве хорошо. А там, наверное, снег, медведи и вооруженные rednecks». Но в августе 2014 года мы все-таки переехали в Tosa с планом пожить год, подучить язык и дальше уже решать, что делать.

Note.Сразу скажу, что жена в первый год хотела вернуться домой, и мне таки пришлось ее отправить раз домой. Позже она приехала снова, нашла тут работу, друзей, начала учить язык. Мы поездили по всему штату, да и по всей Америке тоже. Через два года она сказала, что домой мы больше не поедем. А через три сказала: «Делай что хочешь, но в Украину я не вернусь».

Итак, пройдемся по пунктам.

Жизнь в целом

Если вы не были в США или были только в больших городах, то, скорее всего, удивитесь, узнав, что городов-миллионников в стране не так уж много. Население очень сильно распределено по территории. США — в 99% это не NY, LA или любой другой мегаполис. США — это одноэтажная страна. Куда бы вы ни приехали, вы увидите практически такие же дороги, магазины, дома, как и везде. Просто стоимость жизнь будет отличаться, работы будет больше или меньше. В Висконсине так же: все, что есть где-либо еще, есть и тут. Но...

Климат

Это, наверное, первое, что волнует всех. Климат в Висконсине очень похож на климат Украины, и вы вряд ли вы заметите отличия. Здесь такие же сезоны, но весна очень короткая и до мая довольно холодно, а потом в течение двух недель все расцветает и все начинают ходить в шортах, футболках, и жизнь наполняется красками. Тут, правда, и в мороз можно увидеть кого-то в шортах, а когда солнце выходит — так вообще все вылезают из своих нор. Лето довольно жаркое — я люблю его меньше всего. Влажность высокая, что не очень приятно. А вот осень очень красивая: я не видел осень в Вермонте или Канаде, но думаю очень похоже.






IT

В целом рынок IT в Висконсине небольшой, что и понятно. Вакансии есть, но в технологическом плане компании отстают от общих тредов. И старпап-культуры тут, по сути, нет. В основном здесь enterprise со всеми его негативными и положительными характеристиками. Но IT-комьюнити очень дружное. Есть University of Wisconsin-Milwaukee и частный Marquette University, который готовит довольно большое количество студентов в том числе и в IT. Вряд ли кто-то знает, что Сатья Наделла, CEO в Microsoft, закончил UWM.

За 4 года, помимо своего основного направления .NET, я также успел попрограммировать на Elixit, Angular, React, React Native, D, Rust и Go. А еще успел поиграться c MS HoloLens, Xamarin, потусить с ребятами из NSCoder и попробовать Swift. Могу сказать, что лично я прирос к NSCoder и ребятами из RokkinCat, где мне удалось сравнить Go и Elixir. В Elixir я так и не прижился: все, что близко к Ruby, мне не нравится.

При желании вы спокойно можете найти IT-комьюнити в Висконсине. Учитывая загрузку на основной работе, этого хватает. Если у вас душа лежит что-то делать руками, за $40 месячных взносов можно присоединиться к Milwaukee Makespace. У ребят есть 3D принтеры, токарные и фрезерные станки. Они проводят курсы и вообще многому учат.

Расходы

В целом стоимость жизни не такая высокая. Расходы в первые три месяца у нас составили $1085 / $20135 / $4650. Потом все вышло примерно на средний уровень. А для начала нужно готовить «кубышку».

Дальше просто приведу наши средние расходы за каждый год. В год у нас на семью из двух человек уходило порядка $40K.

Средние расходы в месяц (в долларах)

ГодПродукты, бытПитание на работеMobileТранспорт, автомобильСпорт, оборудованиеРазвлечения, подаркиОтдых, поездкиАренда, ком. платежи, интернетОдежда
2014 1515.136.4077.723462.9955.90174.58108.23676.02187.91
2015821.2113.1155.16169.62405.24324.09884.64779.75141.43
2016675.521.4449.94146.05175.74527.02655.22795.41198.92
20171012.558.7453.34171.13165.39401.84597.09842.8676.23

Понятно, что в первый год затраты большие: это и машина, и мебель, и задаток за аренду. Потом они стабилизируются. К сожалению, не могу привести стоимость жизни с ребенком, так как пока у меня нет статистики за 2018 год. Но по первым месяцам этого года вижу, что расходы выросли на 10-15%.С учетом того, что мы стали меньше путешествовать :( DayCare будет стоить где-то $300 в неделю для полуторагодовалого ребенка. Если ваша жена не работает, то дешевле оставить малыша с ней. Но лучше отдать в группу — так ребенок быстрее социализируется.

Основные затраты — это питание и все, что связано с бытом и арендой. Мы закупаемся на неделю основными продуктам, а потом докупаем в течение недели по мере необходимости. Средний чек — $100-150. Мы готовим дома, и даже не потому, что это дешевле, а просто потому что еда в ресторане содержит большое количество углеводов и довольно сытная. Поэтому мы решили ежедневно готовить дома, а на выходных куда-то выбираться поесть.

Аренда — это также основная статья расходов. Первый год мы снимали 1BR в районе $700 (+ коммунальные $50) с отапливаемым гаражом. А в конце 2017 года переехали в 2BR (дом, верхний дуплекс) и платили $850 (+ коммунальные $120).

Еще одна большая статья расходов — страховка.

  • Dental: 2 взрослых — $48/мес.
  • Health Insurance: 2 взрослых + 1 ребенок — $470/мес.
  • Auto: $380/год — односторонняя (2 водителя). Трафика тут нет, поэтому аварийность низкая. В Чикаго та же самая страховка уже стоила бы $950.

У нас никогда не было проблем с тем, чтобы найти хорошего доктора. Рядом находится Medical College of Wisconsin, и хороших докторов здесь довольно много. Tosa Pediatricsдля ребенка находится в 5 минутах ходьбы.

Школы также имеют высокие рейтинги, особенно в Brookfield или Elm Grove.

Местные жители и украинское комьюнити

Так сложилось, что клиент из компании познакомил нас с ребятами из Тернополя, и они уже нас познакомили со всем украинским комьюнити в Висконсине. Оно небольшое, но довольно дружное. Люди часто собираются, поэтому все друг друга уже знают. Очень много людей с Западной Украины.

Местное население довольно приветливое: во время прогулки со мной могут поздороваться, подойти поговорить о ребенке. Не могу сказать, что мы где-то встретили негатив. Понятно, что незнание языка или акцент добавляют сложности. Но если у вас есть дети или вы активно чем-то занимаетесь и при этом не боитесь общаться, то свой круг знакомых вы найдете. Могу сказать, что жена у меня быстрее нашла круг общения с плохим английским, чем я с нормальным. Если вы открыты, люди будут к вам отзывчивыми.

На работе, скорее всего, вы не заведете друзей. В моем случае это было связно с тем, что я работал по контракту у клиента и, по сути, была конкуренция между командами. Это накладывало свой отпечаток на само содержание разговоров: вы не может быть полностью откровенными с коллегами, часто должны защищать свои интересы, при этом показывать высокую производительность. Поэтому работа в моем случае — не то место, где можно завести друзей.

Спорт и активности

Я люблю кататься на велосипеде. Не могу сказать, что трейлов очень много, но в целом я могу спокойно наездить в выходной день 100 — 120 км, иногда останавливаясь только на перекрестках.

Зимой можно покататься на лыжах и сноубордах — есть много локальных каталок. Также можно найти йогу. Всегда открыт теннисный корт, стадион с хорошим профессиональным покрытием.

Я лично прирос к Badger Crossfit. Стоимость занятий 3 раза в неделю — $130 в месяц.

Очень много людей бегают, катаются на велосипедах и вообще делают бог знает что. Зимой, например, мы видели серферов на озере Мичиган.




Развлечения и культурная жизнь

Рестораны и другие общепиты в Висконсине есть, но я не могу сказать, что разнообразие очень большое. Но из-за того, что в ресторанах сидят в основном местные, качество отличное при довольно низких ценах. Средний счет у нас — около $50 за двоих. Самый дорогой был около $250, но это мы праздновали в Harbor Houseкакую-то годовщину. Кухня есть любая — китайская, гавайская, американская, индийская, итальянская, японская, тайская и т. д. Но вот украинской нет.

Летом проходит большой музыкальный фестиваль Summer Fest, авиашоу в Милуоки c участием Blue Angels и чуть севернее в Oshkosh — с более мелкими самолетами.

Поехать стоит в Door County или дальше на север штата — в Superior. Я бы очень рекомендовал прокатиться на Mackinac Island и остановиться там на пару дней — очень позитивное место. Еще из достопримечательностей — House on the Rock, и Holy Hillsместо довольно необычное.

Про Harley Davidson, думаю, говорить не стоит. По крайней мере в музей нужно попасть.

Из мелкого — куча ярмарок, farmers markets, локальные фестивали, beer gardens и много всего остального. У нас в Tosa каждую среду летом приезжали местные рок-группы. Для практики английского и для пробы пива очень полезно.









Еще советую рыбалку в Port Washington или просто погулять по городку. Запад штата, начиная от Мэдисон и до границы с Айова, мало интересен и больше соответствует картинке в самом верху. Не то, чтобы там ничего нет кроме кукурузы, — люди там забавные и душевные. Но все-таки это американская деревня.

Выводы

Не могу сказать, что сильно прирос к Висконсину, но и плохого тоже ничего припомнить не могу. Я бы даже сказал, что остался бы здесь жить. В основном из-за отношения людей и темпа жизни. Это как вырваться из города в хорошую комфортную деревню, где тихо, мирно, природа, речка, и ты отдыхаешь от всего.

А пока мы переезжаем в Сиэтл. После 3-6месяцев жизни там напишу сравнительный анализ.

Junior дайджест: курси, стажування, вакансії. Вересень’18

$
0
0

До вашої уваги дайджест навчальних програм для тих, хто починає свою кар’єру в ІТ. У цьому номері зібрані можливості, актуальні у вересні 2018. Усі програми безкоштовні.

Якщо ви маєте інформацію про інші вакансії для початківців, безкоштовні курси/стажування, яких немає в дайджесті, пишіть на alyona@dou.ua, і ми додамо їх до статті.

Підписуйтеся на наш Telegram-канал, щоб дізнаватися про найактуальніші можливості для джуніорів. Туди ми надсилаємо сповіщення про оновлення дайджесту, нові курси, стажування та вакансії.

КомпаніяМістоНапрям, дедлайнТип
AltexSoftКременчук.NET, Xamarin — 3 вересняКурси
AprioritДніпроС++ — 31 серпняКурси
EPAMКиїв, Львів, Харків, Вінниця

Київ:
Java — 29 серпня
QA — 17 вересня

Львів:
Drupal — 14 вересня
Interface Design — 2 вересня

Харків:
Software Testing Introduction — 10 вересня
DevOps — 20 жовтня

Вінниця:
Frontend — 7 вересня

Курси
NetcrackerСуми, Київ

Суми:
Java — 7 вересня, TA — 22 вересня, QA — 29 вересня

Київ:
Java — 9 вересня

Курси
NIX Solutions LtdХарківJava, Linux Administration / DevOpsКурси
QATestLabonline

«Основи тестування ПЗ» — 25 вересня

«Основи тестування ігор» — 27 вересня

«Основи автоматизації тестування web-додатків» — 23 жовтня
Курси
RubyGarageДніпроRuby / Ruby on Rails — 15 вересняКурси
SoftServeЛьвів, Київ, Рівне, Дніпро, Івано-Франківськ, Чернівці, ХарківWebUI, Test Automation, QC, .NET, DevOps, Python, Java, Golang, Database DevelopmentКурси
TEAM InternationalХарківQA — 7 вересняКурси
AMC BridgeДніпро, Суми, Хмельницький, ЧернівціC++, C#, web services, Front-end — на постійній основіСтажування
B2B SoftКиївQA — 31 серпняСтажування
БАКОТЕККиївInformation securityСтажування
CHI SoftwareХарківPHP (Wordpress)Стажування
DataArtХарківQA, Java, JavaScript, .NET, UI DesignСтажування
groupBWTЗапоріжжяPHP, Python — на постійній основіСтажування
Quality Assurance GroupЛьвівQA — на постійній основіСтажування
Sigma Software UniversityХарків, Львів, Одеса

Львів:
Project Managment, QA — 21 вересня

Харків:
QA, JavaScript — 21 вересня
Android — 28 вересня
DevOps, PHP — 17 вересня

Одеса:
JavaScript — 24 вересня

Стажування
Sirin SoftwareКиївEmbedded Linux — 20 вересняСтажування
VRG SoftДніпроAndroid — початок вересняСтажування
WixДніпроJavaScript — на постійній основіСтажування
DevelopExКиївSystem AdministrationРобота
InteticsКиїв, Харків, ЛьвівФункціональне програмуванняРобота
JustCodedХарківFront-endРобота
SMART businessКиївCRM Developer (С#, .NET)Робота
SimCorp UkraineКиївSoftware developmentРобота

AltexSoft

Напрям:курси .NET, Xamarin.
Місто:Кременчук.
Дедлайн подачі заявок: 3 вересня.

Вимоги до кандидатів:

  • знання англійської Pre-Intermediate та вище;
  • базові знання: С#/.NET/SQL.

Як потрапити:подати заявку на сайті.

Умови:курси проходять на базі КрНУ, викладають розробники з компанії, заняття проходять 3-4рази на тиждень у вечірній час або суботу. Курс складається з теоретичного матеріалу, практичної розробки та колективного проекту. Відбір у компанію відбувається наприкінці курсу на основі захисту проекту, технічної та HR-співбесід.

Деталі:на сайтіабо пишіть на пошту lab@altexsoft.com.

Apriorit

Напрям:курси С++.
Місто:Дніпро.
Дедлайн подачі заявок: 31 серпня.

Вимоги до кандидатів:

  • необхідно знати мову С ++ в рамках навчальної програми (а саме, 1. Базові знання С++: типи данних, керуючі конструкції, класи, робота за пам’яттю. 2. Алгоритми: масиви, списки, дерево, алгоритми вставки, видалення, сортування);
  • володіти англійською мовою на середньому рівні.

Як потрапити:надіслати резюме за адресою courses@apriorit.com (обов’язково вкажіть контактний телефон), пройти вступне тестування.

Умови:курси проходять в офісі компанії три рази на тиждень у другій половині дня. Викладають і консультують провідні фахівці з даного напряму. Програма навчання складається з двох частин: лекції і практичні домашні завдання. Кожен студент має можливість взяти участь в реальному проекті. Кращим студентам буде запропоновано працевлаштування. Після закінчення курсів кожен студент отримує сертифікат з переліком вивчених тем.

Деталі:на сайті.

EPAM

Тип:курси.
Місто:Київ, Львів, Харків, Вінниця.

Напрями та дедлайни подачі заявок:

Київ:

  • Java — 29 серпня;
  • QA — 17 вересня.

Львів:

Харків:

Вінниця:

Як потрапити:зареєструватися на сайтіта пройти тест. Тестування включає технічний комп’ютерний тест та перевірку рівня знань англійської мови. Співбесіда з рекрутером.

Умови:зовнішні заняття (до 3 місяців), Pre-Production лабораторія (від 3 до 6 місяців). Після закінчення навчання найкращі випускники отримають можливість продовжити співпрацю з компанією.

Netcracker

Напрям:курси QA, TA, Java.
Місто:Суми, Київ
Дедлайн подачі заявок:Суми: Java — 7 вересня, TA — 22 вересня, QA — 29 вересня; Київ: Java — 9 вересня.

Вимоги до кандидатів:

Суми

Java

  • вища або незакінченна вища освіта;
  • знання ООП;
  • досвід програмування будь-якою мовою;
  • знання баз даних.

ТА

  • вища або незакінченна вища освіта;
  • бажане знання ООП;
  • досвід програмування будь-якою мовою;
  • знання баз даних;
  • базові знання HTML, CSS.

QA

  • вища або незакінчена вища освіта;
  • розвинена логіка, аналітичні та базові математичні здібності;
  • основи SQL;
  • основи телекому.

Київ

Java

  • Студенти 3-6курсів технічних спеціальностей;
  • Розуміння основних принципів ООП;
  • Основи баз даних;
  • Англійська мова pre-intermediate і вище.

Як потрапити:

Суми:заповнити анкету на сайті, пройти технічне тестування та тестування на знання англійської мови. Успішних кандидатів запросять на співбесіду з HR спеціалістами.

Київ:зареєструватися на сайтіта заповнити анкету в період з 3.09 по 9.09. Відбір у 2 етапи: 1. Конкурс анкет. 2. Особисті співбесіди: загальна та технічна.

Умови:

Суми:тривалість навчання QA та ТА — від 2 до 3 місяців. Після закінчення можливе працевлаштування в компанії. Тривалість навчання Java — від 9 до 10 місяців. Після закінчення можливе працевлаштування або стажування в компанії.

Київ:Навчання безкоштовне (стипендій теж немає). Тривалість курсів — близько 5.5 місяців, з жовтя по квітень, у січні перерва на новорічні свята і сесію. Теоретичний курс складається із лекцій і практичних занять із професійними викладачами на території КПІ (18 корпус, ФІВТ). Розклад занять складається після узгодження із групою, зазвичай це друга половина дня після пар або вечір 2-3рази на тиждень. Після закінчення теоретичного курсу студентам пропонують навчальний проект тривалістю 6 тижнів із провідними розробниками компанії в ролі наставників. За результатами роботи на проекті і його захисту, кращих студентів запрошують на роботу.

Деталі:на сайті для Сум, для Києва.

NIX Solutions Ltd

Напрям:курси.
Місто:Харків.

Вимоги до кандидатів:

Як потрапити:подати резюме на сайті, пройти тестування в офісі або ВНЗ, пройти співбесіду.

Умови:Навчання Java триває 5 місяців 2 рази на тижень по кілька годин у вечірній час. Початок — у вересні. Навчання Linux Administration / DevOps триває 6-8 тижнів,по 2 рази на тиждень в офісі компанії. Початок навчання серпень/вересень.

Деталі:пишіть на пошту education@nixsolutions.com.

SoftServe

Тип:курси.
Місто:Рівне, Львів, Київ, Івано-Франківськ, Дніпро, Чернівці, Харків.

Напрям та дедлайн подачі заявок:

  • WebUI Development: Дніпро — 31 серпня, Чернівці — 10 вересня, Харків — 18 вересня, Львів — 29 вересня, Івано-Франківськ — 15 жотвня;
  • Test Automation: Львів (Java) — 3 вересня, Рівне (.NET) — 14 вересня, Рівне (Python) — 20 вересня, Дніпро (Java) — 1 жовтня, Чернівці (Python) — 1 жовтня, Чернівці (Java) — 22 жовтня;
  • QC: Чернівці — 3 вересня, Львів — 19 вересня, Дніпро, Київ — 1 жовтня, Івано-Франківськ — 16 жовтня;
  • .NET: Чернівці — 10 вересня, Рівне — 14 вересня, Дніпро — 1 жовтня;
  • Database Development : Львів — 14 вересня;
  • DevOps: Дніпро — 14 вересня, Київ — 24 вересня, Львів — 27 вересня, Чернівці — 15 жовтня;
  • Java : Івано-Франківськ — 25 вересня, Дніпро — 28 вересня, Харків — 25 жовтня;
  • WebUI/Ruby Development: Івано-Франківськ — 18 вересня;
  • Golang Development: Дніпро — 20 вересня.

Вимоги до кандидатів:

  • рівень англійської Intermediate+;
  • студенти дотичних напрямків 2-йкурс і вище;
  • готовність до насиченої роботи.

Як потрапити:заповнити заявку на сайті, пройти технічне тестування і тест на знання англійської мови, пройти співбесіду.

TEAM International

Напрям: QA.
Місто:Харків.
Дедлайн подачі заявок: 7 вересня.

Вимоги до кандидатів:

  • Базові навички програмування;
  • Рівень англійської — intermediate;
  • 4 курс і вище.

Як потрапити:заповнити формуабо написати natalia.sorokopud@teaminternational.com. Заявки приймаються до 7 вересня.

Умови: 2 рази на тиждень, о 15.15, викладачі — досвідчені інженери з тестування компанії TEAM International, курс починається 10-говересня, закінчується в кінці грудня. Курс безкоштовний, по закінченню кращі випускники курса будуть запрошені на співбесіду до компанії

Деталі:на​ сайті.

QATestLab

Напрям:онлайн-курси QA.
Дедлайн подачі заявок:реєстрація відбувається постійно. «Основи тестування ПЗ» — старт 25 вересня, «Основи автоматизації тестування web-додатків» — старт 723 жовтня, «Основи тестування ігор» — старт 27 вересня.

Вимоги до кандидатів:навчатися можуть усі охочі. Для проходження курсів з тестування ігор та автоматизації тестування web-додатків необхідно мати навички базові навички тестування.

Як потрапити:подати заявкута скласти тест, що включає в себе питання на рівень логічного мислення, знання англійської мови та володіння ПК.

Умови:викладачi курсів — QAEngineers компанії QA TestLab. Формат навчання: онлайн. Тривалість курсів — від 3 до 5 тижнів. Курси включають в себе лекції, що проводяться через систему GoToWebinar двічі на тиждень, практичні домашні завдання та підсумковий іспит.

Деталі:на сайті.

RubyGarage

Напрям:курси Ruby / Ruby on Rails.
Місто:Дніпро.
Дедлайн подачі заявок: 15 вересня.

Вимоги до кандидатів:

  • базові знання HTML, CSS, JavaScript та мінімальний досвід роботи з цими технологіями;
  • знання базових принципів роботи баз даних і мови SQL;
  • розуміння об’єктно-орієнтованої парадигми програмування;
  • знайомство з однією з серверних мов програмування (PHP, Java, С ++ / С #, Python...);
  • технічна англійська на рівні читання документації.

Як потрапити:заповнити заявку на сайті, виконати тестове завдання, пройти співбесіду.

Умови:тривалість курсу становить 4-6 місяців.Навчання проходить два рази на тиждень у вечірній час. По закінченні студенти складають випускний іспит. Після успішного проходження курсу — можливе працевлаштування у компанії.

Деталі:на сайтіабо пишіть на пошту railscourses@rubygarage.org.

AMC Bridge

Напрям:стажування C++, C#, web services, Front-end.
Місто:Дніпро, Суми, Хмельницький, Чернівці.
Дедлайн подачі заявок:немає.

Вимоги до кандидатів:студенти 3-6-го курсів технічних спеціальностей вищих навчальних закладів. Термін стажування повинен збігатися з навчальним планом ВНЗ.

Як потрапити:надіслати резюме на пошту contacts@amcbridge.com, виконати тестове завдання та пройти співбесіду із HR-менеджером, технічним інтерв’юером та директором дослідницького підрозділу компанії.

Умови:стажування являє собою роботу на одному з проектів у внутрішньому дослідницькому підрозділі компанії строком на 1 місяць з тижневою зайнятістю 40 годин. Залежно від результатів стажування, студента може бути рекомендовано до прийняття на роботу в компанію.

Деталі:на сайтіабо пишіть на пошту contacts@amcbridge.comчи телефонуйте 068-406-90-16,066-977-47-99.

B2B Soft

Напрям:стажування QA.
Місто:Київ.
Дедлайн подачі заявок: 31 серпня.

Вимоги до кандидатів:

  • знання принципів та методів ведення QA документації;
  • досвід роботи з Windows;
  • знання web-based архітектури додатків;
  • володіння англійською мовою;
  • буде плюсом: півроку досвіду роботи QA, вища технічна освіта, Jira, знання SQL.

Як потрапити:відправити своє резюме на пошту ekaschuk@b2bsoft.comз відміткою інтернатура.

Умови:орієнтовна тривалість — 3 місяці (оплачується). Після вдалого проходження контракт продовжується.

Деталі:пишіть на пошту ekaschuk@b2bsoft.com.

БАКОТЕК

Напрям:стажування Information security.

Місто:Київ.

Дедлайн подачі заявок:немає.

Вимоги до кандидатів:

  • студенти 5-6курсів та випускники технічних спеціальностей;
  • знання серверної частини Windows (MS AD, DNS, DHCP);
  • навички використання середовища віртуалізації: VMware та / або Hyper-V;
  • знання основ комп’ютерних мереж;
  • англійська: Intermidiate+;
  • готовність навчатися інтенсивно.

Як потрапити:надіслати резюме з поміткою «Стажування з DOU» на пошту Tetiana.Gnidets@bakotech.com, пройти співбесіду в офісі, виконати тестове завдання.

Умови:програма розрахована на 3 місяці з можливістю подальшого працевлаштування. Стажування проходить в офісі, 40 годин на тиждень. Можливий індивідуальний графік (20 годин на тиждень) для поєднання з навчанням. Програма включає практичні завдання, вивчення рішень інформаційної безпеки під керівництвом спеціалістів відділу. Стажування передбачає помісячну оплату.

Деталі:Tetiana.Gnidets@bakotech.com, 067-51-68-487.

groupBWT

Напрям:стажування PHP, Python.
Місто:Запоріжжя.
Дедлайн подачі заявок:стажування відкрите на постійній основі.

Вимоги до кандидатів:

  • студенти 3-5курсів та випускники технічних спеціальностей;
  • базові теоретичні знання програмування;
  • готовність навчатися інтенсивно.

Як потрапити:заповнити анкету, пройти телефонне інтерв’ю, виконати тестове завдання, пройти співбесіду в офісі.

Умови:програма розрахована на 3 місяці с можливістю подальшого працевлаштування. Стажування проходить в офісі 40 годин на тиждень. Можливий індивідуальний графік для поєднання з навчанням у виші. У разі успішного виконання практичних завдань кандидат отримуватиме стипендію. Це не навчання, а стажування, тому теорію, якої не вистачатиме, необхідно буде освоювати самостійно. На стажуванні основний акцент робиться на PHP, Laravel, Python, методи збору і обробки даних (парсери). Крім того, кандидат навчиться працювати в команді, користуватися інструментами розробки та системами ведення проектів, ефективно використовувати свій робочий час.

Деталі:на сайті.

Sigma Software University

Тип:стажування.

Вимоги до кандидатів та дедлайни:

  • Project Management : Львів — 21 вересня;
  • QA: Львів — 21 вересня;
  • JavaScript: Одеса — 24 вересня;
  • JavaScript: Харків — 21 вересня;
  • DevOps: Харків — 17 вересня;
  • Android: Харків — 28 вересня;
  • PHP: Харків — 17 вересня;
  • QA: Харків — 17 вересня.

Як потрапити:заповнити реєстраційну форму на сайті (у відповідному розділі) та додати резюме.

Умови:тривалість стажування від 3 до 6 місяців залежно від напряму; повний робочий день.

Sirin Software

Напрям:стажування Embedded Linux.
Місто:Київ.
Дедлайн подачі заявок: 20 вересня.

Вимоги до кандидатів:

  • знання англійської на рівні upper-intemediate і вище;
  • дистрибутив Linux — Ваша основна ОС;
  • знання будь-якої мови программування на високому рівні, краще C, Python, bash.

Як потрапити:надіслати заявку на пошту vsemenov@toweriqua.com.

Умови:орієнтовна тривалість — 4 місяці (оплачується). Після вдалого проходження контракт продовжується.

Деталі:пишіть на пошту vsemenov@toweriqua.com.

VRG Soft

Напрям:стажування Android.
Місто:Дніпро.
Дедлайн подачі заявок:початок вересня.

Вимоги до кандидатів:

  • базові знання Java;
  • розуміння принципів ООП;
  • базове розуміння REST і роботи з БД.

Як потрапити:надіслати резюме на hellovrgsoft@gmail.com.

Умови:під час стажування кандидати навчаться створювати нетривіальний UI та анімацію, розбиратися в різних архітектурах мобільних додатків, писати додатки будь-якої складності. Тривалість стажування — 3 місяці. За його результатами найкращим кандидатам запропонують працевлаштування.

Деталі:пишіть на пошту hellovrgsoft@gmail.com.

CHI Software

Напрям:стажування PHP (Wordpress).
Місто:Харків.

Вимоги до кандидатів:

  • знання англійської мови на рівні Intermediate або вище;
  • знання основ ООП;
  • добре знання native JavaScript, включаючи техніки ООП;
  • розуміння протоколу HTTP, request/response, DNS, full request life cycle;
  • базове знання SQL, розуміння, що таке реляційні та noSQL бази даних.

Як потрапити:відправити CV на сайті, виконати тестове завдання, пройти співбесіду в офісі з технічним фахівцем.

Умови:навчання в інтернатурі відбувається у форматі повноцінної роботи у компанії протягом 3 місяців (повний 8-годиннийробочий день, з понеділка по п’ятницю, гнучкий графік). За період навчання в інтернатурі кандидати будуть отримувати оплату та зможуть брати участь в усіх заходах, що відбуваються у компанії. Кожному інтерну буде виділений ментор, який буде давати йому завдання, слідкувати за прогресом та проводити код рев’ю.

Деталі:пишіть на пошту careers@chisw.comабо на сайті.

DataArt

Напрям: QA, Java, JavaScript, .NET, UI Design.
Місто:Харків.
Дедлайн подачі заявок:немає.

Вимоги до кандидатів:

  • базові знання за обраним напрямком;
  • володіння розмовною англійською.

Як потрапити:надіслати резюме на hr@dataart.com, пройти співбесіду англійською, а також технічну з ментором.

Умови:тривалість програми — близько 3 місяців. Практика оплачується, потрібно бути в офісі повний робочий день. На весь період за практикантом закріплюють ментора. Після успішного завершення програми практикант стає junior-спеціалістом на проекте.

Деталі:на сайтіабо телефонуйте +380 (57) 766-7235 , +380 (57) 727-0827.

Quality Assurance Group

Напрям:стажування / виробнича практика QA.
Місто:Львів.
Дедлайн подачі заявок:немає.

Вимоги до кандидатів:курс можуть проходити усі охочі.

Як потрапити:подати заявку, заповнивши анкету, або телефонуйте (099) 376 65 05; (098) 903 64 45.

Умови:стажування повністю присвячене практиці. Студенти працюють з реальними проектами самостійно у групах під керівництвом координатора і таким чином отримують досвід роботи та напрацювання у якості прикладу своїх робіт. Робота проходить з баг-трекінговою системою Jira; Zephyr test management tool, Test Rail, Jmeter ect.

Wix

Напрям:стажування JavaScript.
Місто:Дніпро.
Дедлайн подачі заявок:немає, стажування відкрите на постійній основі.

Вимоги до кандидатів:

  • студенти або ті, хто навчається самостійно;
  • досвід роботи з JavaScript;
  • знання IT-середовища, систем, інфраструктури;
  • розвинені навички комунікації, організації, вирішення проблем, аналітичного мислення;
  • перевагою буде вища освіта за IT-напрямом.

Як потрапити:подати резюме на сайті.

Умови:стажування оплачуване, триває 6 місяців. Із допомогою менторів кандидати працюватимуть над новим продуктом компанії — Wix Code.

Деталі:на сайті.

DevelopEx

Напрям:робота System Administrator Assistant
Місто:Київ.

Вимоги до кандидатів:

  • базові знання архітектури комп’ютерних систем;
  • базові знання комп’ютерних мереж;
  • знання операційної системи Windows / Linux;
  • хороші комунікативні навички.

Як потрапити:подати резюме на сайті.

Умови:зручний графік.
Деталі:на сайті.

Intetics

Напрям:робота — функціональне програмування.
Місто:Київ, Харків, Львів.

Вимоги до кандидатів:

  • вміти виконувати алгоритмічні задачі;
  • знати хоча б одну мову програмування;
  • любити алгоритми (або нестандартні задачі);
  • англійська рівня Intermediate та вище.

Як потрапити:надішліть резюме на сайті, отримайте тестове завдання і виконайте його, поспілкуйтеся з рекрутером, виконайте друге тестове завдання в офісі.

Умови:на самому початку роботи у вас буде вступний період, протягом якого ви вивчите нову функціональну мову / нові інструменти та ввійдете в проект. Потім зможете виконувати більш складні задачі. Протягом усього навчання за вами буде закріплений ментор. Пропонуємо гнучкий графік роботи, допомогу та супровід, якщо вам потрібно переїхати в інше місто.

Деталі:на сайтіабо пишіть на пошту t.usova@intetics.com.

JustCoded

Напрям:робота Front-end Developer.
Місто:Харків.

Вимоги до кандидатів:

  • рівень англійської не нижче Upper Intermediate;
  • досвід фріланс-розробки / некомерційної розробки;
  • впевнені знання веб-технологій, HTML, CSS;
  • базові знання JavaScript, jQuery;
  • розуміння ООП;
  • хороші комунікативні навички.

Як потрапити:подати резюме на сайті.

Умови:робота під керівництвом досвідченого ментора.

Деталі:на сайті.

SMART business

Напрям:робота CRM Developer (С#, .NET).
Місто:Київ.
Дедлайн подачі заявок: 24 вересня.

Вимоги до кандидатів:

  • вища технічна освіта (студенти 3-6курсів або випускники);
  • навички програмування та розробки програмного забезпечення: базові знання платформ C # та .NET, досвід роботи з JavaScript, HTML, CSS та веб-розробкою;
  • розуміння структури та операцій реляційних баз даних (MySQL, MS SQL);
  • англійська — середній рівень або вище;
  • особисті якості: відповідальність, комунікативність, ініціативність, старанність, здатність швидко засовювати нові знання, зосередженість на результатах та роботі в команді.

Як потрапити:надіслати резюме на сайті.

Умови:передбачений період навчання 4 тижні. З понеділка по п’ятницю, початок о 18:30.

Деталі:на сайтіабо пишіть на пошту hr@smart-it.com.

SimCorp Ukraine

Напрям:робота Software developer.
Місто:Київ.

Вимоги до кандидатів:

  • щонайменше ступінь бакалавра з комп’ютерних наук, інженерії, фізики, математики;
  • зжатність працювати зі складною архітектурою, front і back-end;
  • практичний досвід програмування буде перевагою;
  • відповідальність за рішення, вміння дотримуватися дедлайнів;
  • хороший командний гравець;
  • здатність постійно вчитися;
  • навички спілкування та вільне володіння англійською мовою (розмовна та письмова).

Як потрапити:подати резюме на сайті.

Умови:після успішного завершення випробного терміну кандидат буде працевлаштований у компанії.

Деталі:на сайті.

7 причин жить и работать в Харькове для IT-специалиста

$
0
0

Для многих специалистов в сфере технологий релокация не составляет проблемы, особенно, если они, наконец, нашли вакансию своей мечты. Сам много путешествую, наблюдаю за жизнью в других странах и городах Украины и всегда задаюсь вопросом: «А готов ли я здесь жить»? Безусловно, прочувствовать эйфорию от первых недель проживания на новом месте — это безумно приятно и увлекательно. Но каждый раз, возвращаясь в Харьков из долгих поездок, туристических и не только, лишь здесь я чувствую себя по-настоящему дома. Не потому только, что это мой родной город, но и потому что Харьков действительно удобен.

Вдохновившись похожими материалами о Львовеи Одессе, решил перечислить 7 причин, по которым я вижу Харьков лучшим местом для жизни и работы в IT-индустрии. Почему же этот город может уже примерять звание технологической столицы страны?

1. Инфраструктура Харькова — пример для других городов

Харьков — мегаполис, город-миллионник с быстрым темпом жизни. Однако его транспортная система не перегружена, как в Киеве. Здесь нет таких сумасшедших пробок на дорогах, а в вагонах метро вас не зажмут, как шпроту в банке, даже в час пик. Харьковский наземный транспорт не сравнить со львовским и киевским, а интервалы метро в 3-4минуты дают хороший запас на случай роста пассажиропотока. Из центра до спального района и даже аэропорта можно добраться за 30-40 минут.Также метро не такое глубокое, как в Киеве, поэтому реально за 7 минут проехать с входом/выходом из метро 2-3 станции.Тогда как в столице ты эти 7 минут будешь только спускаться на эскалаторе.

По часовой стрелке: Успенский собор, Нетеченская набережная, Исторический музей, Памятник независимости «Украина, которая летит», Благовещенский собор

В Харькове жизнь не ограничивается центром. Спальные районы, хотя они и называются так, полностью укомплектованы: большие супермаркеты, торгово-развлекательные площадки, кафе и коворкинги.

Источник — «Рейтинг комфортности украинских городов», Фокус

Последний тренд — появляется все больше современных садиков и школ, которые равняются на западные стандарты.

По часовой стрелке: колесо обозрения в парке им. Горького, источник в Саржином яру, стадион «Металлист», ТРЦ «Французский бульвар»

Где бы вы ни жили — везде найдете необходимое недалеко от дома. А если нужно что-то совсем экзотическое — вам прямая дорога в Барабашово — один из самых больших рынков Восточной Европы. Интернет-шоппинг, хоть и удобнее, не дает возможности потрогать вещь в реале, поэтому многие до сих пор ищут товар онлайн, а потом едут выбирать его на рынок.

Спортивная карта Харькова

Для любителей велоспорта Харьков и область представляют собой отличную площадку. И хотя инфраструктура еще выстраивается, а новые велодорожки появляются лишь изредка, город полон маленьких и вовсе не оживленных улочек, по которым можно безопасно передвигаться на велосипеде. Если хорошо изучить карту и запомнить маршруты, можно избегать оживленных магистралей, которые пока что опасные. Можно также кататься за городом, выехав за его пределы снова-таки через неоживленную промзону.

2. Можно жить и в пригороде Харькова

Если вы хотите жить вдалеке от городской суеты, под мегаполисом, ваш выбор — жизнь в небольших городах. Чугуев, Малая Даниловка, Мерефа, Песочин — небольшие города в пределах 30 минут езды на машине. В них тоже развита инфраструктура, а также проведен высокоскоростной интернет. К тому же власти недавно запустили кампанию по восстановлению дорожного покрытия, так что постепенно дороги в области перестают быть похожими на траншеи. Со всех сторон города в пределах 5-10 кмот окружной можно найти приличные коттеджные поселки.

3. Развитое междугороднее и международное сообщение

Поездами за одну ночь из Харькова можно добраться в Киев, Одессу и во Львов. Скоростной экспресс «Интерсити+» курсирует 4 раза в день и довезет вас до столицы за 4,5 часа.

Харьковский аэропорт — самый большой в Восточной Украине, и за 2017 год его пассажиропоток составил более 806 тысяч пассажиров. Прямые рейсы из Харькова доступны в:

  • Батуми (Грузия) — от $129;
  • Варшава (хаб) (Польша) — от $145;
  • Вена (Австрия) — от $25;
  • Дортмунд (Германия) — от $64;
  • Киев (хаб) — от $47;
  • Катовице (Польша) — от $21;
  • Лондон — от $22;
  • Милан (Италия) — от $126;
  • Минск (хаб) (Беларусь) — от $116;
  • Стамбул (хаб) (Турция) — от $92;
  • Тбилиси (Грузия) — от $ 115;
  • Тель-Авив (Израиль) — от $129.

4. В городе сильное IT-сообщество

В Харькове постепенно развилось IT-сообщество, так что вы всегда сможете здесь найти единомышленников, подходящие мероприятия по различным топикам и технологиям, а также прочие активности. Инфраструктуру для этого сообщества формирует, конечно же, Харьковский IT-Кластер, но даже если ваша компания еще не входит в его состав, вы все равно найдете что-то полезное для себя.

К тому же учебные заведения, готовящие IT-специалистов, тоже активно вовлекаются в это коммьюнити, и таким образом вы всегда сможете наладить контакты с ведущими кафедрами и получить доступ к молодым специалистам. Особенно актуально для тех, кто только формирует свою команду и ищет новичков, чтобы их доучить уже под свои запросы.

5. Харьковский рынок IT постоянно растет

Согласно данным DOU, сейчас в городе работают офисы более 300 компаний, 15 крупных с более 200 сотрудников, а также множество небольших фирм с не более чем 25 сотрудников. Более 750 открытых вакансий ждут своих кандидатов прямо сейчас, и это число постоянно растет. По переписи Харьковского IT-кластера компаний даже больше — около 450.

Рынок медленно, но уверенно трансформируется из аутсорсинговой модели в продуктовую. В городе работают уже 17 компаний, продающих программные продукты собственного производства. Также есть R&D-офисы таких гигантов, как Gameloft, Oracle, Plariumи других.

6. В городе развита инновационная среда

Многие успешные стартапы берут начало именно в Харькове. Город становится стартап-центром, где создаются новые известные на всю Украину сервисы:

  • GitLab — система управления репозиториями кода для Git.
  • OnTaxi — «убийца» Uber в Харькове. Uber так и не прижился из-за него.
  • Docsify — инструмент продаж для Gmail.
  • MyCredit — финтех-стартап, система онлайн-кредитования.
  • QuickBlox — backend-платформа для мобильных приложений.
  • Eventor — мобильный гайд для организаторов и участников различных конференций.

Следующей в списке может быть ваша компания, нужно только верить в себя и действовать.

7. Харьковские компании работают с разнообразным стеком технологий

Харьковские компании работают над высокотехнологичными проектами для именитых зарубежных заказчиков, только вот по условиям NDA они не могут распространять детали. Но прямо в нашем городе можно заниматься разработкой искусственного интеллекта, технологий машинного обучения, встраиваемых систем, включая smart cities & health tech, а также работать над созданием виртуальной реальности.

Выводы

На мой взгляд, Харьков — одна из самых недооцененных IT-локаций в Украине. Здесь одни из лучших условий для жизни и работы в IT. И если вы думаете переезжать из небольшого города, обязательно добавьте его в шорт-лист.

P. S. Детальнее про список IT-сообществ, курсов, мерпориятий и вообще преимуществ жизни в Харькове можете прочитать в статье Харьковского IT-Кластера.

DOU Hobby: Robots Against Entropy — инструментальный прогрессив рок со sci-fi настроением

$
0
0

[DOU Hobby — рубрика о нетехнических проектах IT-специалистов: творчество, интересное хобби и другие lifestyle-достижения. Если вам есть о чем рассказать — пишите на valentina@dou.ua]

Юрий Сазонец — ведущий программист в компании «Юджин». Недавно Юрий выпустил музыкальный альбом Robots Against Entropy — инструментальный прогрессив рок/метал. В треках представлено много стилей: классический рок 70-х,прогрессив метал 90-х,элементы джаз-фьюжн, электроники и эмбиента.

Специально для читателей DOU Юрий предоставил полную бесплатную MP3-версию альбома.

— Юра, как вы начали заниматься музыкой?

Родители с самого детства привили мне вкус к хорошей музыке. В доме всегда было фортепиано, и отец часто на нем играл (сейчас он перешел на электроорган). В какой-то момент появился компьютер, на котором, оказывается, очень удобно записывать ноты и тут же слушать, что получается.

В компании друзей научился играть на гитаре. Они же показывали, как с помощью двухкассетного магнитофона накладывать партии одну за другой — такое вот примитивное сведение.

Потом появляется более мощный компьютер и софт, позволяющие записывать звук уже в виде цифровых файлов, обрабатывать его в реальном времени, редактировать, сводить и получать на выходе mp3 с твоей собственной музыкой. Вот так вот шаг за шагом изучал новые вещи и при этом получал огромное удовольствие от всего процесса.

— Когда и как появился проект Robots Against Entropy?

За много лет у меня скопилось несколько демозаписей, которые, как мне показалось, неплохо бы звучали все вместе в формате альбома. Заодно захотелось выйти на более серьезный уровень и выпустить продукт, который — хоть это и хобби — будет выполнен по-настоящему профессионально. С живыми музыкантами, технически вылизанной игрой, профессиональным сведением и мастерингом — и, соответственно, самым современным звуком.

Альбом записан при участии одних из лучших украинских сессионных музыкантов. Клавишные партии в одном из треков исполнил Дерек Шеринян — легендарный американский музыкант, бывший участник группы Dream Theater. Сведение и мастеринг выполнил Макс Мортон — саунд-продюсер, известный не только в Украине, но и за ее пределами.

— Как удалось договориться с ними о сотрудничестве?

Некоторые — просто мои друзья. Барабанщика Сашу Касярума я нашел по его объявлению в интернете. Он же порекомендовал Макса Мортона, хотя Макс и так очень известен в музыкальных кругах.

В сотрудничество с Дереком до сих пор трудно поверить, потому что я давний фанат его творчества — и в составе Dream Theater, и сольных альбомов, и Planet X. Я подписан на его Twitter, в котором он как-то написал, что ищет молодые группы и артистов для сотрудничества. Я набрался наглости и смелости, отправил демо трека Seven — и на следующий день получил ответ: «Hi, this is Derek Sherinian, how can I help you?» Договорились о гонораре, и буквально за пару дней я получил пачку шикарнейших клавишных партий, которые просто преобразили исходный трек.


Трек Seven, клавишные партии в котором исполнил бывший участник группы Dream Theater Дерек Шеринян

Во всех этих случаях, возможно, кроме наглости, помогало наличие довольно подробных демо-версий всех треков. Из них была ясна общая стилистика, структура партий и что вообще требуется сделать. Поэтому с самого начала музыканты могли сразу решить для себя, интересен ли им такой материал в принципе, и если да, тут же приступить к очень предметной работе. Если бы я обращался к людям без таких демо, а только лишь с фразами в духе: «Нууу, я вот хочу сделать трек, чтобы было сначала как у The Prodigy, а потом парам-пам-пам» — думаю, было бы сложнее.

Практически все приглашенные музыканты участвовали за гонорар, потому что являются профессионалами.

— Расскажите про вашу музыку. К какому жанру и стилю себя относите?

То, что записано на этом диске, можно, скорее всего, наиболее кратко охарактеризовать как «инструментальный прогрессив рок/метал». А если развернуто, то там намешано много стилей: классический рок 70-х,прогрессив метал 90-х,элементы джаз-фьюжн, электроники и эмбиента. Кто-то даже нашел там индастриал 80-х.Собственно, все, что я обычно слушаю, и отражается в моей музыке.

Жанр — это не самоцель и не заранее поставленное ТЗ. Это всего лишь инструмент, с помощью которого можно передать определенную эмоцию. И если композиция требует развития в определенном настроении, соответствующий элемент жанровой палитры и будет выбран — будь это трэш-метал, эмбиент или что-то симфоническое.

— А откуда такое название — Robots Against Entropy?

Название пришло, уже когда альбом был практически сведен. Почему Robots Against Entropy? Во-первых, оно не несет абсолютно никакой смысловой нагрузки. Во-вторых, не было занято другой группой. В-третьих, как-то интуитивно подходит к некому sci-fi настроению в музыке.

Музыка в этом альбоме является первичной, и не хотелось добавлять еще какой-то вербализированный смысловой слой. Мне кажется, такой подход дает слушателю свободу не находиться в рамках, заданными текстом или какой-то авторской глубокой мыслью, а просто слушать и чувствовать те эмоции, которые заложены в музыке, какими они бы ни были, на таком, очень абстрактном уровне. Может быть, у кого-то даже возникнут какие-то собственные образы или идеи от прослушивания, это вообще прекрасно.

— Кто ваш слушатель?

Скорее всего, тот, кто разделяет мои музыкальные вкусы: уважает Deep Purple, Uriah Heep, Dream Theater, Liquid Tension Experiment, Devin Townsend, Rammstein и The Prodigy, открыт к восприятию многожанровой музыки. Мой слушатель хорошо относится к музыке, в которой никто не поет, и в целом является ценителем отличного саунда и качественного продакшна.

— Были ли у вас живые выступления? Или альбом доступен только в записи?

Концертов Robots Against Entropy пока не было, но опыт живых выступлений у меня есть. Особенно интересно было сыграть несколько концертов вместе с Черкасским академическим симфоническим оркестром и Cherkasy Jazz Quintet в рамках проекта моего отца. Там в единое целое объединились рок, классика и джаз. Видите, в одном жанре играть довольно скучно :)

— Много ли времени занимает создание музыки и развитие проекта? Как удается соединять хобби и основную работу?

К счастью, современные технологии позволяют упростить многие вещи. Аранжировки можно успешно делать, имея всего лишь один компьютер. Для записи живых электрогитары и баса, кроме инструментов и кабеля, достаточно относительно недорогой звуковой карты. И все это можно делать у себя дома, что, конечно же, экономит время и деньги.

Для записи барабанов и чего-то экзотического, вроде Hammond-органа, а также при реампингегитар и сведении уже нужна подготовленная студия. К счастью, уже изобрели интернет и облачные хранилища, поэтому тратить время на поездки в студию не нужно. Можно просто отправить файлы в любую точку мира профессионалам, которые выполняют всю нужную работу и присылают обратно результат.

Но несмотря на такой вот аутсорсинг, все равно работа над альбомом заняла очень много времени. Основная работа в IT была, конечно же, в приоритете, поэтому альбом продвигался медленно и весь процесс был растянут аж на 4 года.

— С какими трудностями сталкивались, на какие грабли наступали?

Такой масштабный проект я делаю впервые, потому многие моменты недооценил. Например, как только дело дошло до записи гитары, выяснилось, что я даже толком не умею ее правильно настраивать, не говоря уже о том, чтобы попадать там в какие-то доли или ноты, хотя играю далеко не первый год.

Но ничего страшного. Методом проб и ошибок, после вдумчивых тренировок, литров пота, крови и слез получилось записать достойные партии. За некоторые даже испытываю гордость.

Главное в этом деле — заставлять себя выключать вечером сериальчики, вместо них включать метроном и брать в руки гитару. Или открывать Logic и заканчивать аранжировки.

— Как обычно рождаются ваши треки? Как это происходит?

Обычно трек начинается с какой-то идеи — например, гитарного риффа или клавишной партии, которую тут же пытаешься записать, чтобы не забыть. И важный момент: я заметил, что если не начинаешь тут же эту идею развивать, сделать из нее полноценную композицию спустя некоторое время будет очень сложно. Видимо, теряется то настроение, которое побудило к возникновению этой идеи, и развить ее хорошо уже не выходит. Так что лучшие треки выходят, когда получается за один присест написать общую канву от начала до конца.

Мне всегда важно слышать всю аранжировку целиком, поэтому вместе с изначальными идеями на компьютере одновременно набиваю и приблизительные барабанные партии, и басовые, и клавишные — достаточные, чтобы уловить идею и настроение трека. Конечно, сначала все довольно сырое, и поэтому позже начинается длительный итеративный agile-процесс: довожу аранжировки до ума, корректирую партии, добавляю новые слои звука.

Когда дело доходит до записи уже живых музыкантов, то те партии, которые были написаны мной в демо, в результате уже совместной работы превращаются в финальные дорожки, которые передают одновременно и «композиторское видение», и личный взгляд музыканта. И это, кстати, критический нюанс — уметь выключать свое эго и давать простор людям для творчества. Благодаря свежему взгляду со стороны треки тут же приобретают дополнительную глубину. Конечно, это при условии, что вы выбираете правильных музыкантов :) Мне с этим очень повезло, огромное спасибо ребятам!

— Влияет ли как-то музыка на работу в ІТ?

Интересно, что программирование обычно считается точной и очень рациональной наукой, где нужно много сидеть и думать. А музыка — это искусство, порыв чувств, эмоции, интуиция и все такое. И часто эти вещи противопоставляются. Мол, этот парень — творческая натура, композитор и музыкант, а вот тот — с очень рациональным мышлением, любит математику и функциональное программирование.

Но когда начинаешь заниматься и тем, и другим, замечаешь, что самые лучшие идеи — неважно, музыкальные или IT — появляются в голове совершенно одинаковым способом: как будто ниоткуда, сами по себе, выходя откуда-то из подсознания и часто в самые неожиданные моменты.

Метафора с загорающейся лампочкой над головой — очень удачная. Можно весь день просидеть за компьютером над какой-то проблемой — не получается придумать неважно что, гитарное соло или архитектуру для новой большой фичи — и за целый день ничего вменяемого не выйдет. Но можно выйти на прогулку, отвлечься, освободить мозг от этой проблемы, дать подсознанию поработать — и бум, в сознании внезапно всплывает интересная идея. Это заставляет задуматься, как работает наше мышление, как связаны между собой мысли и чувства, откуда они берутся и в чем заключается сам процесс творчества.

— Как вы распространяете вашу музыку?

Сейчас никто не покупает CD-диски,особенно диски никому не известных групп. Так что очевидный способ распространения — это онлайн. Онлайн-ресурсов для распространения музыки сейчас очень много, и иметь дело с каждым по отдельности — довольно муторно. Поэтому я решил воспользоваться сервисом Distrokid, который за небольшую плату сам размещает альбом на всех основных онлайн-платформах: Apple Music, iTunes, Spotify, Deezer, Google Play, Amazon и других.

Я только загружаю треки через веб-форму, и они через некоторое время появляются везде. При этом я получаю 100% всех роялти-выплат от продаж и потоковых прослушиваний.

Другой канал распространения — это торренты, которые появились, кстати, сами по себе, без моего участия. С одной стороны, как музыканта, который вложил в проект кучу времени и денег, меня немного напрягает, что мой продукт распространяют бесплатно. Но, с другой стороны, я понимаю современные реалии музыкальной индустрии. Да и в целом приятно, что люди интересуются и сами выкладывают твою музыку, в том числе в разных пабликах «ВКонтакте» и так далее.

В конце концов, на продажах альбомов уже существенно заработать практически нереально. Поэтому меня сейчас больше волнует, сколько людей услышат мой проект, чем сколько я получу денег.

— Что можете посоветовать музыкантам-новичкам?

Cлушать много разной музыки (причем не только в вашем основном жанре), снимать на слух партии любимых музыкантов, регулярно заниматься на инструменте под метроном. Даже если вы не собираетесь писать музыку, научитесь себя записывать, чтобы в процессе занятий можно было внимательно прослушать свою игру и обнаружить все ошибки. Ищите единомышленников, играйте с разными людьми, которые круче вас, учитесь у них.

Постоянно ставьте реалистичные, но требующие от вас постоянного развития цели. Причем результаты должны быть обращены к реальным слушателям: пусть сначала это и будет не полный стадион Уэмбли, а ваши друзья, родители, девушки, парни. И сами цели должны быть поначалу самыми простыми — например, записать трехминутную песню и выложить в соцсети, сыграть живую программу на 20 минут в кругу друзей.

Не пытайтесь сделать все хорошо и сразу, так не бывает даже у суперпрофи. Совершайте ошибки, учитесь на них, достигайте результата и немедленно двигайтесь дальше к следующим, еще более амбициозным и сложным целям. Не бойтесь критики, это неизбежное явление. Но и старайтесь найти «своего» слушателя, которому ваше творчество будет ближе.

— Какие у вас дальнейшие планы насчет музыки?

Сейчас, после выпуска проекта, хочу отдохнуть от музыки, так как последние недели перед выходом были особенно напряженными. Планирую больше сконцентрироваться на продвижении альбома. А потом уже можно будет задуматься и о живом формате выступлений, и о будущем материале — которого уже, кстати, хватает в виде демо на половину следующего альбома.

Python Challenge, или Как я ознакомился с автоматизированным тестированием за месяц

$
0
0
Чему разработчик научит Manual QA Engineers? Уж точно не тестированию, в этом они профессионалы! Но он может ответить на многие важные вопросы автоматизации, точнее дать базовые знания программирования, которые необходимы QA для успешной работы. Как программисту разобраться в написании автотестов на Python за месяц на уровне, достаточном для обучения тестировщиков, чему стоит их учить — узнайте из этой статьи!

Преамбула

Программирование я полюбил еще во время учебы в институте. Меня настолько увлекала эта сфера, что на старших курсах я разработал методичку и вел практические занятия по кластерным вычислениям в Харьковском национальном экономическом университете.

Сегодня у меня около пяти лет опыта в разработке. За это время освоил несколько технологий: был .NET специалистом, окунулся в веб-разработку на JS и даже успел немного разобраться в Markup. Осенью 2017 года мне сделали предложение, от которого я не мог отказаться: освоить Python и провести внутренний курс по автоматизированному тестированию для специалистов Dev-Pro. Овладеть новой технологией, а затем побывать в роли тренера? Challenge accepted!

Раньше мне не приходилось сталкиваться с Python, но я был мотивирован и полон энтузиазма! QA отдел составил мне программу изучения, основываясь на том, что необходимо изучить Manual QA Engineer для перехода в автоматизаторы. Это послужило мне своеобразной дорожной картой в личном обучении и в подготовке курса.

Как это было

Я разбирал каждую тему из моего списка, держа в уме будущий курс и акцентируя внимание на моментах, которые были мне самому непонятны. Факт того, что у меня не было опыта в Python, стал плюсом. Коллеги-эксперты в автоматизированном тестировании составили программу курса, а я смог разобрать язык так, чтобы объяснить его тем, кто с ним ранее не сталкивался вообще.

Параллельно я был Team Lead на корпоративном благотворительном проекте, где мы на Angular создавали сайтдля приюта «Порятунок тварин Харків». Тогда мой типичный день выглядел примерно так: четыре часа я работаю с JS, два часа — изучаю Python, еще два — готовлю курс.

В итоге мы успешно запустили сайт, я освоил написание автотестов и создал программу внутреннего курса. Она состояла из 18 лекций: от синтаксиса и написания простых программ до парадигмы ООП в тестировании, плюс задания для самостоятельной работы.

Материалы и рекомендации

Для изучения тестирования на Python мне пригодились такие источники:

Помимо этого мне помогли следующие факторы:

  • Классическое техническое фундаментальное образование. Кроме навыка быстро и легко обучаться, оно дало мне еще и знание парадигмы ООП, и базовый курс QA. Это тот фундамент, на котором я построил новое знание.
  • Технический бэкграунд. Опыт .NET и JS помог мне быстрее разобраться со структурой и синтаксисом нового языка.
  • Четкая цель. Python очень объемен: он применяется и в Web-разработке, и в системном администрировании, и в научных исследованиях. Однако у меня не было задачи создать Огромного Человекоподобного Робота, мне нужно было автоматизированное тестирование.
  • Мотивация — тоже важный элемент. Стать тренером и испытать себя в новой роли!
  • Грамотный тайм-менеджмент. Мне необходимо было правильно распределить время между несколькими задачами, курировать команду разработчиков и при этом не забывать про учебу. Именно умение планировать помогло мне успеть все.
  • Обязательства. Мне всегда нравилось преподавать, а тут мой курс ждали студенты, на меня рассчитывала компания — я просто не мог не справиться! Когда делаешь что-то для себя, всегда есть риск, что в какой-то моменты ты столкнешься с трудностями и махнешь рукой. Но когда на тебя рассчитывают другие люди, сдаваться нельзя!

Многие могут спросить: почему курс по QA Automation доверили девелоперу, а не тестировщику?

Что такое автоматизированное тестирование

Все начинается с написания простого скрипта. А чтобы написать скрипт, надо иметь навыки программиста. Зачастую специалисты, которые хотят стать автоматизаторами, пришли из ручного тестирования и никогда не занимались разработкой программного обеспечения. Моя задача как раз в том, чтобы научить их программировать и дать лучшие практики написания кода.

В моем понимании хороший код обладает такими характеристиками:

  • Удобен для повторного использования.
  • Написан с использованием принципов проектирования ПО.
  • Лаконичная и понятная структура.
  • Программная часть легко поддается расширению и изменениям.

Почему это важно? Потому же, почему код должен быть качественный, а не состоять из костылей: автотест, написанный по принципам выше, будет проще в использовании, его можно будет менять и масштабировать под нужды проекта.

Если брать шире, то следование этим практикам позволяет проекту жить, а не утонуть в плохом коде, специалист, зайдя в проект через пару месяцев, не поседеет от ужаса, а новичок сможет быстро разобраться что к чему.

Этапы обучения

Теперь у меня уже есть опыт проведения как курсов для новичков в программировании, то есть QA-специалистов, которые занимаются ручным тестированием, так и более опытных в автоматизации ребят, проявивших желание изучить именно Python. Если мы говорим о первом курсе из 18 лекций, то он был рассчитан на тех, кто не написал ни строчки кода в своей жизни. Именно поэтому я могу условно разбить занятия на три модуля:

1. Знакомство с программированием, точнее — языком Python. Здесь мы говорим о базовых концепциях. Узнаем, как организовывать данные, об условных операторах и циклах, функциях и параметрах, коллбэках, модулях, системе импорта в Python.

Зачем тестировщикам эти знания? Без них хороший код, который требуется — не написать. Они буквально не смогут перейти на этап создания автотестов без умения оперировать фундаментальными понятиями. Для меня сложность в подготовке этого модуля состояла в том, что я должен был досконально изучить все детали, разобраться, как работает язык, чтобы отвечать на все вопросы моих учеников. Например, почему в документации написано одно, а работает по-другому. Недостаточно просто принять эту данность, но нужно раскопать истинную причину. И так с каждой деталью.

2. Подробно мы поговорим о втором модуле — про более углубленное изучение языка. Эти знания нужны, дабы мы могли полноценно использовать все возможности Python при написании тестов. О каждом элементе расскажу детальнее, чтобы возьмись вы изучать автоматизацию на этом языке — сразу обратили внимание на важные аспекты и не распылялись.

2.1. Collections. Basic Algorithms — во время написания программ всегда приходится работать с данными. Чем более удобно они представлены, тем нам легче с ними оперировать. У Python много интересных фишек и дополнительных возможностей, которые значительно упрощают работу с данными. Одна из них — специализированные структуры данных. QA-специалисты наверняка столкнутся с этим.

2.2. Iterators. Generators. Decorators.Когда пишешь свой скрипт, обязательно работаешь с итерированием коллекций и генерацией данных. Интеграторы и генераторы помогают справиться с различными сложными ситуациями, связанными с этим аспектом, например, именно генераторы позволяют не сразу считывать весь файл в память (так как он может быть очень большим), а построчно — облегчая процесс. Декораторы же в свою очередь позволяют нам добавить какую-нибудь функциональность к уже имеющейся, порой это очень удобно, принести домой ёлку, декорировать её новогодними игрушками и получить новогоднюю ёлку.

2.3. Exception handling. Operations with files.Почти в любом программе могут возникать исключительные ситуации, их нужно уметь обрабатывать, этому мы и учимся! Кроме того, не обойтись без знания, как открыть и прочитать файлы.

2.4. OOP and Python.Есть два подхода к написанию тестов: функциональный, сторонником которого я не являюсь, и стиль ООП. Второй метод мне больше по душе, потому что позволяет делать все более организованно. Более того, эти знания точно пригодятся при написании тестового фреймворка. Плюс, у Python есть свои особенности касательно ООП, с которыми обязательно нужно знакомиться, даже если вы разбираетесь в этой теме в рамках других языков.

2.5. MetaClasses. ContextManager.Эта возможность Python позволяет на лету генерировать тестовые методы. То есть вам не понадобится плодить десятки подобных тестов-методов, вместо этого их можно генерировать. Это возможно благодаря мета-программированию в Python. ContextManager — фишка, которая не даст вашему коду заблокировать какой-либо ресурс: проследит, что открытый файл или открытый connection к базе данных был закрыт после завершения программы.

2.6. Design patterns.На занятиях, посвященных этой теме, мы изучаем лучшие практики, выясняем, как решать типичные проблемы, с которыми сталкиваются как автоматизаторы, так и рядовые разработчики.

3. В рамках третьего модуля мы переходим непосредственно к созданию автотестов. Темы, о которых я говорю, это: Functional testing, Integration testing, Unit testing, API architecture approaches, Load testing, Acceptance testing, Selenium, OOP in tests Selenium, OOP in tests. Page Object Pattern — это темы для отдельного материала!

Для более опытных специалистов я сразу начинаю курс со второго модуля.

Выводы

Итак, подведем итог. С чего стоит начать QA-специалисту, который решил освоить автоматизированное тестирование без какого-либо опыта в этом вопросе?

С азов! Особенно рекомендую ресурсы типа Code School и Code Academy, о которых уже писал выше. Составил небольшой список, который рекомендую своим студентам перед курсом:

Разумеется, необходим хороший уровень английского и опыт в тестировании. Но, как я убедился на собственном примере, автоматизированное тестирование на Python реально освоить за месяц, если вам уже знаком другой язык программирования, даже совмещая с занятостью на другом проекте!

Рейтинг шкіл за результатами ЗНО-2018

$
0
0

Традиційно представляю на порталі DOU новий рейтинг шкіл за результатами ЗНО-2018.

Минулого року, як і два роки тому, мій рейтинг лаяли фахівці з системи освіти і висловлювали подяку батьки. На останньому брифінгу голова УЦОЯОВадим Карандій ще раз зазначив, що рейтинги шкіл, засновані на результатах ЗНО, «не зовсім коректні». Це пов’язано з тим, що частка обраних предметів в різних локаціях може значно відрізнятися. Наприклад, в Одеській області частка тих, хто обрав фізику, — 42% випускників, а в Чернівецькій області — тільки 17%. А ось тестуванням з української мови цього року були охоплені всі випускники. З цього я можу зробити висновок, що рейтинг тільки з української мови може бути цілком коректним.

Мій рейтинг ніколи не претендував на абсолютну точність. Іноді позиція школи у рейтингу залежить від частки середнього бала, і, гадаю, важливо не те, яку саме позицію школа займає, а те, чи входить вона в першу тисячу шкіл по країні або в першу двадцятку в обласному центрі. Важливо також розуміти динаміку результатів школи з року в рік.

Тому я сподіваюся, що цей рейтинг візьмуть до уваги як батьки, так і представники системи освіти, завдяки таким характеристикам:

  • Враховується середній бал не з конкретного предмета, а з усіх предметів в рамках школи.
  • Відсікаються школи з малою кількістю випускників, які брали участь в тестуванні.
  • Враховуються результати двох попередніх років (2016 і 2017), що згладжує можливі аномалії в результатах школи, які через різні причини можуть з’являтися в деяких роках.
  • Відсутність зрозумілих і доступних офіційних / незалежних звітів з оцінки якості освіти по всім школам країни.
  • Конкуренція і тиск батьків змушує керівників навчальних закладів звернути увагу на якість підготовки випускників у школі, що в свою чергу допоможе учням зекономити особистий час і кошти на оплату послуг репетиторів.

Найкращі школи: загальний рейтинг

Цього року Український центр оцінювання якості освіти змінив перелік предметів, виключивши російську мову. Структура даних не змінилася, що дозволило мені обробити масиви даних за три роки. Як і минулого року, виникли проблеми із зіставленням перейменованих шкіл. В результаті близько двох тисяч перейменованих шкіл були зіставлені вручну моєю родиною.

Також були додані колонки зі середньоквадратичними відхиленнямияк всіх оцінок школи, так і оцінок з конкретних предметів.

Отже, нижче представлений загальний рейтинг шкіл за результатами ЗНО за 2018 рік і двох попередніх років*:

Загальний
рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
ШколаРегіон
11↑ 1186.3Ліцей Інтелектм.Київ, Дарницький р.м.
25↓ 2183.8КЗ освіти Дніпропетровський обласний медичний ліцей-інтернат ДніпроДніпропетровська об., м.Дніпро. Соборний р.м.
310↓ 9181.2ПП Приватний ЗОНЗ гімназія Престижм.Київ, Шевченківський р.м.
44↑ 1184.0Львівський фізико-математичний ліцей-інтернат при Львівському національному університеті імені Івана ФранкаЛьвівська об., м.Львів. Залізничний р.м.
56↓ 2182.6Український фізико-математичний ліцей Київського національного університету імені Т.Шевченкам.Київ, Голосіївський р.м.
611↓ 5180.9Українська гімназія № 1 Івано-Франківської МР Івано-Франківської об.Івано-Франківська об., м.Івано-Франківськ
72↑ 23184.6КЗ Харківський фізико-математичний ліцей № 27 Харківської МР Харківської об.Харківська об., м.Харків. Жовтневий р.м.
880182.3Черкаський фізико-математичний ліцей (ФІМЛІ) Черкаської МР Черкаської об.Черкаська об., м.Черкаси. Придніпровський р.м.
97↑ 9182.5Природничо-науковий ліцей № 145 Печерського р. м. Києвам.Київ, Печерський р.м.
1016↓ 7179.8КЗ освіти Українсько-Американський ліцей Дніпровської МРДніпропетровська об., м.Дніпро. Соборний р.м.
1112↑ 1180.6Києво-Печерський ліцей № 171 «Лідер» Печерського р. м. Києвам.Київ, Печерський р.м.
129↑ 27181.3Русанівський ліцей м. Києвам.Київ, Дніпровський р.м.
1314↑ 16180.1Технічний ліцей Національного технічного університету України Київський політехнічний інститут Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
1415↑ 13179.9Український гуманітарний ліцей Київського національного університету імені Тараса Шевченкам.Київ, Печерський р.м.
1519↑ 1179.1Ліцей Наукова змінам.Київ, Дарницький р.м.
1620↓ 5179.0Гімназія № 178 Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
1717↑ 2179.5СШ І-ІІІ ст. № 155 з поглибленим вивченням англійської мови Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
1821↑ 14178.9Гімназія № 153 імені О.С.Пушкіна Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
1913↑ 21180.5Ліцей Престиж м.Києвам.Київ, Солом’янський р.м.
203↑ 142184.2Харківський приватний НВК Вересень Харківської об.Харківська об., м.Харків. Фрунзенський р.м.
2127↑ 2176.4КЗ освіти Дніпровський ліцей інформаційних технологій при Дніпропетровському національному університеті імені Олеся Гончара Дніпровської МРДніпропетровська об., м.Дніпро. Соборний р.м.
2231↓ 13174.7Ліцей № 142 м.Києвам.Київ, Солом’янський р.м.
2324↑ 19177.1Гімназія Києво — Могилянський колегіум ІІ-ІІІ ст. Деснянського р. міста Києвам.Київ, Деснянський р.м.
2437↓ 25173.5Класична гімназія при Львівському національному університеті імені Івана ФранкаЛьвівська об., м.Львів. Франківський р.м.
2550↓ 43172.4Калуська гімназія імені Дмитра Бахматюка Калуської МР Івано-Франківської об.Івано-Франківська об., м.Калуш
2630↑ 8175.1Гімназія Академіям.Київ, Святошинський р.м.
2725↑ 27177.0СШ І-ІІІ ст. з поглибленим вивченням іноземних мов № 112 імені Т. Шевченка міста Києвам.Київ, Голосіївський р.м.
2826↑ 22176.5КЗ «НВК „СШ І ступеня — гімназія“ № 143 Оболонського р. м.Києва»м.Київ, Оболонський р.м.
2946↓ 22172.6Гімназія № 172 Нивки Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
3022↓ 8177.2Товариство з обмеженою відповідальністю Учбовий комплекс Олександрійська гімназіям.Київ, Печерський р.м.
3138↓ 21173.4Одеська СШ № 117 I-III ст.Одеської МР Одеської об.Одеська об., м.Одеса. Приморський р.м.
3235↑ 22174.0Львівська академічна гімназія при Національному університеті Львівська політехнікаЛьвівська об., м.Львів. Галицький р.м.
3357↓ 34171.5Гімназія № 191 ім. П.Г.Тичини з поглибленим вивченням іноземних мов м. Києвам.Київ, Дніпровський р.м.
3436↓ 3173.7КЗ Луцька гімназія № 18 Луцької МР Волинської об.Волинська об., м.Луцьк
3576↓ 49170.2НВК Ерудит дошкільний заклад (дитячий садок)-школа І ступеня — гімназія Солом’янського р. м. Києвам.Київ, Солом’янський р.м.
3656↓ 10171.5КЗ освіти Дніпропетровський обласний ліцей-інтернат фізико-математичного профілюДніпропетровська об., м.Дніпро. Шевченківський р.м.
3747↑ 44172.5ТОВ НВК НОВОПЕЧЕРСЬКА ШКОЛАм.Київ, Печерський р.м.
3843↑ 7173.0Ліцей № 208 м. Києвам.Київ, Дніпровський р.м.
3948↑ 32172.5Львівська гімназія ЄвшанЛьвівська об., м.Львів. Залізничний р.м.
4051↓ 2172.2Чортківська гімназія імені Маркіяна ШашкевичаТернопільська об., м.Чортків
4145↑ 15172.9НВК «Домінанта» (ДНЗ-СШ І ст. — суспільно-гуманітарна гімназія — СШ № 204 з поглибленим вивченням фізичної культури)м.Київ, Дніпровський р.м.
4228↑ 113175.6ЗОНЗ І-ІІІ ст. Ліцей № 100 Поділ Подільського р. м.Києвам.Київ, Подільський р.м.
4360↓ 28171.3КЗ освіти НВК № 12 ЗОНЗ І ступеня — гімназія Дніпровської МРДніпропетровська об., м.Дніпро. Чечелівський р.м.
4441↓ 1173.1Гімназія № 32 Успіхм.Київ, Печерський р.м.
4579↓ 68170.2Авіакосмічний ліцей № 2 Національного авіаційного університету (м. Київ)Полтавська об., м.Лубни
4618↑ 177179.3ПП Навчальний заклад Європейський колегіумм.Київ, Голосіївський р.м.
4752↑ 12172.1Харківський НВК № 45 Академічна гімназія Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
48162↓ 152165.6Товариство з обмеженою відповідальністю НВК Святошинська гімназіям.Київ, Святошинський р.м.
4953↓ 2171.9Херсонська СШ І-ІІІ ст. № 30 з поглибленим вивченням предметів природничо-математичного циклу та англійської мови Херсонської МРХерсонська об., м.Херсон. Суворовський р.м.
5061↑ 4171.3Запорізька гімназія № 28 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Вознесенівський р.м.
5142↑ 41173.1Харківський приватний НВК Авторська школа Бойка Харківської об.Харківська об., м.Харків. Дзержинський р.м.
5272↓ 31170.4КЗ Луцька гімназія № 21 імені Михайла Кравчука Луцької МР Волинської об.Волинська об., м.Луцьк
5363↓ 24171.0Львівська українська приватна гімназіяЛьвівська об., м.Львів. Галицький р.м.
5487↓ 50169.6СШ І-ІІІ ст. № 57 з поглибленим вивченням англійської мови Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
5533↑ 35174.5Харківська гімназія № 47 Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
5634↑ 48174.2Бучанська Українська гімназіяКиївська об., м.Буча
5789↓ 23169.5Гімназія Троєщина ІІ-ІІІ ст. Деснянського р. м. Києвам.Київ, Деснянський р.м.
5854↑ 41171.6Середній загальноосвітній заклад Слов’янська гімназіям.Київ, Дарницький р.м.
5944↑ 95172.9Політехнічний ліцей Національного технічного університету України Київський політехнічний інститут м. Києвам.Київ, Солом’янський р.м.
6064↑ 29171.0Волинський ліцей-інтернат Волинської ОРВолинська об., м.Луцьк
6165↑ 33170.8Запорізька гімназія № 93 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Шевченківський р.м.
6274↑ 2170.3НВК № 167 з поглибленим вивченням німецької мови (СШ І ступеня — гімназія) м. Києвам.Київ, Дніпровський р.м.
6366↓ 10170.7Рівненська українська гімназіяРівненська об., м.Рівне
6468↑ 17170.6Кіровоградський обласний НВК (гімназія-інтернат-школа мистецтв)Кіровоградська об., м.Кропивницький. Кіровський р.м.
65113↓ 29168.3Чернівецька гімназія № 4 Чернівецької МРЧернівецька об., м.Чернівці. Шевченківський р.м.
66180↓ 154165.1Гімназія № 117 імені Лесі Українки з поглибленим вивченням іноземних мовм.Київ, Печерський р.м.
67115↓ 48168.2Львівський НВК ім. В. Симоненка з поглибленим вивченням німецької мови СШ І ступеня-гімназіяЛьвівська об., м.Львів. Франківський р.м.
6832↑ 105174.5Запорізький класичний ліцей Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Вознесенівський р.м.
69108↓ 87168.7Білоцерківське навчально-виховне об’єднання «Ліцей-Мала академія наук» Білоцерківської МР Київської об.Київська об., м.Біла Церква
7081↓ 3170.0Ліцей Голосіївський № 241 міста Києвам.Київ, Голосіївський р.м.
7169↑ 28170.5Миколаївська гімназія № 2 Миколаївської МР Миколаївської об.Миколаївська об., м.Миколаїв. Центральний р.м.
7280↓ 11170.1КЗ Рішельєвський ліцейОдеська об., м.Одеса. Приморський р.м.
7355↑ 103171.6Харківський технічний ліцей № 173 Харківської МР Харківської об.Харківська об., м.Харків. Комінтернівський р.м.
74135↓ 88166.9ЗОНЗ ІІ-ІІІ ст. Фінансовий ліцей Подільського р. м. Києвам.Київ, Подільський р.м.
75109↑ 1168.7Тернопільська Українська гімназія ім. І.Франка Тернопільської МР Тернопільської об.Тернопільська об., м.Тернопіль
7696↓ 6169.2Гімназія Національного педагогічного університету імені М.П.Драгоманова Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
77123↓ 60167.6Черкаський гуманітарно-правовий ліцей Черкаської МР Черкаської об.Черкаська об., м.Черкаси. Придніпровський р.м.
7884↑ 41169.8ЗОНЗ І-ІІІ ст. Скандинавська гімназіям.Київ, Дарницький р.м.
79136↓ 77166.9КЗ Харківська гімназія № 169 Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
80102↓ 10168.9Бурштинська ЗОШ І-ІІІ ст. № 3 Бурштинської МР Івано-Франківської об.Івано-Франківська об., м.Бурштин
8175↑ 2170.3Запорізька гімназія № 31 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Дніпровський р.м.
82155↓ 97165.9Львівський НВК ім. В. Стуса СШ І ступеня-гімназія міжнародних відносинЛьвівська об., м.Львів. Франківський р.м.
8329↑ 242175.3Приватний ЗОНЗ Фінансово-правовий ліцейм.Київ, Солом’янський р.м.
84101↑ 118169.0ПП СШ Тріумфм.Київ, Дарницький р.м.
85110↓ 24168.7Славутицький ліцей Славутицької МР Київської об.Київська об., м.Славутич
8682↑ 74169.9Кловський ліцей № 77м.Київ, Печерський р.м.
87111↑ 5168.7Гімназія біотехнологій № 177 Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
8849↑ 185172.4КЗ «НВК „СШ І-ІІ ст. — ліцей“ № 157 Оболонського р. м. Києва»м.Київ, Оболонський р.м.
8985↑ 49169.7Тернопільська СШ І-ІІІ ст. № 29 з поглибленим вивченням іноземних мов Тернопільської МР Тернопільської об.Тернопільська об., м.Тернопіль
9098↑ 25169.2Гімназія № 315 з поглибленим вивченням іноземних мовм.Київ, Дарницький р.м.
9197↑ 10169.2Гімназія № 48 Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
9286↑ 79169.6Чернівецький ліцей № 1 математичного та економічного профілів Чернівецької МРЧернівецька об., м.Чернівці. Шевченківський р.м.
9358↑ 84171.4Рівненська класична гімназія Престиж Рівненської МРРівненська об., м.Рівне
9440↑ 229173.4СШ № 173 Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
95137↑ 47166.8Навчальний заклад освіти Гімназія Столицям.Київ, Дніпровський р.м.
9699↑ 14169.0КЗ Обласна СШ-інтернат ІІ-ІІІ ст. Обдарованість Харківської ОРХарківська об., м.Харків. Орджонікідзевський р.м.
97121↓ 46167.7КУ Сумська класична гімназія Сумської МРСумська об., м.Суми. Ковпаківський р.м.
98158↓ 79165.7Перша міська гімназія Черкаської МР Черкаської об.Черкаська об., м.Черкаси. Соснівський р.м.
9973↑ 91170.4КЗ Вінницький технічний ліцейВінницька об., м.Вінниця
100119↓ 30168.1Львівська гімназія Престиж з поглибленим вивченням іноземних мовЛьвівська об., м.Львів. Шевченківський р.м.

Показати більше шкіл

* Примітка.У рейтингу враховуються всі отримані бали незалежно від предмета (за 200-бальноюшкалою). Треба зауважити, що бали виставлені по так званій «рейтинговій шкалі»від 100 до 200 балів. Ці значення не можуть бути використані для оцінки реальних знань, але дозволяють виявити рівень школи або учня щодо всього масиву даних.

Рейтинг складено за середнім арифметичним від всіх отриманих балів з усіх предметів в результаті тестування за поточний рік, з поправкою на такі ж результати попередніх років («зведений рейтинг»). Зведений рейтинг розраховується за методом зваженого ковзаючого середньоговід середніх балів школи за три роки.

У рейтингу враховуються тільки школи, які представили як мінімум три учні на тестування.

Повна версія таблиці з додатковими даними про всі школи країни і методикою розрахунку доступна у вигляді Google-таблиці.

Як бачимо з наступного графіка, трохи менше половини шкіл з ТОП-100 знаходяться в Києві і їх кількість поступово зростає, а у Львівській області — падає:

Розподіл шкіл з ТОП-100 за регіонами

Найкращі школи Києва
Рейтинг
по Києву
Загальний
рейтинг
Загальний
IT рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
Школа
1111↑ 1186.3Ліцей Інтелект
2310↓ 9181.2ПП Приватний ЗОНЗ гімназія Престиж
3556↓ 2182.6Український фізико-математичний ліцей Київського національного університету імені Т.Шевченка
4967↑ 9182.5Природничо-науковий ліцей № 145 Печерського р. м. Києва
511212↑ 1180.6Києво-Печерський ліцей № 171 «Лідер» Печерського р. м. Києва
612109↑ 27181.3Русанівський ліцей м. Києва
713814↑ 16180.1Технічний ліцей Національного технічного університету України Київський політехнічний інститут Солом’янського р. м.Києва
8142315↑ 13179.9Український гуманітарний ліцей Київського національного університету імені Тараса Шевченка
9151519↑ 1179.1Ліцей Наукова зміна
1016920↓ 5179.0Гімназія № 178 Солом’янського р. м.Києва
111717↑ 2179.5СШ І-ІІІ ст. № 155 з поглибленим вивченням англійської мови Шевченківського р. м.Києва
121821↑ 14178.9Гімназія № 153 імені О.С.Пушкіна Шевченківського р. м.Києва
131913↑ 21180.5Ліцей Престиж м.Києва
14221131↓ 13174.7Ліцей № 142 м.Києва
152324↑ 19177.1Гімназія Києво — Могилянський колегіум ІІ-ІІІ ст. Деснянського р. міста Києва
16261930↑ 8175.1Гімназія Академія
172725↑ 27177.0СШ І-ІІІ ст. з поглибленим вивченням іноземних мов № 112 імені Т. Шевченка міста Києва
18281226↑ 22176.5КЗ «НВК „СШ І ступеня — гімназія“ № 143 Оболонського р. м.Києва»
19292146↓ 22172.6Гімназія № 172 Нивки Шевченківського р. м.Києва
203022↓ 8177.2Товариство з обмеженою відповідальністю Учбовий комплекс Олександрійська гімназія

Найкращі школи Харкова
Рейтинг
по Харкову
Загальний
рейтинг
Загальний
IT рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
Школа
1742↑ 23184.6КЗ Харківський фізико-математичний ліцей № 27 Харківської МР Харківської об.
2203↑ 142184.2Харківський приватний НВК Вересень Харківської об.
3471452↑ 12172.1Харківський НВК № 45 Академічна гімназія Харківської МР Харківської об.
4511842↑ 41173.1Харківський приватний НВК Авторська школа Бойка Харківської об.
5553433↑ 35174.5Харківська гімназія № 47 Харківської МР Харківської об.
6738455↑ 103171.6Харківський технічний ліцей № 173 Харківської МР Харківської об.
77928136↓ 77166.9КЗ Харківська гімназія № 169 Харківської МР Харківської об.
8966999↑ 14169.0КЗ Обласна СШ-інтернат ІІ-ІІІ ст. Обдарованість Харківської ОР
9109140↓ 66166.5КЗ «Харківська гімназія № 6 Маріїнська гімназія» Харківської МР Харківської об.
1014272125↑ 96167.4КЗ Харківський університетський ліцей Харківської МР Харківської об.
11159139↑ 94166.7КЗ Харківська СШ І-ІІІ ст. з поглибленим вивченням окремих предметів № 16 Харківської МР Харківської об. імені В.Г.Сергєєва
1216762239↓ 134163.1Харківський ліцей № 161 Імпульс Харківської МР Харківської об.
13178192↑ 4164.8Харківська СШ I-III ст.№ 156 Харківської МР Харківської об.
1418678289↓ 141161.7Приватний заклад Харківська приватна ЗОШ І-ІІІ ст. Лєствіца Харківської об.
15208163329↓ 125160.7Харківська гімназія № 46 ім. М.В. Ломоносова Харківської МР Харківської об.
16213164↑ 321165.4КЗ Харківська СШ І-ІІІ ст. № 11 з поглибленим вивченням окремих предметів Харківської МР Харківської об.
17226386↓ 255159.6Харківська гімназія № 14 Харківської МР Харківської об.
18228314↓ 181161.1Харківська СШ I-III ст.№ 109 Харківської МР Харківської об.
19244313↓ 34161.1КЗ Харківська СШ ІІ-ІІІ ст. № 3 Харківської МР Харківської об.
20247110345↓ 59160.4Харківська гімназія № 116 Харківської МР Харківської об.

Найкращі школи Львова
Рейтинг
по Львову
Загальний
рейтинг
Загальний
IT рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
Школа
1434↑ 1184.0Лівський фізико-математичний ліцей-інтернат при Львівському національному університеті імені Івана Франка
22437↓ 25173.5Класична гімназія при Львівському національному університеті імені Івана Франка
3323235↑ 22174.0Львівська академічна гімназія при Національному університеті Львівська політехніка
4394048↑ 32172.5Львівська гімназія Євшан
55363↓ 24171.0Львівська українська приватна гімназія
66794115↓ 48168.2Львівський НВК ім. В. Симоненка з поглибленим вивченням німецької мови СШ І ступеня-гімназія
782155↓ 97165.9Львівський НВК ім. В. Стуса СШ І ступеня-гімназія міжнародних відносин
8100119↓ 30168.1Львівська гімназія Престиж з поглибленим вивченням іноземних мов
911093↑ 39169.3Львівський НВК Школа І ступеня-гімназія
10120148↓ 60166.1Львівська спеціалізована середня ЗОШ І-ІІІ ст. № 81 ім. Петра Сагайдачного з поглибленим вивченням англійської мови
11123122↑ 80167.6Львівська спеціалізована середня ЗОШ № 2 І-ІІІ ст. з поглибленим вивченням англійської мови
1212496231↓ 169163.4Львівська спеціалізована середня ЗОШ І-ІІІ ст. № 28 з поглибленим вивченням німецької мови
13128103↑ 151168.8Львівська спеціалізована ЗОШ І-ІІІ ст. № 8 з поглибленим вивченням німецької мови
14136225↓ 105163.6Львівська лінгвістична гімназія Львівської МР Львівської об.
1514377↑ 296170.2Львівська спеціалізована середня ЗОШ № 37 з поглибленим вивченням французької мови
1617612688↑ 344169.5НВК Школа І ступеня — гімназія Гроно м. Львова
17189366↓ 247160.0Львівська спеціалізована середня ЗОШ І-ІІІ ст. № 5 ім. Іванни та Іллі Кокорудзів з поглибленим вивченням англійської мови
18221429↓ 266158.7Середня спеціалізована ЗОШ № 93 з поглибленим вивченням англійської мови
19230280437↓ 286158.5Львівська правнича гімназія
20237245↓ 20162.8НВК Школа-гімназія І-ІІІ ст. Блаженного Климентія та Андрія Шептицьких

Найкращі школи Дніпра
Рейтинг
по Дніпру
Загальний
рейтинг
Загальний
IT рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
Школа
125↓ 2183.8КЗ освіти Дніпропетровський обласний медичний ліцей-інтернат Дніпро
21016↓ 7179.8КЗ освіти Українсько-Американський ліцей Дніпровської МР
3211327↑ 2176.4КЗ освіти Дніпровський ліцей інформаційних технологій при Дніпропетровському національному університеті імені Олеся Гончара Дніпровської МР
4363056↓ 10171.5КЗ освіти Дніпропетровський обласний ліцей-інтернат фізико-математичного профілю
5432560↓ 28171.3КЗ освіти НВК № 12 ЗОНЗ І ступеня — гімназія Дніпровської МР
6105112↑ 61168.4Товариство з обмеженою відповідальністю НВК Європейська гімназія
71457990↑ 188169.5КЗ освіти Фінансово-економічний ліцей Дніпровської МР
8194195241↓ 54163.0КЗ освіти НВК № 100 ЗОНЗ І-ІІ ст. — ліцей Дніпровської МР
9251257189↑ 312164.8КНЗ ХІМІКО-ЕКОЛОГІЧНИЙ ЛІЦЕЙ ДНІПРОВСЬКОЇ МР
10298365↑ 153160.0КЗ освіти Гімназія № 1 Дніпровської МР
11328399↑ 128159.4КЗ освіти Спеціалізована середня ЗОШ № 22 з поглибленим вивченням іноземної мови Дніпровської МР
12333208424↓ 80158.7КЗ освіти Гімназія № 3 Дніпровської МР
13364537↓ 231156.9КЗ освіти НВК № 148 СШ-ДНЗ (ясла-садок) Планета Щастя Дніпровської МР
14373538↓ 71156.9КЗ освіти НВО № 136 Класична гімназія ім.Кирила і Мефодія -початкова школа-ДНЗ-валеологічний центр Дніпровської МР
15461131958↓ 639151.6КЗ освіти НВК № 130 ЗОНЗ І ступеня — гімназія Дніпровської МР
16525352441↑ 455158.4КЗ освіти Середня ЗОШ № 31 Дніпровської МР
17565148754↓ 88153.9КЗ освіти Спеціалізована багатопрофільна школа № 23 з поглибленим вивченням англійської мови Дніпровської МР
18585382246↑ 1141162.8КЗ освіти НВК № 99 багатопрофільна гімназія- школа I ступеня -ДНЗ Дніпровської МР
196221471153↓ 788149.7КЗ освіти Середня ЗОШ № 54 Дніпровської МР
20643637↑ 317155.5Приватний заклад освіти Технічний ліцей

Найкращі школи Одеси
Рейтинг
по Одесі
Загальний
рейтинг
Загальний
IT рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
Школа
13138↓ 21173.4Одеська СШ № 117 I-III ст.Одеської МР Одеської об.
2723380↓ 11170.1КЗ Рішельєвський ліцей
3126200↓ 146164.5Приватний заклад Одеська приватна СШ І-ІІІ ст. Гармонія
415018283↑ 423169.9Одеський НВК Гімназія № 2 — СШ І ступеня з поглибленим вивченням англійської мови Одеської МР Одеської об.
516223↑ 2505177.2Одеський приватний НВК ЗОШ І-ІІІ ст. з поглибленим вивченням іноземних мов — ДНЗАнтарктика
6163221↓ 47163.7Одеська приватна ЗОШ I-III ст.Крок
7212154338↓ 194160.5Одеський ліцей Приморський Одеської МР Одеської об.
8214212↑ 183164.0ПП ЗОШ Майбуття I-III ст.
9242151258↓ 18162.6Одеська гімназія № 1 імені А.П.Бистріної Одеської МР Одеської об.
10254332321↑ 66161.0Одеська гімназія № 5 Одеської МР Одеської об.
11287193445↓ 222158.4Одеська гімназія № 9 Одеської МР Одеської об.
12303444↓ 86158.4Одеська СШ № 121 I-III ст. з поглибленимвивченням іноземних мов Одеської МР Одеської об.
13309263↑ 88162.5Одеська СШ-інтернат № 2 I-III ст. з поглибленимвивченням англійської мови Одеської МР Одеської об.
14350447↓ 205158.4Приватний заклад Одеська приватна ЗОШ I-III ст.Ніка-М
153851379↓ 1285147.7Приватний заклад Одеська приватна ЗОШ I-III ст.— ліцей Чорноморський
16432245670↓ 249154.9Одеський НВК Гімназія № 7 — СШ І ступеня з поглибленим вивченням англійської мови Одеської МР Одеської об.
17434392↑ 97159.5Одеська СШ № 50 I-III ст. з поглибленимвивченням іноземних мов Одеської МР Одеської об.
18438180544↑ 23156.8Одеська Маріїнська гімназія Одеської МР Одеської об.
19454308686↓ 345154.7Одеський економічний ліцей Одеської МР Одеської об.
20487247746↓ 266153.9Одеський НВК Гармонія ЗОШ І-ІІ ст. — гімназія № 6 Одеської МР Одеської об.

Найкращі школи: рейтинг для IT-галузі

Рейтинг показує, які школи дають найкращі базові знання в точних науках для майбутніх фахівців у сфері IT. Для цього я склав рейтинг шкіл з найкращими показниками з математики, фізики та англійської мови**. На жаль, інформатика відсутня в списку предметів ЗНО. Тому цей рейтинг можна застосовувати до багатьох інших інженерних спеціальностей.

Загальний
IT рейтинг
Загальний
рейтинг
IT рейтинг
2018
IT Δ
18/17
Середній бал
по ІТ 2018
ШколаРегіон
1110185.8Ліцей Інтелектм.Київ, Дарницький р.м.
2115↓ 3181.9Києво-Печерський ліцей № 171 «Лідер» Печерського р. м. Києвам.Київ, Печерський р.м.
343↑ 1182.9Львівський фізико-математичний ліцей-інтернат при Львівському національному університеті імені Івана ФранкаЛьвівська об., м.Львів. Залізничний р.м.
472↑ 6184.3КЗ Харківський фізико-математичний ліцей № 27 Харківської МР Харківської об.Харківська об., м.Харків. Жовтневий р.м.
558↓ 5180.1Український фізико-математичний ліцей Київського національного університету імені Т.Шевченкам.Київ, Голосіївський р.м.
694↑ 10182.9Природничо-науковий ліцей № 145 Печерського р. м. Києвам.Київ, Печерський р.м.
786↑ 1181.5Черкаський фізико-математичний ліцей (ФІМЛІ) Черкаської МР Черкаської об.Черкаська об., м.Черкаси. Придніпровський р.м.
8139↑ 2179.9Технічний ліцей Національного технічного університету України Київський політехнічний інститут Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
91615↓ 10176.5Гімназія № 178 Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
10127↑ 13180.2Русанівський ліцей м. Києвам.Київ, Дніпровський р.м.
112222↓ 16174.0Ліцей № 142 м.Києвам.Київ, Солом’янський р.м.
122813↑ 10177.6КЗ «НВК „СШ І ступеня — гімназія“ № 143 Оболонського р. м.Києва»м.Київ, Оболонський р.м.
132120↓ 5174.1КЗ освіти Дніпровський ліцей інформаційних технологій при Дніпропетровському національному університеті імені Олеся Гончара Дніпровської МРДніпропетровська об., м.Дніпро. Соборний р.м.
144717↑ 9176.0Харківський НВК № 45 Академічна гімназія Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
151519↑ 19174.4Ліцей Наукова змінам.Київ, Дарницький р.м.
163825↓ 7173.4Ліцей № 208 м. Києвам.Київ, Дніпровський р.м.
175030↓ 6171.9Запорізька гімназія № 28 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Вознесенівський р.м.
185118↑ 26175.8Харківський приватний НВК Авторська школа Бойка Харківської об.Харківська об., м.Харків. Дзержинський р.м.
192621↑ 19174.0Гімназія Академіям.Київ, Святошинський р.м.
204929↓ 8172.1Херсонська СШ І-ІІІ ст. № 30 з поглибленим вивченням предметів природничо-математичного циклу та англійської мови Херсонської МРХерсонська об., м.Херсон. Суворовський р.м.
212942↓ 26168.4Гімназія № 172 Нивки Шевченківського р. м.Києвам.Київ, Шевченківський р.м.
228810↑ 75179.2КЗ «НВК „СШ І-ІІ ст. — ліцей“ № 157 Оболонського р. м. Києва»м.Київ, Оболонський р.м.
231416↑ 52176.4Український гуманітарний ліцей Київського національного університету імені Тараса Шевченкам.Київ, Печерський р.м.
243347↓ 37167.8Гімназія № 191 ім. П.Г.Тичини з поглибленим вивченням іноземних мов м. Києвам.Київ, Дніпровський р.м.
254327↑ 3172.6КЗ освіти НВК № 12 ЗОНЗ І ступеня — гімназія Дніпровської МРДніпропетровська об., м.Дніпро. Чечелівський р.м.
265928↑ 22172.5Політехнічний ліцей Національного технічного університету України Київський політехнічний інститут м. Києвам.Київ, Солом’янський р.м.
274214↑ 114176.6ЗОНЗ І-ІІІ ст. Ліцей № 100 Поділ Подільського р. м.Києвам.Київ, Подільський р.м.
287946↓ 34167.9КЗ Харківська гімназія № 169 Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
292541↓ 9168.7Калуська гімназія імені Дмитра Бахматюка Калуської МР Івано-Франківської об.Івано-Франківська об., м.Калуш
303657↓ 29166.3КЗ освіти Дніпропетровський обласний ліцей-інтернат фізико-математичного профілюДніпропетровська об., м.Дніпро. Шевченківський р.м.
319239↑ 12169.1Чернівецький ліцей № 1 математичного та економічного профілів Чернівецької МРЧернівецька об., м.Чернівці. Шевченківський р.м.
323236↑ 31169.4Львівська академічна гімназія при Національному університеті Львівська політехнікаЛьвівська об., м.Львів. Галицький р.м.
337252↓ 33167.2КЗ Рішельєвський ліцейОдеська об., м.Одеса. Приморський р.м.
345533↑ 21169.8Харківська гімназія № 47 Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
357567↓ 20165.1Тернопільська Українська гімназія ім. І.Франка Тернопільської МР Тернопільської об.Тернопільська об., м.Тернопіль
369731↑ 12170.1КУ Сумська класична гімназія Сумської МРСумська об., м.Суми. Ковпаківський р.м.
377145↓ 12167.9Миколаївська гімназія № 2 Миколаївської МР Миколаївської об.Миколаївська об., м.Миколаїв. Центральний р.м.
3811434↑ 59169.6Технічний ліцей м. Києвам.Київ, Дніпровський р.м.
3910632↑ 60170.0Хмельницька гімназія № 1 імені Володимира КрасицькогоХмельницька об., м.Хмельницький
403951↑ 66167.3Львівська гімназія ЄвшанЛьвівська об., м.Львів. Залізничний р.м.
4117726↑ 76172.9Запорізький багатопрофільний ліцей Перспектива Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Шевченківський р.м.
4215169↓ 32164.9Долинський природничо-математичний ліцей Долинської РР Івано-Франківської об.Івано-Франківська об., м.Долина
4310437↑ 117169.2НВК Уманська міська гімназія — школа естетичного виховання Уманської МР Черкаської об.Черкаська об., м.Умань
449938↑ 61169.1КЗ Вінницький технічний ліцейВінницька об., м.Вінниця
457491↓ 43163.1ЗОНЗ ІІ-ІІІ ст. Фінансовий ліцей Подільського р. м. Києвам.Київ, Подільський р.м.
466480↓ 16163.9Кіровоградський обласний НВК (гімназія-інтернат-школа мистецтв)Кіровоградська об., м.Кропивницький. Кіровський р.м.
4770101↓ 56162.0Ліцей Голосіївський № 241 міста Києвам.Київ, Голосіївський р.м.
4811563↑ 40165.6КЗ Фізико-математична гімназія № 17 Вінницької МРВінницька об., м.Вінниця
4912256↑ 59166.4КЗ Луцький НВК Гімназія № 14 імені Василя Сухомлинського Луцької МР Волинської об.Волинська об., м.Луцьк
5010353↑ 27167.1Гімназія № 136 м. Києвам.Київ, Дніпровський р.м.
515286↓ 9163.5КЗ Луцька гімназія № 21 імені Михайла Кравчука Луцької МР Волинської об.Волинська об., м.Луцьк
525788↓ 2163.3Гімназія Троєщина ІІ-ІІІ ст. Деснянського р. м. Києвам.Київ, Деснянський р.м.
5310887↓ 28163.5СШ № 89м.Київ, Печерський р.м.
5416535↑ 87169.6Запорізька гімназія № 6 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Комунарський р.м.
5511249↑ 39167.8Бориславська державна гімназія Львівської об.Львівська об., м.Борислав
5615444↑ 87168.1Запорізький ліцей № 105 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Олександрівський р.м.
5715881↑ 10163.9Житомирський міський ліцей при Житомирському державному технологічному університетіЖитомирська об., м.Житомир. Богунський р.м.
5816143↑ 203168.2Івано-Франківська СШ І-ІІІ ст. № 11 з поглибленим вивченням англійської мови Івано-Франківської МР Івано-Франківської об.Івано-Франківська об., м.Івано-Франківськ
5913024↑ 291173.5Ліцей ЕКО № 198м.Київ, Святошинський р.м.
6013170↑ 5164.9КЗ Школа-інтернат ІІ-ІІІ ст. Рівненський обласний ліцей Рівненської ОРРівненська об., м.Рівне
6117955↑ 72166.7Криворізький НВК № 129 Гімназія — ліцей академічного спрямування Криворізької МР Дніпропетровської об.Дніпропетровська об., м.Кривий Ріг. Довгинцівський р.м.
62167105↓ 49161.8Харківський ліцей № 161 Імпульс Харківської МР Харківської об.Харківська об., м.Харків. Фрунзенський р.м.
6360106↓ 28161.6Волинський ліцей-інтернат Волинської ОРВолинська об., м.Луцьк
6469152↓ 130158.3Білоцерківське навчально-виховне об’єднання «Ліцей-Мала академія наук» Білоцерківської МР Київської об.Київська об., м.Біла Церква
6523268↑ 141165.0Коломийський НВК № 9 Школа-природничо-математичний ліцей Коломийської МР Івано-Франківської об.Івано-Франківська об., м.Коломия
669062↑ 174165.7Гімназія № 315 з поглибленим вивченням іноземних мовм.Київ, Дарницький р.м.
67127102↓ 32162.0КЗ Маріупольський міський ліцей Маріупольської МР Донецької об.Донецька об., м.Маріуполь. Центральний р.м.
6862156↓ 107158.2НВК № 167 з поглибленим вивченням німецької мови (СШ І ступеня — гімназія) м. Києвам.Київ, Дніпровський р.м.
699659↑ 79166.0КЗ Обласна СШ-інтернат ІІ-ІІІ ст. Обдарованість Харківської ОРХарківська об., м.Харків. Орджонікідзевський р.м.
70160107↓ 50161.6КЗ освіти ліцей природничо-наукового навчання м.Жовті ВодиДніпропетровська об., м.Жовті Води
7111193↑ 23162.9КЗ Полтавський міський багатопрофільний ліцей № 1 ім. І.П. Котляревського Полтавської МР Полтавської об.Полтавська об., м.Полтава. Октябрський р.м.
72142104↓ 23161.9КЗ Харківський університетський ліцей Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
7313896↓ 6162.5Спеціалізована загальноосвітня середня школа № 1 з поглибленим вивченням іноземних мовЧернігівська об., м.Чернігів. Деснянський р.м.
74182194↓ 159156.0Херсонська СШ I-III ст.№ 24 із поглибленим вивченням математики, фізики та англійської мови Херсонської МРХерсонська об., м.Херсон. Суворовський р.м.
758590↑ 51163.1Славутицький ліцей Славутицької МР Київської об.Київська об., м.Славутич
76279111↑ 25161.4Хмельницький ліцей № 17Хмельницька об., м.Хмельницький
7718172↑ 170164.8Запорізький багатопрофільний ліцей № 99 Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Хортицький р.м.
78186207↓ 171155.4Приватний заклад Харківська приватна ЗОШ І-ІІІ ст. Лєствіца Харківської об.Харківська об., м.Харків. Київський р.м.
7914548↑ 214167.8КЗ освіти Фінансово-економічний ліцей Дніпровської МРДніпропетровська об., м.Дніпро. Амур-Нижньодніпровський р.м.
80209151↓ 50158.4СШ № 200м.Київ, Святошинський р.м.
8133160↑ 64165.9ЗОШ І-ІІІ ст. № 3 м. Кам’янка-Бузька Львівської об.Львівська об., м.Кам’янка-Бузька
82216115↑ 14160.6Сєвєродонецький багатопрофільний ліцей Сєвєродонецької МР Луганської об.Луганська об., м.Сєвєродонецьк
83325146↓ 75158.8Загальноосвітня СШ I-III ст.фізико-математичного профілю № 12 м. ЧерніговаЧернігівська об., м.Чернігів. Деснянський р.м.
847384↑ 213163.7Харківський технічний ліцей № 173 Харківської МР Харківської об.Харківська об., м.Харків. Комінтернівський р.м.
85202237↓ 174154.0Гімназія № 179 міста Києвам.Київ, Голосіївський р.м.
86234135↑ 17159.6Кременчуцький НВК ЗОШ І-ІІ ст. — ліцей № 4 Кременчуцької МР Полтавської об.Полтавська об., м.Кременчук. Автозаводський р.м.
8717576↑ 203164.2Дрогобицька гімназія імені Богдана Лепкого Дрогобицької МР Львівської об.Львівська об., м.Дрогобич
8858131↑ 73159.7Середній загальноосвітній заклад Слов’янська гімназіям.Київ, Дарницький р.м.
899454↑ 307166.8СШ № 173 Солом’янського р. м.Києвам.Київ, Солом’янський р.м.
90133122↓ 11160.1Івано-Франківська СШ І-ІІІ ст. № 5 з поглибленим вивченням німецької мови Івано-Франківської МР Івано-Франківської об.Івано-Франківська об., м.Івано-Франківськ
9122785↑ 236163.6СШ І-ІІІ ст. № 250 з поглибленим вивченням математики Деснянського р. міста Києвам.Київ, Деснянський р.м.
92225124↑ 60159.9СШ № 211 Оболонського р. м. Києвам.Київ, Оболонський р.м.
9327558↑ 342166.3Лубенська СШ І-ІІІ ст. № 6 Лубенської МР Полтавської об.Полтавська об., м.Лубни
9467110↑ 121161.4Львівський НВК ім. В. Симоненка з поглибленим вивченням німецької мови СШ І ступеня-гімназіяЛьвівська об., м.Львів. Франківський р.м.
95322109↑ 58161.5Запорізький колегіум Елінт Запорізької МР Запорізької об.Запорізька об., м.Запоріжжя. Дніпровський р.м.
96124323↓ 298150.8Львівська спеціалізована середня ЗОШ І-ІІІ ст. № 28 з поглибленим вивченням німецької мовиЛьвівська об., м.Львів. Галицький р.м.
97139262↓ 231153.0Новояворівський НВК ЗОШ ІІ ступеня — ліцей Яворівської РР Львівської об.Львівська об., м.Новояворівськ
98278103↑ 123162.0Київська інженерна гімназіям.Київ, Дарницький р.м.
9920582↑ 163163.8Роменська спеціалізована ЗОШ I-III ст.№ 1 імені П.І.Калнишевського Роменської МР Сумської об.Сумська об., м.Ромни
100199148↓ 5158.7КЗ Луцька гімназія № 4 імені Модеста Левицького Луцької МР Волинської об.Волинська об., м.Луцьк

Показати більше шкіл

** Примітка.У рейтингу враховуються тільки школи, які представили як мінімум три учні по кожному з цих предметів.

Найкращі загальноосвітні школи

Деякі викладачі мені вказували, що некоректно порівнювати загальноосвітні школи з гімназіями і ліцеями, оскільки у них відрізняється обсяг і складність матеріалу, що викладається, а також загальноосвітні школи позбавлені можливості відбирати найкращих учнів при зарахуванні. Однак багато загальноосвітніх шкіл примудряються показувати хороші результати і конкурувати зі спеціалізованими навчальними закладами. Нижче представлена двадцятка найкращих загальноосвітніх шкіл:

Загальний
рейтинг
Рейтинг
2018
Δ
18/17
Середній
бал 2018
ШколаРегіон
80102↓ 10168.9Бурштинська ЗОШ І-ІІІ ст. № 3 Бурштинської МР Івано-Франківської об.Івано-Франківська об., м.Бурштин
113211↓ 107164.0Борщівська ЗОШ І-ІІІ ст. № 2Тернопільська об., м.Борщів
15662↑ 409171.0Бережанська ЗОШ І-ІІІ ст. № 3 Бережанської МР Тернопільської об.Тернопільська об., м.Бережани
203282↓ 112161.9Школа І-ІІІ ст. № 78 Печерського р. м.Києвам.Київ, Печерський р.м.
240220↑ 125163.7Олеська ЗОШ І-ІІІ ст. Буської РР Львівської об.Львівська об., Буський р.
245335↓ 105160.5Середня ЗОШ І-ІІІ ступеня № 91 м. ЛьвоваЛьвівська об., м.Львів. Шевченківський р.м.
249149↑ 719166.0Свалявська ЗОШ І-ІІІ ст. № 2 Свалявської РР Закарпатської об.Закарпатська об., м.Свалява
260281↑ 154162.0Дрогобицька ЗОШ І-ІІІ ст. № 1 імені Івана Франка Дрогобицької МР Львівської об.Львівська об., м.Дрогобич
262234↑ 22163.2Середня ЗОШ І-ІІІ ст. № 48 м. ЛьвоваЛьвівська об., м.Львів. Франківський р.м.
295385↑ 16159.6Середня ЗОШ № 32 м. ЛьвоваЛьвівська об., м.Львів. Сихівський р.м.
2961376↓ 1354147.7ЗОШ І-ІІІ ступеня м. Берестечко Горохівського р. Волинської об.Волинська об., м.Берестечко
307130↑ 513167.1КУ Сумська ЗОШ І-ІІІ ст. № 15 імені Д. Турбіна, м. Суми, Сумської об.Сумська об., м.Суми. Ковпаківський р.м.
317519↓ 423157.2Підбірцівська ЗОШ І-ІІІ ст. Пустомитівського р. Львівської об.Львівська об., Пустомитівський р.
319599↓ 414156.0Харківська ЗОШ I-III ст.№ 150 Харківської МР Харківської об.Харківська об., м.Харків. Дзержинський р.м.
331319↑ 158161.0ЗОШ І-ІІІ ст. № 3 м. Кам’янка-Бузька Львівської об.Львівська об., м.Кам’янка-Бузька
332446↓ 124158.4Середня ЗОШ І-ІІІ ст. № 50 м. ЛьвоваЛьвівська об., м.Львів. Франківський р.м.
352420↓ 1158.9Рівненська ЗОШ І-ІІІ ст. № 23 Рівненської МРРівненська об., м.Рівне
354630↓ 394155.5Краматорська ЗОШ I-III ст.№ 22 з профільним навчанням Краматорської МР Донецької об.Донецька об., м.Краматорськ
363349↓ 54160.3Середня ЗОШ № 30 м.ЛьвоваЛьвівська об., м.Львів. Шевченківський р.м.
370541↓ 121156.8Борщівська ЗОШ І-ІІІ ст. № 1Тернопільська об., м.Борщів

Школи з високою позитивною динамікою в результатах

Я спробував з’ясувати, які школи забезпечують максимальне і стійке зростання результатів тестування. Наразі є можливість відслідковувати динаміку результатів починаючи з 2017 року. Два роки — малий період для виявлення трендів, але я все ж спробував це зробити. Нижче представлені двадцять шкіл з найвищою позитивною динамікою результатів за два роки:

Δ
17/16
Δ
18/17
Рейтинг
2018
Середній
бал
Кількість
випускників
Доля
успішних ЗНО
ШколаРегіон
↑ 3069↑ 5904331160.77100%ЗОШ І-ІІІ ст. с. Кукли Маневицького р. Волинської об.Волинська об., Маневицький р.
↑ 7739↑ 997702154.59100%Іванківська ЗОШ І-ІІІ ст.Тернопільська об., Борщівський р.
↑ 1404↑ 69761148149.83100%Урожайнівський НВК «Перспектива» «ЗОШ І-ІІІ ст. — ДНЗ» Остриківської СР Токмацького р. Запорізької об.Запорізька об., Токмацький р.
↑ 8135↑ 220916152.17100%Дмитрівська ЗОШ І-ІІІ ст. Каховської РР Херсонської об.Херсонська об., Каховський р.
↑ 1479↑ 68331208149.35100%Луганська ЗОШ І-ІІІ ст. Петрівської РРКіровоградська об., Петрівський р.
↑ 973↑ 7215695154.6796%Тахтаулівський НВК Полтавської РР Полтавської об.Полтавська об., Полтавський р.
↑ 5424↑ 23431814144.25100%НВК Сапанівська ЗОШ І-ІІІ ст. — ДНЗТернопільська об., Кременецький р.
↑ 938↑ 67931538146.38100%Махаринецька середня ЗОШ I-III ст.Вінницька об., Козятинський р.
↑ 241↑ 73272014142.63100%Тимошівська ЗОШ І-ІІІ ст. імені Кароля Шимановського Кам’янської МР Черкаської об.Черкаська об., Кам’янський р.
↑ 4135↑ 33091562146.23100%Савинківська ЗОШ I-III ст.Корюківської РР Чернігівської об.Чернігівська об., Корюківський р.
↑ 620↑ 68152007142.73100%Щасливська ЗОШ І-ІІІ ст. Олешківської РР Херсонської об.Херсонська об., Олешківський р.
↑ 3352↑ 40711863143.9690%Студеницька ЗОШ I-III ст.Коростишівського р. Житомирської об.Житомирська об., Коростишівський р.
↑ 4137↑ 32781510146.59100%Дубов’язівський НВК СШ І-ІІІ ст. — ДНЗ Дубов’язівської селищної ради Конотопського р. Сумської об.Сумська об., Конотопський р.
↑ 3504↑ 3907229163.47100%Плосківське НВО ЗОШ І-ІІІ ст. — ДНЗ Броварського р. Київської об.Київська об., Броварський р.
↑ 5266↑ 21131262148.7893%Великосамбірський НВК ЗОШ I-IIIст.- ДНЗ Конотопської РР Сумської об.Сумська об., Конотопський р.
↑ 1552↑ 56922455139.56100%Сугарівська ЗОШ I-III ст.Сахновщинської РР Харківської об.Харківська об., Сахновщинський р.
↑ 4875↑ 22712116141.71594%КЗ НВК Перспектива Таврійської СР Оріхівського р. Запорізької об.Запорізька об., Оріхівський р.
↑ 578↑ 6552946151.8796%Тридубська ЗОШ I-III ст.Кривоозерської РР Миколаївської об.Миколаївська об., Кривоозерський р.
↑ 5250↑ 1834654155.11698%Нововолинська ЗОШ І-ІІІ ст. № 8 Нововолинської МР Волинської об.Волинська об., м.Нововолинськ
↑ 2870↑ 4183760153.85100%Приколотнянська ЗОШ I-III ст. ім.ГерояРадянського Союзу К.Ф.Ольшанського Великобурлуцької РР Харківської об.Харківська об., Великобурлуцький р.

Як бачите, перші три школи зі списку піднялися за два роки більш ніж на 8 тисяч позицій! Вельми цікаво, що є причиною такого стрибка — статистична помилка через малу кількість випускників, праця викладачів, репетиторство або підтасування результатів?

Школи з високою негативною динамікою в результатах

Аналогічно можна спробувати з’ясувати, в яких школах відбувається максимальне і стійке падіння результатів тестування. Нижче представлені школи з найвищою негативною динамікою результатів ЗНО за два роки:

Δ
17/16
Δ
18/17
Рейтинг
2018
Середній
бал 2018
Кількість
випускників
Доля
успішних ЗНО
ШколаРегіон
↓ 8389↓ 670912978.8340%Кривошиїнське НВО ЗОШ І-ІІІ ст. — ДНЗ Сквирської РР Київської об.Київська об., Сквирський р.
↓ 3650↓ 4906898389.4458%Лагодинецька ЗОШ I-III ст.Красилівського р. Хмельницької об.Хмельницька об., Красилівський р.
↓ 6401↓ 11948366102.2878%Божиковецький НВК «ЗОШ І-ІІІ ст. — ДНЗ» Деражнянської РР Хмельницької об.Хмельницька об., Деражнянський р.
↓ 2491↓ 4985862198.2462%Стрілківська ЗОШ I-III ст.Генічеської РР Херсонської об.Херсонська об., Генічеський р.
↓ 6098↓ 1071879994.9663%Каришківська ЗОШ I-III ст.Вінницька об., Барський р.
↓ 3354↓ 3734895290.7553%Рекшинський НВК ЗОНЗ І-ІІІ ст. — ДНЗ Бережанської РР Тернопільської об.Тернопільська об., Бережанський р.
↓ 6545↓ 4217535110.7781%Дзвиняцька ЗОШ І-ІІІ ст.Тернопільська об., Борщівський р.
↓ 1773↓ 51778089105.3467%Зозулівський навчально-виховний комплепкс ЗОНЗ І-ІІІ ст.. ДНЗ Золочівської РР Львівської об.Львівська об., Золочівський р.
↓ 5267↓ 1666916370.5433%Плисківська ЗОШ I-III ст.Плисківської СР Чернігівської об.Чернігівська об., Борзнянський р.
↓ 899↓ 59767546110.6670%Львівська середня ЗОШ І-ІІІ ст. № 71 Львівської МР Львівської об.Львівська об., м.Львів. Личаківський р.м.
↓ 2194↓ 45578389101.9972%Костобобрівський заклад загальної середньої освіти I-III ст.Семенівської МР Чернігівської об.Чернігівська об., Семенівський р.
↓ 609↓ 61158200104.1569%ЗОШ І-ІІІ ступеня с. Березівка Радехівського р. Львівської об.Львівська об., Радехівський р.
↓ 3935↓ 2784881994.3364%ЗОШ І-ІІІ ст. с.Балабанівка, Оратівський район, Вінницька областьВінницька об., Оратівський р.
↓ 3381↓ 3329637109.81575%Ярмолинецька ЗОШ № 2 I-III ст.Ярмолинецької РР Хмельницької об.Хмельницька об., Ярмолинецький р.
↓ 5586↓ 10397577110.4670%Атюшівська ЗОШ I-III ст.імені Станіслава Ковтуна Коропської селищної ради Чернігівської об.Чернігівська об., Коропський р.
↓ 6369↓ 243891891.9464%Малотелковицький НВК ЗОШ І-ІІІ ст. — ДНЗ Володимирецької РР Рівненської об.Рівненська об., Володимирецький р.
↓ 3280↓ 3147879095.1567%Новомартиновицька ЗОШ І-ІІІ ст. Пирятинської РР Полтавської об.Полтавська об., Пирятинський р.
↓ 2597↓ 3801873596.1559%Нечаєвський НВК ДНЗ — ЗОШ І-ІІІ ст. Шполянської РР Черкаської об.Черкаська об., Шполянський р.
↓ 2086↓ 42957559110.51477%КЗ Полтавська ЗОШ І-ІІІ ст. № 28 Полтавської МР Полтавської об.Полтавська об., м.Полтава. Октябрський р.м.
↓ 1397↓ 49527513110.8483%Розважівська ЗОШ І-ІІІ ст.Київська об., Іванківський р.

Знову ж, у першої трійки з таблиці — падіння на 8 тисяч позицій. В принципі, можна списати на статистичну помилку через малу кількість випускників. Але що відбувається зі школою № 28 з Полтави, яка опустилася на 6 тисяч позицій за два роки?

Школи з найнижчими результатами

У наступній таблиці представлені школи з найнижчими результатами цього року:

Рейтинг
2018
Середній
бал
Кількість
випускників
Доля
успішних ЗНО
ШколаРегіон
918056.7322.22%Лопушнянська ЗОШ І-ІІІ ст. Вижницької РР Вижницького р. Чернівецької об.Чернівецька об., Вижницький р.
917957.71820.37%Магальська ЗОШ І-ІІІ ст. імені Григорія Нандріша Магальської СР Новоселицького р. Чернівецької об.Чернівецька об., Новоселицький р.
917859.8918.52%Тереблеченська ЗОШ І-ІІІ ст. Тереблеченської СР Глибоцького р. Чернівецької об.Чернівецька об., Глибоцький р.
917760.1520.00%Москалівська ЗОШ I-III ст.Ярмолинецького р. Хмельницької об.Хмельницька об., Ярмолинецький р.
917660.9428.57%Козубівська філія Доманівської загальноосвітньої школи I-III ст.№ 2 Доманівської селищної ради Миколаївської об.Миколаївська об., Доманівський р.
917562.1719.05%Нижньобистрівська ЗОШ І-ІІІ ст. імені Василя Вовчка Хустської РДА Закарпатської об.Закарпатська об., Хустський р.
917365.3333.33%Саханська ЗОШ I-III ст.Ширяївської РР Одеської об.Одеська об., Ширяївський р.
917265.54520.00%Їжівська ЗОШ І-ІІІ ст. Чудейської СР Сторожинецького р. Чернівецької об.Чернівецька об., Сторожинецький р.
917166.21230.56%Гатянська ЗОШ І-ІІІ ст. імені Ковача Вільмоша Берегівської РР Закарпатської об.Закарпатська об., Берегівський р.
916966.61926.32%Байраківський НВК Герцаївської РР Чернівецької об.Чернівецька об., Герцаївський р.
916867.4413.33%Великовеселівська ЗОШ I-III ст.Врадіївської РР Миколаївської об.Миколаївська об., Врадіївський р.
916767.7627.78%Чорноославський ліцей Делятинської селищної ради об’єднаної територіальної громадиІвано-Франківська об., Надвірнянський р.
916668.6333.33%Лукашівська ЗОШ I-III ст.імені Олега Чепеленка Близнюківської РР Харківської об.Харківська об., Близнюківський р.
916470.51440.00%Варівська ЗОШ І-ІІІ ст. з угорською мовою навчання ім. Ференца Ракоці ІІ Берегівської РР Закарпатської об.Закарпатська об., Берегівський р.
916370.5433.33%Плисківська ЗОШ I-III ст.Плисківської СР Чернігівської об.Чернігівська об., Борзнянський р.
916271.01440.48%Есенська ЗОШ I-III ст.Ужгородської РР Закарпатської об.Закарпатська об., Ужгородський р.
916171.3425.00%Старосолотвинська середня ЗОШ I-III ст.Бердичівської РРЖитомирська об., Бердичівський р.
916071.93630.56%Станівецький НВК Станівецької СР Глибоцького р. Чернівецької об.Чернівецька об., Глибоцький р.
915973.4733.33%КЗ освіти Сурсько-Михайлівська середня ЗОШ І-ІІІ ст. Солонянської РР Дніпропетровської об.Дніпропетровська об., Солонянський р.
915873.8832.00%Степненська ЗОШ І-ІІІ ст. Нижньосірогозької РР Херсонської об.Херсонська об., Нижньосірогозький р.

Як видно з таблиці, усі школи знаходяться в селах, причому частка успішних тестувань у них — від 13% до 40%. Сумно, що картина в селах не змінюється з часом: деякі школи знаходяться в самому кінці рейтингу з 2016-гороку.

Наостанок

Більше даних по рейтингу шкіл ви можете знайти в Google таблиці, де за допомогою інструментів сортування та фільтрації можна скласти свої рейтинги як з окремих предметів, так і по регіонах. Якщо і цього недостатньо, ви можете підготувати базу даних за допомогою масиву на GitHub.


DOU Проектор: Escapewithpro - наш досвід розробки travel-сервісу для бронювання турів

$
0
0

У рубриці DOU Проекторвсі охочі можуть презентувати свій продукт (як стартап, так і ламповий pet-проект). Якщо вам є про що розповісти — запрошуємо взяти участь. Якщо ні — можливо, серія надихне на створення власного made in Ukraine продукту. Питання і заявки на участь надсилайте на editors@dou.ua.

Привіт, я Андрій Шкіря. Зараз я займаюся проектом Escapewithpro — сервісом для пошуку та бронюванню авторських турів. Ось декілька вражень, які отримала наша команда в процесі створення сервісу, якими я і хочу з вами поділитися.

Спочатку кілька слів по себе. За понад 14 років в ІТ мені довелося працювати на різних позиціях та в багатьох проектах. Починалося все з проектів для державних організацій та підприємств, яких було досить багато. Потім проекти для великих приватних компаній, банків, а також створення власних продуктів. Усе це допомогло акумулювати багато різнопланового досвіду та розуміння специфіки роботи на кожній позиції — підходів до побудови як проекту, так і команди. Процес розробки виявився для мене найбільш цікавим, а весь отриманий досвід допомагає вирішувати будь-які складні виклики.

Скажу одразу Firebase — це фантастика. Ти отримуєш неймовірне відчуття, коли дані на сайті оновлюються без будь-яких перевантажень сторінки. Тобі не потрібно весь час слідкувати за актуальністю даних та намагатися зменшити надмірну кількість запитів тої самої інформації. Angular у свою чергу підкинув нам декілька дуже невтішних сюрпризів, але давайте по порядку.

Ідея

Минув майже рік відтоді, як наша команда вирішила змінити напрямок діяльності та спробувати себе в новому амплуа. Раніше ми займалися створенням рішень для корпоративних клієнтів та мали досить непогані успіхи та великий багаж досвіду за плечами. Тільки одна ситуація нас бентежила: не завжди створені нами продукти знаходили очікуваний відгук у кінцевого користувача. Причин тому було багато, починаючи з нерозуміння як замовником, так і виконавцем кінцевого результату, закінчуючи всілякими обмеженнями з боку корпоративних платформ та бізнес-правил. Ще нам здавалося, що коли ти працюєш безпосередньо з кінцевим користувачем, то все стає прозорішим і зрозумілим. Та і всі ми плекали надію зробити щось нове і невідоме, але круте і технологічне. Ось так з’явилася ідея створити продукт Escapewithpro — сервіс, де зібрані авторські тури від досвідчених мандрівників. Наразі на сайті можна здійснювати пошук та бронювання турів.

Реалізація

Першим викликом для нас був пошук правильної бізнес-ідеї та платформи для побудови продукту. Оскільки команда в нас невелика, необхідно було робити всім усе і одразу. Перед нами постало важливе питання кваліфікації та досвіду в різних сферах — як ІТ, так і організаційно-маркетингових. Виявилося, що зі всіма проблемами можна розібратися за досить короткий час, маючи під рукою інтернет, бажання та підтримку товариша в складну мить.

Для розробки був вибраний MEAN стек, але без Mongo. Обираючи Angular 2 (зараз уже 5) для клієнтської частини та Node.js для серверної навіть не роздумували довго, оскільки ми вже мали невеликий досвід у цих технологіях і результат нам подобався (у всіх технологіях є свої мінуси, але про це згодом). Одне хочу додати: якщо ви плануєте будувати щось серйозне, необхідно озброюватися серйозними інструментами.

З фреймворками розібралися швидко, а ось з БД було питання: як знайти гнучкий, швидкий та доступний механізм для збереження даних? Почався пошук та спроби знайти золоту середину. Ось тут ми і зрозуміли, що немає універсального інструмента на всі випадки життя. Неможливо вивчити одну технологію і за допомогою неї вирішувати всі питання. Кожен підхід має свої плюси і свої мінуси, і дуже важко одразу визначитися на 100% з правильним рішенням. У стартапі це просто неможливо, оскільки ти повинен швидко видавати більш-менш готове рішення для підтвердження гіпотез та швидко його змінювати з появою нових. Необхідно завжди бути готовим до змін і пошуку рішень, які досі здавалося неможливо знайти.

Ми зупинили вибір на сервісі Firebase, який включав у себе базу даних реального часу, хостинг, сховище для збереження статичної інформації, сервіс push-нотифікацій та сервіс авторизації. Цей достатньо потужний набір дозволив нам дуже швидко почати створювати наше концептуальне рішення та випробовувати його в реальних умовах. На додаток до всього він безкоштовний на початкових стадіях розробки та тестування, але в подальшому все ж таки доведеться платити. Хоча усе залежить від вашої моделі даних та їх використання.

У цілому база не дуже росте за обсягом. У нас за півроку набралося лише 8 МБ, але треба бути уважним із завантаженням даних на клієнт. Дані завантажуються кожен раз, коли ви перевантажуєте сторінку. Таким чином кожна нова сесія потребує нового завантаження, а це вже платний трафік. Безкоштовна частина складає 10 ГБ завантаження даних на клієнт за місяць, а далі — по одному долару за гігабайт.

Найбільше вражає у цьому сервісі real time. Редагування контенту та його динамічне завантаження без будь-якого дублювання. Це для нас було як магія. Рекомендую спробувати, ви не пошкодуєте. Тим паче для Angular використання дуже просте. Ми в своїй роботі користуємося модулем Angularfire.

Також існує дуже великий мінус при пошуку даних у базі. Неможливо знайти дані з декількох умов одночасно, і це підштовхнуло нас до подальших пошуків. Спочатку ми використовували Google Big Query для побудови фільтра, але зіткнулися з проблемою швидкості відповіді від сервісу. Вона була достатньо малою як для сервісу фільтрацій, тому що він створений для обробки великих масивів даних і швидкість відповіді в нього далеко не на першому місці. Ось і знову починаєш шукати рішення. Спочатку це дуже бентежило, а потім починаєш розуміти, що це нормальний процес і з кожною такою проблемою ти стаєш досвідченішим.

Урешті-решт ми зупинилися на Elasticsearch, який ми використовуємо для фільтрації всіх наших турів у реальному часі. Наразі в нас їх приблизно 200, але зі збільшенням обсягів зменшення швидкості не було помічено.

SEO для Single Page Application

Найбільш складним викликом у розробці виявилася доступність нашого рішення для пошукових ботів та шерінгу. Коли ми починали розробку, ніхто про це навіть не подумав, а варто було. На етапі тестової експлуатації постало перше просте завдання шарити посилання в соціальних мережах та усіляких месенджерах. Що може бути простіше — береш посилання та відправляєш. Але при публікації повинен з’явитися заголовок та опис і ще класна фотка, а в нас одне посилання.

Почали вивчати це питання, і виявилося, що в SPA (Single Page Application) пошуковий бот бачить лише index.html у всьому його мінімалізмі. Ми можемо додати og-теги автоматично, але ж нам потрібна індивідуальна картка для кожного нашого посилання.

Після нетривалих пошуків знайшли одне рішення, яке тоді здалося вирішенням усіх проблем, — Angular Universal. Це спеціальний модуль для серверного рендеренгу вашої сторінки та передачі клієнту вже готового html-файлу зі всім контентом та розміткою. Налагодити свій проект для використання цього модулю досить легко (в CLI 6.0 це виконується майже однією командою), але, як я вже казав, у нас проект уже на тестовій експлуатації з досить великою кількістю власних та сторонніх модулів.

Ми почали переносити та підлаштовувати нашу функціональність під серверний рендерінг. Декілька модулів на початку довелося зовсім видалити, а деякі переписати. Найскладнішим та зрештою і неможливим було змусити сторонні модулі коректно працювати на серверній стороні, оскільки вся сторінка повинна бути сформована на сервері, а це включає функціонування всіх необхідних модулів без браузера. Звичайно, є можливість визначити ті частини, які формуються на сервері, і ті, які вже в браузері, але тоді ми майже весь функціонал повинні відображати в браузері. Такий підхід виявився недостатнім, і після багатьох годин намагань ми почали шукати альтернативне рішення. І воно таки знайшлося. Дуже допомогла інформація, яку ми знаходили в процесі вирішення проблем із серверним рендерінгом.

Як я вже казав, нам необхідно було підготувати статичний контент для пошукових роботів у відповідності до посилання. Таким чином ми за допомогою Express.js опублікували наше рішення та почали обробляти всі запити, які надходили до index.html. У відповідності до запиту ми формували необхідні og-теги, статичний контент та вбудовували його в html-сторінку і віддавали її браузеру.

Після того як сторінка завантажувалася, відпрацьовували скрипти та будувалася повноцінна сторінка з необхідним нам контентом. У такому рішенні пошуковий бот отримував всю необхідну інформацію та відображав необхідні нам картки сторінок при шерінгу.

У подальшому постало питання індексації нашого сайту для доступності та просування в пошукових сервісах. Це завдання для нас було більш легким, оскільки в нас був уже готовий механізм. Нам потрібно було тільки додати умови визначення запитів та процес формування статичного контенту на сторінці. Також ми почали будувати файл sitemap.xml та додавати schema.orgрозмітку на сторінку, що дозволило пошуковим результатам виглядати більш презентабельно.

Наша команда

Ігор — засновник проекту. Він має вагомий досвід у сфері ІТ та декілька власних компаній з розробки програмного забезпечення. При цьому завжди любив подорожувати. Саме жага до подорожей та бажання допомогти людям побачити нетуристичні місця та подорожувати частіше надихнули його на створення цього проекту.

Андрій, тобто я, — CTO. Відповідаю за технології та інновації, напрограмував левову частку сайта. Роблю всілякі круті технологічні штучки, такі як швидке завантаження великих фото, миттєві фільтри й інше.

Толік — талановитий розробник. Зробив разом з Андрієм вже не одну систему. Завдяки йому користувачі можуть у нас на сайті чатитися, отримують SMS- і email-нотифікації. Він налагодив інтеграцію з ticketsUA, а незабаром ще буде онлайн-оплата.

Саша — працює з Pro (організаторами турів). Саме вона шукає найцікавіші пропозиції та найяскравіших організаторів мандрівок. Також Саша відповідає за комунікації з Pro і з користувачами.

Оля — відповідає за контент на сайті, PR та роботу з лідерами думок.

Проект стрімко розвивається, тому нещодавно до нашої команди приєдналася Таня. Вона займається зйомками відеоінтерв’ю, дизайном і маркетингом, включаючи Facebook, Instagram, YouTube.

Результати та плани на майбутнє

Майже за рік ми побудували онлайн-сервіс та досягли певних результатів:

  • кількість активних та унікальних турів — 130;
  • кількість тур-лідерів — 46;
  • за липень на сервіс зайшло більше ніж 10 000 користувачів;
  • кількість сторінок, які продивились користувачі у липні, — більше ніж 200 000.

Головні виклики, які нас спіткали:

  • постійний пошук інформації;
  • постійне вивчення нових технологій;
  • постійна зміна функціоналу;
  • робота в будь-який час та в будь-якому місці.

Плануємо додати до сервісу такі можливості:

  • пошук квитків;
  • онлайн-платежі;
  • побудова блогу;
  • створення конструктора тематичних сторінок.

Дякую за увагу. Пишіть, якщо було цікаво, та здавайте питання. Будемо тримати вас у курсі нових звершень.

«Як я провів літо 2018»: свята і заходи в українських IT-компаніях

$
0
0

Три літні місяці минули швидко. IT-шники за час встигли не тільки плідно попрацювати, але й активно відпочити на природі, а деякі — і відсвяткувати день народження компанії. Дивимося, як це було.

Якщо ви хочете додати свої фото у статтю, надсилайте їх на alyona@dou.ua.

Agiliway

«Справжній Техас» на корпоративній вечірці з нагоди третьої річниці компанії Agiliway. Весь день працівники компанії брали участь у різноманітних спортивних розвагах: футбол, настільний теніс, канатна доріжка. На завершення — запальна вечірка і святковий торт.

AltexSoft

AMC Bridge

Американська вечірка






Appus Studio

Цього літа команда Appus в образі піратів вирушила на невеликий острів на «Карибах» і поринула у світ таємниць та розслідувань.

B2B Soft

B2B Soft цього року традиційно обрали активний відпочинок! Літній корпоратив у заміському комплексі Sosnovel поєднав у собі спекотні моменти командного квесту, стрільбу з арбалетів, амфібія-драйв, челленджі на витривалість та командний дух, жарти, розваги та чудовий настрій!

Blackthorn Vision

Цьогоріч команда Blackthorn Vision розпочала літо драйвово! У червні відбулося святкування 9-гоДня народження компанії у відпочинковому комплексі — каталися на конях, їздили на квадроциклах, грали у пейнтбол і закінчили свято атмосферною вечіркою!




Brightgrove

Be bright! Be out of your mind! Із цим гаслом відпочивали співробітники Brightgrove Ltd. на вечірці в компанії лісових ельфів, фей та єдинорогів. Межа між реальним світом та казковим просто перестала існувати.

Caspio

Cleveroad

Цього року літній корпоратив Cleveroad зібрав дніпровський та харківський офіси разом. Протягом дня співробітники розгадували квести, грали у пляжний волейбол, купалися в річці, стріляли з луків та іншої зброї, розслаблялися з кальяном. А вечір закінчився піснями під гітару.




Cogniance

Свою літню вечірку компанія Cogniance провела на березі Дніпра. Було організовано чимало розваг, серед яких — гра на барабанах, створення власного дизайну футболок, похід під парусом. Кульмінацією вечірки став виступ гурту ТНМК і запальні танці.

CoreValue

CoreValue провела літній корпоратив — мексиканську вечірку «Let’s fiesta party!»

Daxx BV

Цього року в київському офісі Daxx провели Summer Party в тематиці літнього табору з командними змаганнями, естафетами, тімбілдиг активностями, волейболом та відпочинком біля басейну.

Daxx Харків Summer festival пройшов у дружній атмосфері, із майстер-класом з пайки роботів, турніром з великих хрестиків-нуликів та збірки розібраної клавіатури, душевними піснями під гітару ввечері і виступом кавер-групи «Take Five».

В Daxx Дніпрі організували Pool Splash Party в форматі вечірки біля басейну, брали участь у спортивних змаганнях, ліпили скульптури з піску, плавали на єдинорозі, отримали портрети-шаржі, а ввечері співали пісні під гітару.





Delphi Software

Компанія Delphi Software цього літа святкувала п’ятиріччя. Свято відбулося вже в традиційному родинному форматі. У програмі був інтерактивний квест, участь в якому взяли і великі, і малі гості.

Dev-Pro

Dev-Pro зібрала колег з усієї України на щорічну Summer Party. Талісманом вечірки став Моряк Попай, знаний мореплавець та герой. Команда поринула у морські пригоди у стилі vintage, позмагалася на кулінарному майстер-класі, пройшла квест та розважилась на концерті.

Edvantis

Піратська Чортова Дюжина, або святкуємо 13-тіроковини Edvantis.

EIS Group

Співробітники EIS Group були заарештовані за надмірний трудоголізм і засуджені до квесту суворого режиму. Після стилізованого квесту «Втеча з Шоушенка» усі пригощалися гриль-меню та ділилися яскравими враженнями.

ELEKS

Благодійний аукціон, танцювальні та вокальні перформанси від елексівців, конкурси, аквагрим, дискотека — такою була цьогорічна корпоративна вечірка ELEKS Super Power Party. За традицією колеги з усіх офісів зустрілись у Львові, аби разом провести цей день.

ElifTech

Exadel

14 липня #exadel_team вінницького та львівського офісів вирушила на екскурсію в Кам’янець-Подільський. Оглянули культові та оборонні споруди Старого міста та головну міську пам’ятку — старовинну фортецю. Почули безліч цікавих та захопливих історій мостобудівництва в древньому місті.

А «на вечерю» — Hawaiian party біля річки на території готелю «Ксенія»: святкові декорації, басейн із льодом, напої та фрукти, фуршет, квіткові гірлянди, пам’ятні сувеніри і корпоративні футболки. Увесь вечір «запалювали» ведучі: були конкурси, жарти, співи і танці. На другий день команду чекала двогодинна прогулянка на кораблі і обід у шатрі.

Exoft

Компанія Exoft відсвяткувала свою 5-турічницю у мексиканському стилі. Басейн, сомбреро, маракаси, тематична кухня і ексклюзивні коктейлі зробили вечірку справді гарячою. Також протягом святкування відбулося нагородження найбільш активних працівників півріччя цінними призами.

Forma-Pro

Компанія Forma-Pro цього року провела літній корпоратив у стилі «Time2Chill». Співробітники брали участь у різноманітних захопливих майстер-класах і спортивних змаганнях.

GeeksForLess

Команда GeeksForLess (львівський офіс) весело відпочила за настільними іграми, веселими розмовами та чудовою атмосферою.

У Києві на літньому корпоративі влаштували вітрильну регату, відпочинок біля басейну, волейбол, пінг-понг.




Grid Dynamics

Компанія Grid Dynamics відсвяткувала літній корпоратив та день народження компанії в Харкові та Львові. В обох містах було шоу тривалістю цілий день. Зранку спортивні активності та конкурси біля басейну, традіційно змагання з водного поло, а ввечері — танці.

HYS Enterprise

Компанiя влаштувала хiпi пiкнiк-вечiрку за мiстом iз запрошеною групою та хiтами 70-х.Риболовля, волейбол, катання на електросамокатi та купання в басейнi освiжили враження цього спекотного лiтнього вихiдного.

Infopulse

28 липня Infopulse організував літній захід із соціальним змістом. В цей день провели мітап, на якому говорили про екологію та волонтерство, зробили багато добрих справ: змайстрували 50 шкільних парт, стільчиків та бізібордів, запакували 100 подарункових наборів для вихованців Денишівського навчального реабілітаційного центру. «Вантажівка добра» — результат спільних зусиль команди Infopulse за один день! А також був спорт, конкурси, пригощання, музика і танці.

INSART

Цього року компанія INSART відзначила своє 25-річчя,відсвяткувавши в стилі Bollywood. Зони з нанесення мехенді, плетіння шамбали, гри на барабанах, йоги, зйомки справжнього фільму та інших активностей допомогли перенестися в INSART Bollywood Party! Завершенням стало яскраве холі!

Intego Group

Цього літа компанія InterLink відсвяткувала у Туреччині свій 18-йдень народження, продовжила традицію спортивного літа та провела серію літніх мітапів «Fun and Code».

Invisible

Для співробітників компанії Invisible.io активний відпочинок удень — запливи на каяках та сапах, футбол, водне поло, річкові прогулянки Дніпром, — чергувався з запальними вечірками у мексиканському стилі, фаєршоу та дискотеками на узбережжі. Не обійшлось і без зворушливих посиденьок біля вогнища.

Light IT

Наприкінці червня компанія Light IT зібралася під прапором Веселий Роджер, щоб провести свій корпоратив у піратській подорожі навколо Хортиці на справжньому піратському теплоході. То було свято з різноманітними конкурсами на логіку, знання та найкращі костюми пірата та піратесси, а також з аукціоном, призами та Джеком Горобцем (тобто, з капітаном Джеком Горобцем).

LoopMe

Цього року LoopMe 6 років! Відсвяткували цю подію на березі озера. Cпробували свої вміння на вейкборді, позмагалися з вітром на водних скутерах та згадали, як це — «відриватись» на водних атракціонах. На березі чекали коктейлі та музичні діджейсети. А на пам’ять у кожного залишилась футболка з власним LoopMe стилем.

Lucky Labs

Працівники Lucky Labs влітку відвідали Сполучені Штати... Пригод. На Гаваях насолоджувалися екзотикою, в Indian Village вчилися грати на барабанах, у Голлівуді зустрілися з Мерилін Монро та Маскою, а у Лас-Вегасі одружувалися з благословення Елвіса Преслі. Наприкінці свята дісталися до New York City, де на них чекав драйвовий Ляпіс та спокусливі Freedom Jazz.

Netcracker

Цього літа сумський офіс компанії Netcracker відзначив своє 12-річчя.Захід «12 стільців» за мотивами роману Іллі Ільфа та Євгена Петрова провели на базі відпочинку. «Заробили гроші» у тематичному квесті, шаховому турнірі, у грі «Лазертег», у різноманітних інтерактивах та витратили на омріяний «стілець» зі скарбами на аукціоні.

Perfectial

Компанія Perfectial продовжила традицію яскравих літніх вечірок, влаштувавши цьогоріч Summer Boom Party. Літо — час найбільшого розмаїття кольорів, тож це й стало темою вечірки, яка проявилася і в розвагах, і в різнокольоровому дрес-коді. Протягом цілого дня працівники компанії насолоджувалися відпочинком біля басейну, різноманітними конкурсами та змаганнями: з пейнтболу, волейболу, тенісу, а також майстер-класами з американського футболу та чірлідингу (Perfectial підтримує львівську команду Lviv Lions).

PNN Soft

Компанія PNN SOFT провела літній корпоратив весело і активно. У програмі були: турнір з волейболу, боулінг, більярд, настільний теніс, смачний фуршет та дружнє спілкування.

Poster

PROBEGIN

Чисте повітря, гірські прогулянки, карпатські гостинці... Це та багато іншого допомогло команді PROBEGIN зробити літнє «перезавантаження».

Quartile One

Sigma Software

Sigma Software American Dream party
Кожного року Sigma Software святкує свій день народження на початку літа. Цього року компанії виповнилось 16 років. Розпочали вечірку відзнаками та вітаннями з річницями тих, хто співпрацює з компанією найдовше. Святкували в найкращих традиціях Америки 60-хроків зі співами госпелу, рок-н-ролом, байками, квестами та вікторинами. Кожен знайшов собі розваги до душі. Взагалі, те що було в Лас-Вегасі, залишається в Лас-Вегасі :)




Sirin Software

Цього року у Sirin Software з’явився ще один офіс, тому свій 4-йДень народження компанія відзначила саме там. До місця святкування команду привів квест, де на співробітників чекав бар, частування та змагання на кшталт брейн-рингу.

Sitecore

SMART business

У червні SMART business святкував отриману нагороду 2018 Microsoft Partner of the Year Awards на BBQ-party, а в серпні, вже всьоме, компанія здійснила сімейну подорож. Цього року SMART business мандрував мальовничими Карпатами. 300 учасників Big Family Adventure підкорювали Говерлу, долали на рафтах пороги річки Чорний Черемош, надихались надзвичайною красою гір підчас забігу на Sunrise Run та наостанок влаштували найсонячнішу вечірку року.

Symphony Solutions

Компанія Symphony Solutions провела літню вечірку Peace&Love Festival в стилі хіппі.

Terrasoft

Компанія Terrasoft організувала корпоратив Accelerate Island. Команда провела вікенд на «острові», де на всіх чекали квестові випробування та вечірка з фарбами холі. На завершення — пісні під гітару коло багаття та ночівля в наметовому містечку :)

UKAD

Команда UKAD провела активний літній день на березі озера, оточеного сосновим лісом. На вечірці у форматі «family-friendly» веселилися учасники від 3 до 53 років. Квадроцикли, гідроцикли, величезна Дженга, твістер, майстер-класи та, звичайно, літнє сонечко і пляж.

UKEESS Software House

Vakoms

Команда Vakoms вирішила поєднати активний і пасивний відпочинок. На корпоративі встигли усе: і пограти у спортивні ігри, і в настільні, і розслабитись у СПА та позасмагати біля басейну. А головне — у крутій дружній атмосфері :)

YouScan

YouScan провел летний корпоратив в Болгарии, туда на викенд прилетели киевская и московская команды. За 4 дня успели покататься на яхте, поиграть в волейбол на пляже, обойти с десяток болгарских ночных клубов, «взорвали» местный аквапарк, съездили на экскурсию в соседний город и, полные впечатлений, вернулись домой.

YouScan провела літній корпоратив у Болгарії. Туди на вікенд прилетіли київська і московська команди. За 4 дні встигли покататися на яхті, пограти у волейбол на пляжі, обійти з десяток болгарських нічних клубів, «підірвали» місцевий аквапарк, з’їздили на екскурсію в сусіднє місто і, повні вражень, повернулися додому.

БАКОТЕК

Компанія BAKOTECH активно відсвяткувала літній корпоратив. Згуртованості і драйву сприяли чимало активностей: спортивні ігри, їзда верхи, гонки на квадроциклах, гольф, басейн, нагородженя «найвидатніших» співробітників і не тільки :)

Об автоматической генерации тестовых данных, или Зона комфорта для ваших тестов

$
0
0

Представьте себе ситуацию: однажды, придя на работу и проверив результаты ночного прогона автотестов, вы видите абсолютно красный отчёт. Копнув глубже, вы находите причину — заботливо созданные вами тестовые данные бесследно исчезли вместе с остальным содержимым базы данных. Разработчикам накануне срочно потребовалось очистить старые данные на тестовом окружении, но вас эта новость обошла стороной.

Дабы не впасть в отчаяние, ежемесячно подготавливая один и тот же набор тестовых данных, вы начинаете искать пути того, как можно облегчить себе жизнь. Наиболее логичное решение — сделать так, чтобы данные для тестов генерировались самостоятельно. Почему бы и нет? Осталось дело за малым — реализовать задуманное. О том, каким образом можно реализовать эту идею — далее в статье.

С чего начать

Итак, мы решили реализовать автоматическую генерацию данных для своих автотестов. С чего начать?

Чтобы не изобретать велосипед, лучше выбрать оптимальный подход и вооружиться существующими наработками. Какими именно? Вряд ли в сети вы найдете некий «Бесплатный-Супер-Инструмент», который совершенно случайно уже кто-то написал для вас и, приложив его к проекту аки подорожник, вы решите все свои вопросы. Здесь мы обратимся к существующим шаблонам проектирования. Они помогут нам грамотно реализовать свой модуль генерации данных, который будет легко внедрить в тестовый фреймворк. Но прежде чем обратиться к вопросу паттернов, стоит ознакомиться с основными понятиями.

  • Данные. Опираясь на объектно-реляционную модель, мы подразумеваем, что данные — это набор объектов и связей между ними.
  • Объекты, в свою очередь, — это некоторые сущности, которые обладают набором полей разного типа и могут иметь некоторые ограничения.
  • Связиопределяют зависимости между объектами и также могут накладывать ограничения на манипуляцию с ними (например, когда создание потомка без указания его предка невозможно).
  • Представление данных — описание структуры объектов, их полей и связей. Могут быть составлены в разных форматах: XML, JSON, YAML и т. д. Основываясь на модели представления, мы и будем генерировать наши данные.

Строй и компонуй

Теперь подходим к самому интересному. Допустим, нам на программном уровне нужно реализовать генерацию данных, основываясь на их представлении — древовидной иерархической структуре с описанием элементарных объектов и их взаимосвязей. У нас должна быть возможность получить всё дерево, а в последствии — обращаться к отдельным его частям. Также нам потребуются не только операции создания/удаления, но и изменения одного или сразу нескольких объектов.

Именно здесь мы прибегаем к помощи паттернов проектирования, а именно к паттернам Builderи Composite.

  • Builder pattern — порождающий шаблон проектирования. Предоставляет интерфейс для создания составного (сложного) объекта, отделяет логику конструирования объекта от его представления.
  • Composite pattern — структурный шаблон проектирования, объединяющий объекты в древовидную структуру для представления иерархии от частного к целому. Предоставляет клиентам возможность обратиться как к одному объекту, так и сразу к группе объектов через единый интерфейс.

Говоря простыми словами, используя Builderшаблон, мы реализуем генерацию, «строительство» сложного объекта, а Compositeпредоставит нам интерфейс для манипуляции с элементами дерева объектов.

Как это работает

Допустим нам нужно сгенерировать следующий набор объектов и связей:

  • Маркет — корневой объект, от которого наследуются все остальные. Маркетов может быть много, они никак не пересекаются между собой. Содержит такие поля, как market_id, name, country, is_active.
  • Компания — может существовать только в одном маркете. При этом маркет может содержать в себе много компаний, названия которых должны быть уникальны в рамках маркета. Содержит поля company_id, market_id, name.
  • Канал — может существовать только в одной компании, при этом компания может содержать в себе много каналов. Названия каналов должны быть уникальны. Также есть возможность включить опцию публикации постов и в текущий канал, и любой другой в текущем маркете. Содержит поля channel_id, company_id, state, is_secret, secret_phrase, can_share, share_to, main_image, name.
  • Пост — публикуется в канале, при этом канал может содержать в себе много постов. Заголовок поста необязательно должен быть уникален. Содержит поля post_id, channel_id, title, description, state, main_image.

Снизу представлен граф модели данных, где вершина 0 — маркет, в котором находятся две компании 1 и 2. В компании 1 опубликовано два канала — 10 и 4 с постами внутри каналов (5-9).В канале 10 включена опция возможности публикации постов в канал (4). Компания 2 не содержит в себе каналов.

Чтобы сгенерировать набор живых данных, основываясь на данной модели, нам нужно написать класс-строитель, который будет создавать необходимые объекты, начиная с корневой вершины графа, продвигаясь вниз по связям к дочерним объектам. Также нам нужно подготовить модель представления данных, которая будет взята за основу нашим билдером.

Таким образом, если нам, например, нужно создать новый канал во второй компании, мы вызовем что-то похожее на это:

builder_instance.build_channel(data_model, name=’News’, company_id=company_id)

Тогда наш builder_instanceподготовит модель данных для нового канала, предварительно заполнив все нужные поля, загрузит на бекенд картинку, получит её id и вставит в main_image поле, укажет, к какой компании прилинковать канал, и отправит запрос на создание сущности. Нас не должны заботить все эти детали реализации. Главное, что на выходе мы получим channel_id/channel_name, сгенерированного на основе описанной нами модели данных.

Схема сборки связки: Маркет — Компания — Канал — Пост внутри builder-класса

Теперь настало время выделить роль компоновщикаи его функции.

Допустим мы можем создать новый тестовый канал одной строкой. Но что делать, когда нам нужно создать не один, а, например, сорок каналов и всем установить параметрis_published = True?

Как раз чтобы не вызывать один метод сорок раз, нам и нужен компоновщик. Используя уже описанную выше модель, предположим, что теперь нам нужно опубликовать все посты в канале с определённым channel_id:

composite_instance.publish_posts(channel_id)

Компоновщик возьмет канал с указанным id из списка, созданного билдером, и в цикле, пройдя по списку постов в данном канале, на каждом вызовет: builder_instance.publish.post(post_id)

Таким образом, мы избегаем дубликации, а компоновщик в нашем случае выступает посредником между клиентским кодом и билдером, самостоятельно вызывая нужные методы объекта builder в зависимости от наших потребностей.

Кому-то может показаться излишним добавление еще одного уровня абстракции в лице компоновщика, ведь всю логику можно реализовать напрямую в билдере. Однако, если вы планируете в перспективе использовать строителя в качестве reusable компонента, к примеру, для написания на его основе API или DB тестов, то отсутствие дополнительной прослойки создаст вам ненужные препятствия в будущем.

В схемах, представленных выше, присутствует еще один компонент — Data Access library. Этот слой представляет собой уровень, который непосредственно отвечает за коммуникацию с приложением — создание и сохранение данных, например, посредством web API или напрямую в MS SQL. В моём частном случае генерация данных реализована через web API приложения, а в качестве библиотеки я использовал Python Requests — удобный модуль, работающий на основе urllib3 и позволяющий собрать запрос и получить ответ буквально в пару строк. Ознакомиться с возможностями Requests можно здесь. Также может так случиться, что вам нужно генерировать рандомные значения полей в красивом виде. Здесь нам поможет библиотека Faker, изначально написанная для PHP, но впоследствии портированная на Python и Java. Faker умеет генерировать рандомные имена, фамилии, адреса, email-адреса, номера телефонов, просто слова и т. д. Больше прочитать об этой библиотеке можно здесь, а если вы используете Java — загляните сюда.

Преимущества и недостатки подхода

Преимущества:

  • независимость тестов;
  • экономия времени;
  • удобство поддержки;
  • возможность повторного использования.

Недостатки:

  • удобство поддержки сильно зависит от реализации.

Выводы

Конечно, представленная схема не претендует на звание единственно верной и универсальной. Всё зависит от специфики проекта и ваших потребностей. Однако я думаю, что данную модель можно брать за основу, если вы размышляете над тем, как оптимизировать процесс подготовки ваших тестов и как сделать тесты более независимыми от внешних факторов. Таким образом, однажды потратив время на реализацию и внедрение, вы избавляете себя от лишних затрат в будущем, сведя все работы к небольшим коррекциям и расширению набора моделей данных в случае необходимости.

Ruby/Rails дайджест #21: релиз Rails 5.2.1, бета-версия Hanami 1.3.0, подборка материалов с конференции EuRuKo 2018

$
0
0

Всем привет!

В августе вышла стабильная версия Rails 5.2.1, а популярный тест-фреймворк RSpec обновился до версии 3.8. Сообщество Ruby продолжает изучать Ruby 2.6 — не пропустите серию статей от BigBinary. Чтобы быть в курсе последних тенденций в мире Ruby, посмотрите подборку видео с прошедшей в конце августа конференции EuRuKo 2018.

Почитать

Advanced client stubbing in the AWS SDK for Ruby Version 3 — подробная инструкция, как выполнять client stubbing в версии 3 AWS SDK для Ruby.

Finding where STDOUT/STDERR debug messages are coming from — как узнать, откуда поступают отладочные сообщения stdout и stderr.

Designing Services with dry-rb — как проектировать service objects при помощи библиотеки dry-rb.

Dependency Injection Containers vs Hard-coded Constants — узнайте, в чем разница между контейнерами внедрения зависимостей и hard-coded константами.

Indexes on Rails: How to Make the Most of Your Postgres Database — как ускорить работу Rails-приложения посредством оптимизации индексов в PostgreSQL.

Statements and Expressions in Ruby — разбираем statements и expressions в Ruby на примере кода из гема Sequel.

Adding Code Quality Checks To Your Ruby Test Suite — новичками будет полезно узнать, как добавить инструменты статического анализа кода в набор тестов Rails-приложения.

Rails and the Single Responsibility Principle — насколько Single Responsibility Principle (первый из принципов SOLID) соотносится с фреймворком Ruby on Rails.

Migration from the Wordpress to the own Ruby blogging engine — pros and cons — автор рассказывают о плюсах и минусах перехода с Wordpress на написанную им самим блог-платформу на Ruby.

The Case of the Flaky Test Suite — автор делится опытом работы с набором Flaky тестов в Rails-приложении.

Visualize Ruby Execution — как отобразить выполнение кода на Ruby.

Runtime Introspection in Ruby — автор показывает, как провести интроспекцию методов, переменных и объектов в Ruby.

Ruby Memory Profiling in Practice — краткий гайд по профилированию памяти в Ruby.

Flexible Ruby on Rails Reader Objects — автор на примере показывает, как использовать reader objects в приложении на Rails.

Clean Module Injection in Ruby — как применить monkeypatching посредством внедрения модуля в Ruby и какие преимущества это дает.

The Curious Incident of the Shadow in the Run-Time — узнайте о «подводных камнях» сокрытия переменных в Ruby.

Scaling at Instacart: Distributing Data Across Multiple Postgres Databases with Rails — разработчик из компании Instacart делится опытом масштабирования баз данных PostgreSQL в Rails-приложении.

Testing APIs in Ruby: An overview — автор на основе собственного опыта перечисляет несколько способов тестирования API клиентов в Ruby.

Rails Console Magic Tricks — семь полезных «трюков», которые упрощают работу со встроенной в Rails консолью.

Best image uploader for Rails — Revisited — автор на основе собственного опыта перечисляет лучшие загрузчики файлов для Rails.

Подборка от Andy Croll

Delegate to simplify your code — как избавиться от избыточного кода при помощи метода delegate компонента Active Support.

Use the presence method — как и зачем использовать метод presence компонента Active Support.

Подборка от Appfolio Engineering

How Can I Use Ruby 2.6 JIT?— презентация Noah Gibbs на конференции Southeast Ruby.

Does ActionCable Smell Like Rails?— разбираемся, что такое Action Cable и как его использовать для работы с WebSockets.

Rake Does What?: A Debugging Story — автор рассказывает об ошибке, связанной с Rake, при обновлении одного из проектов до Rails 5.0 и продолжает детально разбирать причину ошибки в статье Ruby’s Main Object Does What?

Подборка от AppSignal

Changing the Way Ruby Creates Objects — автор описывает, как изменить поведение создания объектов в Ruby.

Ruby gem 2.7: Improvements and bug fixes — что нового в версии 2.7.0 гема AppSignal.

Rails Collection Caching — collection caching в Ruby on Rails.

Push and Pub/Sub in Ruby — как создать Rails-приложение, которое передает данные при помощи модели Publish/Subscribe.

Подборка от BigBinary

Setting up a high performance Geocoder — учимся настраивать геокодирование при помощи гема Geocoderв Rails-приложении.

Продолжение цикла о Ruby 2.6:

Подборка от Codemancers

Ruby 2.5 adds KeyError#receiver and KeyError#key — в Ruby 2.5 добавлены методы KeyError#receiver и KeyError#key, которые упрощают исправление ошибок в коде.

Ruby 2.6 KeyError#initialize accepts message, receiver, and key as arguments — в Ruby 2.6 метод KeyError#initialize принимает аргументы message, receiver и key.

Подборка от Codeship

Familiarize Yourself with Ruby String Encoding — детальный разбор различных способов кодировки строк в Ruby.

Microservices Messaging: Why REST Isn’t Always the Best Choice — статья посвящена настройке взаимодействия между микросервисами.

Подборка от Drivy Engineering

Security tips for rails apps — полезные советы, как улучшить безопасность приложения на Rails.

Exporting significant SQL reports with ActiveRecord — автор рассказывает, как была решена проблема чрезмерного расходования памяти при экспорте «тяжелых» SQL-отчетов.

Подборка от Imaginary Cloud

Protecting a Rails App with Passenger and Nginx — учимся защищать Rails-приложение паролем, используя Passenger и Nginx.

Node.js and Ruby on Rails: a Comparison — сравнение технологий: Node.js+Express.js или Ruby on Rails.

Подборка от Matt Bessey

Rails + React Server Side Rendering, with Webpacker + Hypernova — в этом туториале автор показывает, как осуществить серверный рендеринг React в приложении на Rails при помощи инструментов Webpacker и Hypernova.

Pre-fetching Data for Apollo GraphQL Client — дополнение к предыдущей статье; автор объясняет, как экспортировать GraphQL запросы из компонентов React, чтобы использовать их в Rails-приложении.

Подборка от Mehdi Farsi

The Enumerable module in Ruby: Part II — вторая статья, посвященная модулю Enumerable в Ruby.

Context Binding in Ruby — что такое context binding и как его использовать в Ruby.

OpenStruct in Ruby — разбираемся, что такое класс OpenStruct в Ruby.

Struct in Ruby — изучаем класс Struct и типы структур в Ruby.

The autoload method in Ruby — как использовать метод autoload в Ruby.

Статьи, посвященные исправлению ошибок в Ruby:

Подборка от Reflektive

From Service Objects to Interactors — инструкция, как реализовать Service Object Pattern при помощи гема Interactor.

Validators for Interactors — читайте, как реализовать валидацию данных в интеракторах.

Подборка от RubyGuides

The Ultimate Guide to HTTP Requests in Ruby — освежаем в памяти, какими способами можно отправлять HTTP запросы в приложении на Rails.

Solving the N-Queens Problem With Ruby — упражнение для ума — решаем задачу об N-ферзях при помощи Ruby.

Fast Lookup & Unique Elements With The Ruby Set Class — что такое sets в Ruby, как их использовать, а также в чем их отличие от arrays.

Подборка от Tom Copeland

Invalid or incomplete POST parameters — автор разбирает ошибку, связанную с неправильными или неполными POST параметрами.

Safer JSON munging — как проще и безопаснее вносить изменения в JSON-файлы.

Подборка от Tomas Valent

Ruby logs and puts not shown in docker container logs — что делать, если логи Ruby не отображаются в логах контейнеров Docker.

Back to the primitive. Testing with simplicity — автор делится простым способом написания тестов в Rails.

How to configure RSpec in Ruby on Rails — новичкам будет полезно узнать, как настроить тест-фреймворк RSpec в Ruby on Rails.

Convert string «true» and string «false» to boolean with Rails — как превратить строки true и false в булевы выражения в Rails.

Factory Bot trait for attaching Active Storage has_attached — как создать Factory Bot объект с файлом, прикрепленным с помощью Active Storage, используя метод trait.

Metaprogramming Ruby cheatcheat — шпаргалка по метапрограммированию в Ruby.

Is Rails still relevant in 2018?— автор делится мнением об актуальности Ruby on Rails в 2018 году.

Google Maps in Rails with Coffee Script — простой гайд, как интегрировать Google Maps в приложение на Rails.

Подборка от Богдана Деньковича

References to changes in Rails 5.2 — подборка ссылок о новшествах в Rails 5.2.

Array#extract! to Active Support 6.0 — автор показывает, как добавить метод Array#extract! В Active Support 6.0.

Туториалы

Upgrade Rails from 5.1 to 5.2 — как обновить приложение с Rails 5.1 до Rails 5.2.

Configuring Circle CI 2.0 for a Real Rails Application — краткий туториал по настройке CircleCI 2.0 для приложения на Rails.

Discover Rails: Active Record — автор показывает, как создать собственный Active Record в Rails.

Build a collaborative playlist over WhatsApp with Rails, Twilio, and Spotify — подробная инструкция, как создать совместный плейлист для WhatsApp при помощи Rails, Twilio и Spotify.

How to use trained Keras and TensorFlow machine learning models within Ruby on Rails — подробная инструкция, как интегрировать построенную при помощи Keras и TensorFlow модель машинного обучения в приложение на Rails.

How I Write Model Tests (Part 1) — автор подробно рассказывает, как писать тесты моделей в RSpec.

Using development dependencies from git in your gem — если вы пишете гемы, то вам полезно будет узнать, как использовать код с GitHub в качестве development dependencies.

Learning How To Deploy Rails — как развернуть Rails-приложение при помощи таких инструментов, как Nginx, Passenger и Capistrano.

Connecting to the Apple Music API from a Ruby (on Rails) application — учимся интегрировать Rails-приложение с Apple Music API.

Writing a Gem with native extensions — автор показывает, как написать гем с нативными расширениями.

Password Generation in Ruby and Rust — сравниваем, как реализовать генерацию паролей в Ruby и Rust.

Релизы

Rails 5.2.1 — вышла стабильная версия 5.2.1 фреймворка Ruby on Rails.

Hanami v1.3.0.beta1 — релиз первой бета-версии v1.3.0.beta1 фреймворка Hanami.

RSpec 3.8 — выкатили новую версию 3.8 популярного тест-фреймворка RSpec.

RubyMine 2018.2.2 (build 182.4129.29) — компания JetBrains представила новую сборку RubyMine 2018.2.2.

Ruby Gems

Paraspec — гем запускает RSpec тесты в несколько потоков, ускоряя тестирование кода.

SidekiqLogAnalyserгенерирует отчет воркеров Sidekiq на основе лог-файла.

События

Ruby Meditation #23 — 15 сентября в Одессе пройдет Ruby Meditation #23; среди спикеров будет Nick Sutterer — создатель фреймворка Trailblazer.

Rails Girls Poznan — 21 и 22 сентября в польском городе Познань пройдет бесплатный двухдневный воркшоп Rails Girls.

Послушать

Ruby Testing Culture with Jason Swett — ведущий и гость подкаста обсуждают культуру тестирования в Ruby.

The Bike Shed

165: The Tables Have Turned — ведущие затрагивают множество тем — от CI/CD до структуры команды разработчиков.

166: Are Services the New Rewrite?— основная тема подкаста — Service Oriented Architecture (SOA).

167: I Feel Like We Should’ve Solved This By Now — ведущий и гость подкаста German Velasco обсуждают удаленную работу, языки программирования Elixir и Erlang, блокчейн и Ethereum и многое другое.

Ruby Rogues

RR 374: Ruby 2.5 Enumerable Predicates Accept Pattern Argument with Prathamesh Sonpatki — главная тема подкаста — Rails 5.

RR 375: How to Contribute to Ruby with Sihui Huang — гость подкаста — Sihui Huang из компании Gusto — рассказывает о своем опыте разработки на Ruby.

RR 376: Ruby Performance with Nate Berkopec — участники дискуссии обсуждают производительность Ruby, а также многие другие интересные темы.

RR 377: Upgrading a Rails application incrementally with Luke Francl — ведущие и гость подкаста Luke Francl из команды GitHub обсуждают множество тем, в том числе обновление приложений на Rails и покупку GitHub компанией Microsoft.

RWpod

The Ruby Testing Podcast

Episode 5 — How Brittany Martin Got Started with Programming and Testing — гость подкаста — Brittany Martin — рассказывает о своей карьере в тестировании и разработке на Ruby.

Episode 6 — Continuous Integration/Deployment/Delivery with Marko Anastasov — подкаст посвящен continuous integration/delivery/deployment.

Episode 7 — Testing Anti-Patterns with Kostis Kapelonis — ведущий и гость обсуждают, как не надо тестировать ПО.

Посмотреть

Подборка видео с конференции EuRuKo 2018:

Выпуски GoRails в августе, в которых ведущий показывает, как реализовать реферальную программу с нуля и с помощью Stripe, как подписывать Stripe webhooks, а также как добавить автообнаружение часового пояса в приложении на Rails:

Подборка платных скринкастов от Drifting Ruby за август:

Выпуски платных скринкастов от Ruby Tapas в августе:


Касательно тем/материалов/ивентов, которые стоит добавить в следующий выпуск дайджеста, пишите в комментариях или на volodymyr.vorobiov@rubygarage.org. Спасибо за помощь в подготовке дайджеста команде RubyGarage.


← Предыдущий выпуск: Ruby дайджест #20

C++ дайджест #7: оновимо знання з Qt

$
0
0

Привіт, мої любі сішники! Цього разу пропоную оновити знання з Qt, як завжди, переглянути кілька нових статей із С++ та новини про улюблені інструменти для розробки. Починаємо? :)

Qt

Згадуючи про Qt, неможливо не відмітити її чудову документаціюз детальними прикладами, найкращими практикамита описом можливостей аналізу коду.

В Qt4 UI базувався в основному на Qt Widgets, а ось Qt5 вже заполонив Qml. Щоб нам було цікавіше дискутувати, що ж краще — у нас є табличка з порівнянням Qt Quick, Qt Widgets та Qt WebEngine :)

Щодо Qml — гарний опис також можна знайти в QmlBook.

Про улюблену фічу від Qt — сигнали та слоти — написано багато. Пропоную поглянути на серію статей: part 1, part 2, part 3, part 4, — в яких детально описується принцип роботи та перехід до нового синтаксису (Qt4 до Qt5). Про багатопоточність у Qt можна прочитати тут.

В останній версії Qt 5.11 ми отримали список змін для класів та функцій (про деякі вже є що почитати: QStringView в Qt, CUPS features, зміни в model/view API (checkIndex) ) та очікуємо на нові фічів Qt 5.12.

У жовтні планується проведення Qt World Summit.

Modern C++

noexcept: специфікатор та оператор

std::string view

Spaceship оператор

Багатопоточність

Корисні посилання

Список iдiом в С++

Recap Vimfest 2017

Інші новини

У цьому місяці маємо такі оновлення:

Відео

Пропоную розглянути, що таке Qt Design Studio та як цим інструментом можна користуватись: part 1, part 2, part 3, part 4, part 5.

Цiкавенькi книги

Hands-On GUI Programming with C++ and Qt5 — нова книга по Qt

Computer Vision with OpenCV 3 and Qt5

Qt 5 Projects: Develop cross-platform applications with modern UIs using the powerful Qt framework

Learn Qt 5

C++17 in Detail

Для новачків

Qt — getting Start — чудовий ресурс для тих, хто хоче почати вивчення Qt.

Хвилиночка флуду

Bjarne Stroustrup Oral History


← Попередній випуск: C++ дайджест #6

Viewing all 8789 articles
Browse latest View live


<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>