company_banner
  • Разгоняем бэкап. Лекция Яндекса

      Несколько ближайших лекций будут по мотивам первого Я.Субботника по базам данных, который состоялся весной. Сначала на Я.Субботнике выступил разработчик Андрей Бородин. Он рассказал о WAL-G — простом и эффективном инструменте для резервного копирования PostgreSQL в облако, а также об алгоритмах и технологиях, которые позволяют WAL-G создавать бэкапы быстрее. Главная особенность WAL-G — дельта-бэкапы. Из лекции вы узнаете об их реализации и о том, как поддержка этой технологии развивается в PostgreSQL.


      — Привет! Я разработчик в Яндексе из Екатеринбурга. К технологиям быстрого бэкапа. Бэкапом мы занимаемся довольно давно, были доклады Владимира Бородина и Евгения Дюкова о том, как мы исследуем и что разрабатываем, чтобы хранить данные безопасно, надежно, удобно и эффективно. Эта серия посвящена последним наработкам в указанной области.

      Поговорим про бэкапы в PostgreSQL в принципе. Стандартная утилита для переноса данных — pg_dump — определяется как консольная утилита, создающая файл с логическим представлением ваших данных.
      Читать дальше →
    • Как выявлять и развивать таланты в IT: результаты первого Team Leader meetup

        24 января 2018 года в Яндексе прошёл первый Team Leader meetup. Мероприятие посетили в общей сложности порядка семидесяти руководителей разработки из различных компаний.


        Мы хотели, чтобы участники встречи были активно вовлечены в дискуссию, поэтому сразу выбрали в качестве основного формат панельной дискуссии в противовес стандартным презентациям. Таким образом, в разговоре участвовали сразу несколько экспертов из ведущих IT-компаний: Яндекса, Mail.Ru, Skolkovo Foundation, Phillips Innivation Labs RUS, 1C GAMES STUDIO. У слушателей в зале была возможность реагировать на высказывания экспертов при помощи специального бота, который демонстрировал их эмоции в реальном времени на специальном экране, расположенном прямо в зале.


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


        С момента первой встречи прошло уже несколько месяцев, и мы, наконец, готовы поделиться её результатами.


        Читать дальше →
        • +26
        • 6,2k
        • 3
      • ML-Блиц: разбор задач первого квалификационного раунда

          23 июня 2018 года состоялся финал ML-Блица, конкурса по машинному обучению, организованного Яндексом. Ранее мы анонсировали его на Хабре и рассказывали, какие примерно задачи могут встретиться на реальном соревновании.


          Теперь мы хотим поделиться с вами разборами задач одного из квалификационных раундов — самого первого. Двое участников сумели решить все задачи этого соревнования; 57 участников решили хотя бы одну задачу, а 110 совершили хотя бы по одной попытке сдать задание.


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


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


          Все мои решения доступны на GitHub


          image

          Читать дальше →
        • Выявление и классификация токсичных комментариев. Лекция в Яндексе

            Во всех современных системах модерации используется либо краудсорсинг, либо уже ставшее классикой машинное обучение. На очередной тренировке по ML в Яндексе Константин Котик, Игорь Галицкий и Алексей Носков рассказали о своём участии в конкурсе по массовому выявлению оскорбительных комментариев. Конкурс проходил на платформе Kaggle.


            — Всем привет! Меня зовут Константин Котик, я data scientist в компании «Кнопка жизни», студент физфака и Высшей школы бизнеса МГУ.
            Читать дальше →
          • Практический видеокурс Школы информационной безопасности

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

            В апреле этого года мы впервые провели бесплатную Школу информационной безопасности. Лекции в школе подготовили и прочитали сотрудники службы ИБ Яндекса — те специалисты, которые непосредственно отвечают за защиту наших продуктов. Мы получили более 700 заявок, 35 человек успешно закончили школу, 9 из них получили офферы в Яндекс (7 — на позицию стажёра, 2 — на штатную позицию).

            Сегодня мы публикуем видеокурс со всеми лекциями Школы. Вы можете почерпнуть те же знания, что и студенты — разве что интерактива поменьше и не нужно делать домашнее задание. Для просмотра стоит знать хотя бы один язык программирования (JS, Python, C++, Java), на начальном уровне разбираться в принципах построения и работы веб-приложений, понимать принципы работы операционных систем и сетевой инфраструктуры, а также основные типы атак и виды уязвимостей.


            Надеемся, этот курс прокачает вас в роли специалиста по ИБ, а также поможет защитить ваши сервисы от утечек данных и атак злоумышленников.
            Читать дальше →
            • +23
            • 18,1k
            • 3
          • Как построить защиту от фрода в масштабах корпорации. Лекция на YaC 2018

              29 мая прошла Yet another Conference 2018 — ежегодная и самая большая конференция Яндекса. На YaC этого года было три секции: о технологиях маркетинга, умном городе и информационной безопасности. По горячим следам мы публикуем один из ключевых докладов третьей секции — от Юрия Леонычева tracer0tong из японской компании Rakuten.


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

              Читать дальше →
            • Как Яндекс создавал первое устройство с Алисой. Яндекс.Станция на базе технологии IO



                Несколько минут назад на конференции YaC 2018 мы впервые рассказали о Яндекс.Станции. Это первое мультимедийное устройство с Алисой, которое воспроизводит музыку и фильмы, рассказывает детям сказки, помогает в повседневных делах, а также поддерживает навыки от сторонних разработчиков.

                Может показаться, что для создания подобных устройств достаточно взять голосового помощника, добавить к нему простой микрофон из смартфона и спрятать всё это в корпусе недорогой аудиоколонки. На практике перед разработчиками подобных систем стоят серьёзные технологические проблемы, о решении которых в Станции мы и расскажем сегодня читателям Хабра. Вы также узнаете, что именно представляет собой технологическая платформа Yandex.IO, на основе которой и создано устройство.
                Читать дальше →
              • Яндекс.Блиц: машинное обучение

                  Не так давно мы проводили Яндекс.Блиц – соревнование по алгоритмическому программированию. Соревнование удалось: в финал пробилось более трёхсот участников, из которых двое сумели решить все предложенные задачи! Двадцать финалистов приехали в офис Яндекса, познакомились с руководителями различных сервисов и больше узнали об устройстве современных поисковых систем.


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


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


                  Квалификацию ML-блица можно будет пройти с 11 по 17 июня, а 23 июня состоится финал. Итоги соревнования будут подведены 25 июня. Для участия необходимо вовремя зарегистрироваться!


                  image

                  Читать дальше →
                • Как мы нанимаем с помощью буткемпа. Опыт отдела поисковых интерфейсов

                    Нанимать сложно. Нанимать на потоке много человек в месяц ещё сложнее.


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


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

                    Читать дальше →
                    • +32
                    • 5,3k
                    • 4
                  • Как ускорить мобильный поиск в два раза. Лекция Яндекса

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


                      — Всем привет, меня зовут Иван Хватов, я работаю в инфраструктуре поиска. Последнее время работаю над ускорением загрузки поисковой выдачи. Работаю с версткой, командами бэкэнда и доставкой трафика. Сегодня расскажу, как мы ускоряли мобильный поиск, какие техники мы применяли, успешные и неуспешные. Они неуникальны для нас. Что-то, возможно, сможете попробовать вы сами. Расскажем про наши неуспехи, чему мы на них научились и как пришли к адаптации верстки в зависимости от скорости соединения.
                      Читать дальше →
                      • +41
                      • 6,6k
                      • 2
                    • Безопасный каршеринг: составляющие, основные проблемы и конкурс Яндекса

                        Запущенный в феврале Яндекс.Драйв, как и любой сервис каршеринга, работает благодаря комплексу уникальных систем — в автомобиле, в телефоне пользователя и на сервере. Система, которая ещё недавно была в новинку для IT-сообщества, расположена в самой машине. Она включает в себя несколько девайсов — блок телематики, CAN-шину и мультимедийное оборудование. Подробнее о том, как всё это коммуницирует между собой, я и хочу вам рассказать. Кроме того, я объясню, почему именно сейчас компании и эксперты по безопасности должны уделять максимум внимания защите каршеринговых сервисов. Дело в том, что это не просто yet another приложения в вашем телефоне, а целая взлётная полоса для автомобильной индустрии завтрашнего дня.



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

                        Те, кто обнаружит самую серьезную проблему, получат от Яндекса полмиллиона рублей. Приз за второе место — 300 000 рублей, за третье — 200 000 рублей. О деталях я расскажу чуть ниже, а пока вернёмся к устройству каршеринга.
                        Читать дальше →
                      • Лекция о Толоке. Как тысячи людей помогают нам делать Яндекс

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

                          С одной стороны, Толока появилась сравнительно недавно — в 2014 году. С другой, она служит важнейшей частью всех ключевых сервисов Яндекса и десятков сервисов поменьше. Артём Григорьев ortemij объяснил, как эта краудсорсинговая платформа устроена, какие технологии и архитектурные решения применяются при её разработке. Кроме того, Артём рассказал про логику раздачи заданий пользователям, работу с геоданными на карте и управление качеством.


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

                            Прошедший в январе в Яндексе Team Leader Meetup подарил нам не только два часа видео, но и тему второй встречи, которые выбрали участники встречи в специальном чате. Говорить мы будем, как понятно из заголовка, об автоматизации разработки.




                            Выбор инструментов автоматизации во многом зависит от размеров команды, поэтому важно отслеживать их эволюцию с учётом роста небольшого стартапа до огромной, компании, которая сама создаёт инструменты для разработки. Чтобы понять, с чем в таком случае столкнутся руководители команд, мы задали несколько вопросов нашим экспертам, среди которых, Иван ginkage Подогов, Роман shadart Пузиков, Сергей profitware Собко, Алексей alexmog Могилевский.


                            1. Предположим, вы решили открыть свой стартап. В нём на старте работает небольшая команда (пять программистов). Какие инструменты автоматизации разработки вы внедрите?
                            2. Стартап зажёг! Теперь в нём работает очень много людей. Что изменится? Что добавится?
                            3. Какой несуществующий инструмент (или даже тип инструмента) вам был настолько нужен, что вы не выдержали и сделали его для себя сами?

                            Читать дальше →
                            • +32
                            • 14,4k
                            • 4
                          • Эффективная онлайн-оценка качества при разработке веб-сервисов. Лекция Яндекса

                              Разработка сервисов сейчас базируется на оценке их качества. Чтобы оценить взаимодействие пользователей с продуктом, проводятся онлайн-эксперименты, и только потом принимаются решения о запусках и обновлениях. Например, в 2015 году Google ежедневно проводил до 1000 подобных экспериментов. Растёт и число небольших компаний, которые используют AB-тестирование. На очередной встрече «Яндекс изнутри» разработчик-исследователь Алексей Друца рассмотрел современные математические методы, лежащие в основе платформ для онлайн-оценки.


                              — Мой доклад будет про онлайн-оценку качества для эффективной разработки веб-сервисов. Сначала расскажу о нашей команде, о том, чем мы занимаемся.
                              Читать дальше →
                              • +27
                              • 3,4k
                              • 1
                            • Управление проектами машинного обучения с высокой ценой ошибки. Лекция в Яндексе

                                Модели машинного обучения нужно уметь не только разрабатывать, но и «продавать» заказчику. Если у него не будет понимания, почему предлагается именно такое решение, то всё закончится статьёй в журнале и выступлением на конференции. Директор компании Loginom Алексей Арустамов обращает внимание на ключевые моменты, которые важно отразить в описании модели. Это выступление прошло пару недель назад на конференции Яндекса из серии «Data & Science».


                                Если у вас цена ошибки маленькая, то вообще все равно, что там интерпретировать. Дали вы не ту рекомендацию — ну и бог с ней. В поиске что-то вывели — ну и ничего страшного. Но все меняется, когда речь идет о вещах, связанных с большими издержками, где цена ошибки очень большая. И тогда люди не очень любят доверять черному ящику. Это просто здравый смысл.
                                Читать дальше →
                                • +41
                                • 11,5k
                                • 6
                              • Продакт и проджект — в чём разница? Мнения руководителей сервисов Яндекса

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

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



                                  Но в чём смысл разделения роли менеджера? Кто такой продакт, а кто проджект? По случаю нового набора в нашу Школу менеджеров, который завершится уже 30 апреля, мы задали этот вопрос руководителям четырёх популярных сервисов. Заодно каждый из них поделился подборкой ссылок для начинающего менеджера.
                                  Читать дальше →
                                  • +33
                                  • 13,2k
                                  • 6
                                • Мобильное приложение на Python c kivy/buildozer. Лекция в Яндексе

                                    Не факт, что вам потребуется написать серьёзное приложение на Python. А вот быстро собрать работающий сервис, чтобы «продать» его заказчику, — почему нет? Python универсален, и опыт создания мобильного софта на этом языке может оказаться полезным. Владислав Шашков из Сбербанка рассказал о том, как строится разработка с помощью фреймворка kivy.


                                    — Добрый день. Меня зовут Владислав Шашков, я работаю в Сбербанке и вообще-то я продуктовик, не разработчик. Именно этим может быть интересен мой доклад, потому что он наглядно покажет, что сделать мобильное приложение на Python достаточно несложно.
                                    Читать дальше →
                                    • +32
                                    • 10,3k
                                    • 3
                                  • Советы по созданию приложений к окончанию набора в Школу мобильной разработки Яндекса

                                    • Tutorial
                                    Уже очень скоро завершится набор в Школу мобильной разработки, которая традиционно пройдет в Москве. Упор в ней будет сделан на практические занятия — командные мини-хакатоны, в которых помимо написания кода нужно будет принимать решения, разбираться с возникшими спорными вопросами и заниматься долгосрочным планированием. Помогать студентам — каждой команде индивидуально — будут ребята из Яндекса. Более подробно о предстоящей школе можно почитать здесь. Мы закончим принимать заявки 6 мая в 23:59 по московскому времени, а пока ещё есть время на выполнение заданий, мы решили разобрать прошлогодний вариант. Вы узнаете, какие ошибки часто допускают начинающие разработчики и чему следует уделить внимание при написании кода вашего первого приложения.



                                    Традиционно задание построено так, чтобы мы могли обратить внимание на разные аспекты разработки. К ним относится архитектура приложения, стабильность, производительность, верстка, удобство использования. Все составляющие одинаково важны: даже идеально причесанный и разложенный на слои код с большой вероятностью не пройдет отбор, если возникнут проблемы в интерфейсе или падения в процессе выполнения базовых пользовательских сценариев. Универсального рецепта приготовления идеального приложения, которое гарантированно пройдёт отбор, нет. Есть множество подходов к разработке и разные варианты построения архитектуры, но одна из составляющих успеха — позитивные пользовательские ощущения. Продукт должен создавать впечатление законченности, независимо от того, сколько в нем полезной функциональности, экранов или элементов.
                                    Читать дальше →
                                  • Сколько математики нужно, чтобы подписать многоугольник в JS API Яндекс.Карт

                                      В JS API Яндекс.Карт существует возможность создавать различные объекты на карте. Один из их них – многоугольник, с помощью которого можно улучшить интерактивность пользовательской карты: выделить отдельные области или отобразить местоположение неточечного объекта. К примеру, так можно показать план строительства нового квартала или зоны доставки пиццы.

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

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


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

                                      В действительно задача оказалась нетривиальной. Только представьте, для каждого многоугольника нужно определить хорошо подходящий центр для отображения подписи, на каждом масштабе определить вмещается ли подпись, нужно ли ее скрывать на выбранном зуме, менять стили на каждом зуме, опять все перерассчитывать. То есть, чтобы сделать не особо сложную инфографику, нужно сильно попотеть и подготовить много дополнительных данных.
                                      Читать дальше →
                                    • JupyterHub, или как управлять сотнями пользователей Python. Лекция Яндекса

                                        Платформа Jupyter позволяет начинающим разработчикам, аналитикам данных и студентам быстрее начать программировать на Python. Предположим, ваша команда растёт — в ней теперь не только программисты, но и менеджеры, аналитики, исследователи. Рано или поздно отсутствие совместного рабочего окружения и сложность настройки начнут тормозить работу. Справиться с этой проблемой поможет JupyterHub — многопользовательский сервер c возможностью запускать Jupyter одной кнопкой. Он отлично подходит для тех, кто преподаёт Python, а также для аналитиков. Пользователю нужен только браузер: никаких проблем с установкой ПО на ноутбук, совместимостью, пакетами. Мейнтейнеры Jupyter активно развивают JupyterHub наряду с JupyterLab и nteract.

                                        Меня зовут Андрей Петрин, я руководитель группы аналитики роста в Яндексе. В докладе на Moscow Python Meetup я напомнил о плюсах Jupyter и рассказал про архитектуру и принципы работы JupyterHub, а также про опыт применения этих систем в Яндексе. В конце вы узнаете, как поднять JupyterHub на любом компьютере.


                                        — Начну с того, кто такие аналитики в Яндексе. Существует аналогия, что это такая многорукая Шива, которая умеет делать сразу много разных вещей и сочетает в себе много ролей.

                                        Всем привет! Меня зовут Андрей Петрин, я руководитель группы аналитики роста в Яндексе. Я расскажу про библиотеку JupyterHub, которая в свое время сильно упростила нам жизнь в аналитике Яндекса, мы буквально почувствовали буст продуктивности большого количества команд.
                                        Читать дальше →
                                        • +34
                                        • 9,8k
                                        • 2

                                      Самое читаемое