company_banner
  • Тестируем пользовательские сценарии вместе с «Гермионой». Лекция Яндекса

      Hermione — опенсорс-инструмент для автоматизации интеграционного тестирования. На конференции FrontTalks разработчик службы поисковых интерфейсов Николай Ильченко tavriaforever объяснил, почему наши интерфейсы всё ещё иногда ломаются, в чём плюсы Гермионы, и показал, как начать ей пользоваться.


      — Я приехал с докладом про Гермиону. Но это не про Гарри Поттера, и это совсем не сказки.
      Читать дальше →
    • Как внедрить Secure Development Lifecycle и не поседеть. Рассказ Яндекса на ZeroNights 2017

        С 16 по 17 ноября в Москве проходила международная конференция по информационной безопасности ZeroNights 2017. В этом году Яндекс, как обычно, выступил её соорганизатором и представил ряд докладов в ходе Defensive Track'а – секции, посвященной защите сервисов и инфраструктуры. В частности, мы поделились нашим опытом внедрения Secure Development Lifecycle (SDL) для такого крупного и комплексного проекта, как Яндекс.Браузер.


        image


        Если кратко, то SDL – это набор различных контролей безопасности на всех этапах жизненного цикла продукта. Сама по себе данная методология существует уже довольно давно, изначально её анонсировала компания Microsoft, и про канонический подход вы можете почитать на их сайте, на Хабре, а также на просторах интернета. SDL позволяет снизить вероятность возникновения уязвимостей, максимально усложнить их эксплуатацию и ускорить исправление. Всё это позволяет сделать продукт более безопасным.


        Однако в настоящее время в индустрии до сих пор существует весьма распространенное мнение, что для проектов, которые разрабатываются в рамках процессов на базе Agile’a, внедрение SDL – очень сложная и почти нерешаемая задача, т.к. множество проверок создают бутылочное горлышко и мешают разработчикам укладываться в сроки. С первым тезисом мы спорить точно не будем, а второму готовы бросить вызов и поделиться историей о том, какие контроли мы встроили в процесс разработки Браузера и какие трудности встретились на этом пути. Если вы пропустили наш доклад или хотите узнать дополнительные подробности – просим заглянуть под кат.

        Читать дальше
        • +39
        • 5,5k
        • 4
      • Как выявлять и развивать таланты в IT

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


          Вопросы управления талантливыми сотрудниками актуальны для многих руководителей в сфере IT вне зависимости от конкретной специализации. Именно поэтому управление талантами мы выбрали в качестве первой темы нового цикла встреч, организованного Яндексом — Team Leader Meetup.


          В преддверии встречи мы попросили участников панельной дискуссии, среди которых veged, gornal, yafinder, ответить на ряд вопросов, связанных с управлением талантливыми сотрудниками.




          Все сотрудники, по крайней мере потенциально, являются талантливыми. Но не всем удаётся раскрыть свои таланты и полностью реализоваться. С этой проблемой связан наш первый вопрос: как выявлять таланты сотрудников и вовремя обнаруживать их амбиции?


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

          Читать дальше →
        • Практика написания тестов. Лекция Яндекса

            С праздниками, друзья! Если вы не против научиться на каникулах чему-то новому, прочитайте лекцию Кирилла Борисова — разработчика систем авторизации Яндекса. Кирилл объясняет, как построить процесс тестирования Android-приложений, знакомит с современными инструментами и спецификой их использования.


            — Прежде чем двинуться вперед, давайте устроим небольшой соцопрос. Кто из вас знает, что такое тесты? Кто пишет тесты? А кто знает, зачем он пишет тесты?
            Читать дальше →
          • «Быстрорастворимый» фронтенд. Лекция в Яндексе

              Ускорить доставку элементов фронтенда на устройство пользователя можно несколькими способами. Разработчик Артём Белов из самарского офиса норвежской компании Cxense попробовал самые многообещающие: HTTP/2, Server Push, Service Worker, а также оптимизацию в процессе сборки и на стороне клиента. Итак, что же нужно сделать, чтобы сократить время отклика приложения до минимума?


              Выясняется, что алгоритмы сжатия существуют уже давно. Это произошло где-то в июне — видимо, где-то над Самарой пролетал метеорит и идея проверить новые алгоритмы сжатия, Zopfli и Brotli, пришла мне и парню из соседней компании. Больше чем уверен, вы читали его статью, это Александр Субботин. Статья разошлась на Medium, и он известен, а я нет.

              Читать дальше →
            • Как сделать внутренний продукт внешним. Опыт команды Яндекс.Трекера

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


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



                Облако из слов в заголовках тикетов во внутреннем Яндекс.Трекере


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


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

                Читать дальше →
              • Время — деньги. Как мы учили Яндекс.Такси точно рассчитывать стоимость поездки


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

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

                  Кажется, нет ничего проще, чем использовать данные маршрутизатора в Яндекс.Навигаторе и данные Пробок, чтобы Яндекс.Такси с самого начала рассчитало точную цену, которая не менялась бы по окончании поездки. Но на самом деле на стоимость влияет огромное число факторов, не только тариф. Важно не просто уметь её рассчитывать. С одной стороны, стоимость должна быть привлекательной для пользователя, причём с учётом не только текущей ситуации на дороге, но и, например, пробок, которых на маршруте пока нет, но которые скоро возникнут. С другой, цена должна быть такой, чтобы водители не потеряли в заработке, даже если путь из точки А в точку Б оказался длиннее или дольше, чем планировалось. В этой статье мы расскажем, как решали задачу и как искали сбалансированный алгоритм, выгодный всем участникам платформы Яндекс.Такси.
                  Читать дальше →
                • Советы по созданию современного Android-приложения. Лекция Яндекса

                    Мы продолжаем публиковать материалы Школы мобильной разработки 2017 года. На очереди — большая лекция Android-разработчика Дмитрия Никитина из команды Яндекс.Почты. Дмитрий рассказывает, как подойти к созданию проекта с нуля, не потеряться среди множества библиотек и на что обратить внимание при выборе того или иного решения.


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

                    Сегодня я хочу сделать небольшой обзор того, какие вообще есть альтернативы и средства разработки и на чем стоит акцентировать внимание при выборе той или иной библиотеки.
                    Читать дальше →
                  • 30-часовой хакатон Яндекс.Погоды, или как предсказать осадки по сигналам от пользователей

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



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

                      Читать дальше →
                      • +37
                      • 4,2k
                      • 8
                    • Как мы создавали менеджер паролей со стойкой криптографией и мастер-паролем. Опыт команды Яндекс.Браузера

                        Как ни странно, но только 1% пользователей браузера используют специализированные расширения для хранения паролей (LastPass, KeePass, 1Password, ...). Безопасность паролей всех остальных пользователей зависит от браузера. Cегодня мы расскажем читателям Хабрахабра, почему наша команда отказалась от архитектуры защиты паролей из проекта Chromium и как разработала собственный менеджер паролей, который уже тестируется в бете. Вы также узнаете, как мы решили проблему сброса мастер-пароля без расшифровки самих паролей.



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

                        Читать дальше →
                      Самое читаемое