• Как обложить сервис метриками и не облажаться

      Меня зовут Евгений Жиров, я разработчик в инфраструктурной команде Контур.Экстерна. Этот пост — текстовая версия моего доклада с недавнего митапа Perm Tech Talks.


      У нас в команде 200 микросервисов, которые должны быть отказоустойчивыми, чтобы пользователи не замечали никаких проблем. А проблемы, конечно, возникают. Поэтому мы собираем метрики, чтобы знать, как дела у конкретных сервисов и у системы в целом. Метрики помогают вовремя среагировать и всё починить.


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


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


      Какие бывают метрики?



      Метрика requests.count.byhost.*

      Читать дальше →
    • Как я поехал на летнюю стажировку и остался

        Меня зовут Ренат Тазиев. Мне 22 года, и я разработчик.



        (Пишу код на Чемпионате Урала по спортивному программированию.)


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


        Если вы студент и не знаете, нужна ли вам стажировка — добро пожаловать под кат. Год назад я тоже не знал. Поэтому мой опыт будет полезен.

        Читать дальше →
      • Вакансии компании СКБ Контур

      • Как мы отмечали 256 день года и рисовали пиксели через API

          13 сентября в Контуре отмечали День программиста. В самом большом офисе разработки играли в Pac-Man и пытались съесть 280 коробок с пиццей. Одновременно полторы тысячи человек рисовали пиксели в онлайне. В этом посте четыре разработчика рассказывают, как делали праздник.



          Часть 1. Рассказывает Игорь green_hippo, который стырил идею на Reddit


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


          Я решил, что надо сделать свой Place, с таймлапсом и API.

          Читать дальше →
        • ICFP Contest 2017 — проверка на прочность для настоящих разработчиков

            ICFPC — ежегодное соревнование для программистов. Оно проходит в онлайне и длится 72 часа. ICFPC 2017 начнётся в пятницу 4 августа в 12:00 (UTC) и закончится в понедельник.

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


            Читать дальше →
            • +21
            • 5,5k
            • 4
          • Сказ о стажировке в маленькой компании или как мы с Контуром конкурировали [Часть I]

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

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

              Во второй части расскажу о том, как всё получилось на самом деле, какие выводы мы сделали и чему научились. Здесь продолжение статьи.
              Читать дальше →
              • +14
              • 9,4k
              • 4
            • Краткое руководство по выходу в opensource: кому это нужно, для чего и как

                На прошлой внутренней конференции разработчиков Контура я выступал с докладом. В моей презентации был слайд, на котором были перечислены известные российские ИТ-компании, разделенные на два столбца. Между компаниями в правом и левом столбцах было одно весомое различие.


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


                Отличие их состояло в том, что они активно распространяют свои технологии и знания — делятся с профессиональным сообществом открытым кодом и понятными мануалами, выступают на конференциях. Они осознанно вкладываются в развитие своих opensource-проектов. Технологии и описания многих из них лежат в открытом доступе на специально созданных сайтах tech.yandex.ru, opensource.mail.ru, techno.2gis.ru/opensource, и известны многим разработчикам за пределами компаний.


                Если вы вдруг решили заняться благотворительностью (почти) и сделать что-то подобное в своей компании, надеюсь, мой текст поможет ответить на вопросы: нужно ли это вам, сколько ресурсов потребуется и что в итоге получится. У нас вышел такой сайт: tech.skbkontur.ru.

                Читать дальше →
                • +17
                • 7,4k
                • 4
              • Песнь о могучем Деплое: безостановочное прозрачное развёртывание веб-сервиса

                  Песнь о могучем Деплое

                  Пролог


                  Пришло время, когда нам — команде Эльбы — захотелось поделиться с миром подробностями некоторых магических и загадочных деталей нашего продукта. Решили начать с одного из самых сложных проектов, который является предметом особой гордости и лёгкого поклонения. Он покрыт налётом тайны и окутан ореолом тёмной магии. Легенды о нём передаются из уст в уста. Лишь малая часть знаний задокументирована в вики или ютреке, большая же — сокрыта в исходниках системы контроля версий. Премудрых старцев, умеющих расшифровать этот тайный код, в проекте всё меньше и меньше. Пришла пора записать все магические заклинания в подробном манускрипте. Речь пойдёт о системе развёртывания Эльбы — о могучем Деплое.
                  Читать дальше →
                • Кому должен фрилансер?

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

                    Бывает, что фрилансер открывает ИП, но продолжает оставаться «свободным художником». Причины появления таких ИП-нулевок могут быть разные. Кто-то регистрирует ИП, чтобы привлекать заказчиков. Кто-то на время передумал заниматься бизнесом.
                    В каком случае ИП может официально считать себя нулевкой? Если он не оказывает никаких услуг или ничего не продает, а на его расчетном счете и в кассе нет движения средств. Однако, несмотря на то что предприниматель фактически ничего не делает, ему нужно сдавать отчетность в контролирующие органы и платить взносы в страховые фонды.
                    Читать дальше →
                  • Moira: Realtime Alerting


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

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

                      Ясно, что за миллионом метрик не уследить глазами на телевизорах и дашбордах — нужна система отправки уведомлений о нештатных ситуациях. Перед тем как написать свою систему Moira, мы использовали для этой задачи Seyren.
                      Читать дальше →
                      • +18
                      • 10,7k
                      • 3
                    • Xamarin и Xamarin.Forms – кактус в шоколаде. Часть 2

                      • Tutorial
                      Совсем недавно мы опубликовали статью про особенности и проблемы популярного мобильного фреймворка Xamarin. Сегодня же мы продолжим рассказ и сосредоточимся на нюансах библиотеки Xamarin.Forms. Под катом вас ждёт история о том, какие грабли поджидают решившего сделать кроссплатформенный UI.
                      Читать дальше →
                    Самое читаемое