• Оцените шансы хакнуть криптообменник и получите книжку с кабанчиком в подарок

      Разрабатываете софт под высокую нагрузку? Готовитесь к техническому интервью по System Design? Считаете, что криптообменники зажрались и пора бы их уже потрясти? Интересует, что такое надежность, производительность и масштабируемость, и какие метрики нужно использовать для их оценки? Хотите разобраться, какие типы баз данных использовать и для каких задач? Что такое Map Reduce? Что такое потоки событий и при чем тут Apache Kafka?

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

      Итак, в 2014 году из криптообменника Poloniex были украдены 12,3% BTC. Хакер нашел уязвимость в коде, реализующем снятие денег со счета... 

      Читать дальше →
      • +56
      • 6.2k
      • 8
    • Топ-20 самых сильных IT-брендов работодателей России и как мы их нашли: подводим итоги исследования



        Привет! В августе Хабр и Экопси начали исследовать IT-бренды работодателей на предмет их «веса» среди айтишников. Анкеты обработаны, данные проанализированы — и мы готовы поделиться результатами. В прошлый раз мы рассказали о респондентах нашего исследования (или его «паспорте»), а теперь, собственно, к итогам. О том, кто в итоге вошел в Топ-20, а самое главное,  как мы это определили – под катом.  
        Читать дальше →
      • Топ-7 способов быстрой проверки компетенций IT-специалистов до собеседования

          Найм IT-специалистов – это непростая задача. Во-первых, сейчас на рынке наблюдается дефицит опытных кадров, они это понимают. Кандидаты часто не готовы тратить много времени на «отборочные мероприятия» работодателя, если их предварительно не заинтересовать. Ранее популярная практика «дадим тестовое на 8+ часов» сейчас уже не работает. Для первичной оценки знаний и отсева кандидатов до проведения полномасштабного технического собеседования приходится использовать другие, более быстрые способы. Во-вторых, для качественной оценки знаний и навыков необходимо самому обладать такими навыками или привлекать коллегу, обладающего такими навыками. Эти затруднения можно решить при помощи способов, о которых я расскажу в этой статье. Я сам применяю эти способы и составил для себя своего рода рейтинг.

          Итак, мой топ-7 способов быстрой проверки компетенций IT-специалистов до собеседования:

          7. Изучить портфолио, примеры кода, открытые репозитории кандидата.

          6. Короткое тестовое задание на время (выполняется за 30-60 минут).

          5. Короткое экспресс-собеседование про навыки по телефону/скайпу (как опросник, только онлайн и голосом).

          4. Live-Doing (Coding) – решаем простую задачку в реальном времени с расшаренным экраном.

          3. Опросники с открытыми вопросами про опыт.

          2. Короткие тесты с вариантами ответов, ограниченные по времени прохождения.

          1. Многоэтапное тестовое задание, первый этап выполняется до собеседования.

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

          image
          Читать дальше →
        • Более 10 лет ставлю цели на год: рассказываю, как это делать эффективно

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

          Я полностью прошёл все стадии грехопадения: в студенческие годы искал сакральные ответы в стопках self-help макулатуры; затем разочаровался и решил, что весь этот «успешный успех» – это разводилово для дурачков (до сих пор уверен, что Наполеон Хилл – шизофреник); позже переосмыслил всё ещё раз и пришёл к своему пониманию того, как может выглядеть саморазвитие с адекватным лицом.

          Читать далее
        • Теория инвестиций для начинающих, часть 1

            Эдвард Мэтью Ворд. Пузырь Компании Южных морей. 1847 г. Галерея Тейт, Лондон.

            В какие ценные бумаги вкладывать деньги? Как накопить на пенсию? Кто такие ETF’ы и почему все с ними носятся? Зачем покупать акции, если рынок может упасть? Такие вопросы я слышу от студентов и коллег, когда читаю лекции о деривативах. В принципе, неудивительно. Деривативы — это что-то далёкое из мира больших банков, а личные инвестиции намного ближе к телу.

            Можно было бы ответить коротко: «Покупайте индексные фонды, это хорошо!» К сожалению, такой ответ не объясняет, почему это хорошо. Если бы я услышал его 15 лет назад, когда ещё не интересовался финансами, то он не нашёл бы отклика в моём сердце. Пришлось прослушать не один курс лекций, чтобы осознать, какая экономическая теория стоит за этим советом, и начать применять его на практике.

            Собственно, моя статья — не столько инвестиционный совет (хотя я и расскажу о личном опыте и даже посчитаю свою «альфу»), сколько обзорный курс по теории инвестиций. Полезно знать, какие модели придумали предыдущие поколения, и в каких терминах можно думать об инвестициях. Если из теории следует, что имеет смысл покупать индексные ETF’ы, чтобы копить на пенсию — так и быть, расскажу и об этом.

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

              image

              “… я покажу вазочку кружащуюся в пространстве вместе с веером и фруктами, цветной капустой, птицей, бокалом, бутылкой, из которой изливается содержимое, и ножом напротив окна, а за окном будет простираться бескрайняя морская гладь, покрытая зыбью, когда я выставлю руку, сжимающую в пальцах рог носорога, — всё это будет означать, что я решился и начал постигать пространство-время путём созерцания левитации, которая разрушает энтропию” — Сальвадор Дали

              Речь пойдет не о картине Дали “Живой натюрморт”, а об общей концепции как сложить жизненный пазл поступить и учиться в калифорнийском ВУЗе. Как оказалось задача сама по себе не столь тривиальная и требует детального разбора на каждом этапе процесса подготовки к поступлению в ВУЗ и самой учебе.
              Читать дальше →
            • Разработка должна ориентироваться на продакшен, всё остальное — чушь

              • Translation


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

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

              Эта мысль, а также все связанные с ней подразумеваемые действия, может показаться контринтуитивной или спорной, поэтому я хочу раскрыть её немного глубже. Ниже представлен перечень практик и принципов, которые я считаю правильными, исходя из моего мнения о том, что единственное, что важно — это код в продакшене.
              Читать дальше →
            • 75 лекций на русском от Y Combinator (из 172)

                image


                Патрик и Джон Коллинсон, основатели Stripe (в 22 года и в 21 год), с капитализацией $35 млрд.

                Y Combinator — лучший в мире акселератор для стартапов по количеству единорогов (21), по объему привлеченных инвестиций ($27 млрд) и по капитализации выпускников ($155 млрд). Важно отметить еще то, что среди выпускников YC было несколько основателей моложе 18 лет (и один 20-летний из России).

                А ещё Y Combinator выкладывает все свои учебные материалы бесплатно, уже более 10 лет.

                Основатели и техдиры миллиардных стартапов Amazon ($1.55 трлн), Facebook ($720 млрд), PayPal ($127 млрд), AirBnb ($40 млрд), Pinterest ($38 млрд), Stripe ($35 млрд), LinkedIn ($26.2 млрд), Slack ($23 млрд), WatsApp ($19 млрд), Doordash ($16 млрд), Twitch ($15 млрд), Netscape ($10 млрд), Sun Microsystems ($7.4 млрд), Zenefits ($4 млрд), Segment ($4 млрд), Box ($2.76 млрд), Quora ($2 млрд), Asana ($1.5 млрд), Zappos ($1.2 млрд), Docker ($1.2 млрд), Pebble, Jawbone, Opsware, Weebly, Yahoo!Mail, Gmail, Mixpanel, Scribd и пр, а так же основатели венчурных фондов Andreessen Horowitz, Cowboy Ventures делятся своим опытом со всем миром. Это контент невероятного качества для тех, кто хочет играть в «высшей лиге», на международном уровне.

                Сейчас у Y Combinator 172 видео-лекции в плейлистах: 2012, 2013, 2014 NY, 2014 Europe, 2014 SV, How to Start a Startup (2014 Lectures), 2016, 2017, 2018, Startup Investor School 2018, 2019, 2020. Ниже приведены переводы, субтитры и транскрипты 75 из них.
                Читать дальше →
                • +11
                • 9.5k
                • 1
              • Как эффективно релизить монолит, в который коммитят 150+ разработчиков из разных офисов

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

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

                Читать далее
              • Интервью как продажи, часть 1 (из декретов в машинное обучение)

                Проходить интервью — отдельный навык. И это навык продаж.

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

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

                • Меняет карьеру
                • Первые разы проходит интервью
                • Переходит из академии в индустрию
                • Из своего бизнеса на наемную работу
                • Кому пока плохо удается проходить не технические этапы интервью (все эти софт-скиллы, cultural fit, etc.)

                Мои блог-посты описывают процессы интервью в область ИИ и машинного обучения, но первые части подойдут почти к любой сфере. В части 1 я расскажу про интервью глазами продавца, в части 2 глазами покупателя. Про технические этапы и как к ним готовиться напишу в части 3. Как создавать себе работу по душе самой, не рассчитывая «на дядю» и не проходя классическую схему интервью, в части 4. Погнали.

                *Scope: переход: два декрета подряд — МедТех — индустрия. Сфера: машинное обучение/компьютерное зрение. Вводные данные: художник, PhD по физике. Место событий: планета Земля (пандемия расширила границы)

                Часть 1. Интервью как продавец


                Компания покупает Ваше время и труд. Вы продаете свой опыт и навыки. Вы — продавец. Они — покупатель.

                Первым делом, важно понять, что покупатель хочет купить. Часть из этого указана в вакансии. Но далеко не все, и далеко не все там верно. Тем не менее, начнем с нее. Как узнавать желания покупателя точнее я расскажу дальше.
                Читать дальше →
              • За что получает деньги наемный работник? Не понимаете? Сейчас поймете

                «За что я плачу тебе деньги?» — обычный вопрос работодателя работнику, причем саркастический, как правило.

                «За что я тут корячусь на тебя?» — столь же обычный вопрос работника к работодателю.
                Разобраться, за что же действительно работодатель платит деньги наемному работнику, поможет моя собственная теория, закодированная в десять букв – «ПЗП – ПЗС – ПЗПИ»

                Читать дальше →
              • “Чистый код”: пять ключевых моментов из обязательной к прочтению книги для программистов

                • Translation

                Недавно я написал о «Пять книг, которые изменили мой стиль программирования». В комментариях несколько читателей рекомендовали «Чистый код» Роберта С. Мартина. В результате я прочитал книгу и нашел ее достойной углубленного обзора.


                Читать дальше →
              • Netflix за 45 минут: Краткий рассказ о system design-интервью, чего ожидать + подборка полезных ссылок



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

                  Итак, что такое system design и как пройти интервью такого типа?
                  Читать дальше →
                  • +23
                  • 12.5k
                  • 1
                • Предметно-ориентированная микросервисная архитектура от Uber

                  • Translation
                  Прим. перев.: недавняя статья от Uber Engineering рассказывает о путешествии этой крупной компании к своей улучшенной версии микросервисной архитектуры. Несмотря на то, что некоторые интернет-пользователи не без причин увидели в новом подходе «всего лишь применение принципов DDD к микросервисам», статья снискала огромный интерес у сообщества разработчиков и других инженеров. А посему — рады представить её русскоязычную версию, подготовленную специально для хабра.



                  Введение


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

                  В настоящее время в Uber насчитывается около 2200 критических микросервисов, и мы испытали все достоинства и недостатки этого подхода на себе. В течение последних двух лет Uber пыталась сократить запутанность микросервисного ландшафта, попутно сохранив преимущества данной архитектуры. С помощью этой публикации мы планируем представить наш обобщенный подход к микросервисным архитектурам, получивший название «Domain-Oriented Microservice Architecture» (DOMA).
                  Читать дальше →
                  • +36
                  • 14.8k
                  • 6
                • Как в 2020 году разработчику найти удаленную работу: статистика, инструменты + советы инженера



                    По статистике Stack Overflow, активно ищут работу немногим более 17% разработчиков. При этом, помимо зарплаты, в пятерку важных факторов при смене места входит и запрос на улучшения work/life balance. Традиционно многие люди видят в удаленной работе возможность улучшить этот баланс, больше времени проводить с родными и контролировать график.



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

                    Я изучил текущую статистику по рынку труда для разработчиков, материалы, которые публикуют рекрутеры и инженеры, которые сами проводят собеседования, а также поговорил с Александром Жилиным, Go/Python разработчиком из Питера, который недавно сумел найти работу с помощью специализированного чат-бота. В итоге я составил материал с актуальными советами по поиску удаленной работы в 2020 году.
                    Читать дальше →
                  • Проблемы в процессах непрерывной доставки и развертывании программного продукта



                      Статью подготовил Брюханов Константин, руководитель курса «CI/CD». В ней Константин раскрыл ряд проблемных моментов, связанных доставкой развертыванием кода программного продукта в IT-компаниях, и собрал рекомендации из числа лучших международных практик.



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

                      Технологический прорыв и свободно-распространяемое ПО привели к тому, что подход к организации процессов CI/CD значительно изменился. Переход на новые принципы сильно повлиял на корпоративную культуру, востребованные навыки сотрудников и сами принципы работы в организациях, что привело к масштабным переменам в мире разработки ПО.
                      Читать дальше →
                    • Программное обеспечение дешевле в мелкой таре

                      • Translation
                      Предлагаю вашему вниманию перевод статьи, в которой высказывается интересная точка зрения на размер релизов/задач при разработке информационных систем. По мнению Аллана Келли, при разработке ПО отсутствует экономия на масштабе, а при увеличении объема задач/релизов экономика только ухудшается. Статья содержит примеры и доводы, иллюстрирующие это, и автор рекомендует стараться ставить небольшие и конкретные задачи, работать более мелкими релизами. Пытливый читатель сразу задаст вопросы: «Можно ли из этого сделать вывод, что необходимо максимально уменьшать размер задач/релизов? Где же тогда этот предел? Нужно ли выводить в продуктив по одной строчке кода?» Эти вопросы, к сожалению, не раскрыты в статье. По моему личному опыту, в имеющихся условиях у команды существует некоторый оптимальный размер задач/релизов, который определяется зрелостью процессов, спецификой культуры команды и уровнем развития инженерных практик. Для кого-то это три месяца, для кого-то это одна неделя, кто-то способен работать в режиме  непрерывной поставки… Однако если инвестировать в то, чтобы команда научилась бы работать меньшими задачами/релизами, то это впоследствии принесет долгосрочную отдачу.

                      Читать дальше →
                    • 10 идей из книги «Как управлять интеллектуалами»

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

                        amazon litres
                        Читать дальше →
                      • Конференция DEVOXX UK. Выбираем фреймворк: Docker Swarm, Kubernetes или Mesos. Часть 2

                          Docker Swarm, Kubernetes и Mesos являются наиболее популярными фреймворками для оркестровки контейнеров. В своем выступлении Арун Гупта сравнивает следующие аспекты работы Docker, Swarm, и Kubernetes:

                          • Локальный девелопмент.
                          • Функции развертывания.
                          • Мультиконтейнерные приложения.
                          • Обнаружение служб service discovery.
                          • Масштабирование сервиса.
                          • Run-once задания.
                          • Интеграция с Maven.
                          • «Скользящее» обновление.
                          • Создание кластера БД Couchbase.

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

                          Арун Гупта — главный технолог open-source продуктов Amazon Web Services, который уже более 10 лет развивает сообщества разработчиков Sun, Oracle, Red Hat и Couchbase. Имеет большой опыт работы в ведущих кросс-функциональных командах, занимающихся разработкой и реализацией стратегии маркетинговых кампаний и программ. Руководил группами инженеров Sun, является одним из основателей команды Java EE и создателем американского отделения Devoxx4Kids. Арун Гупта является автором более 2 тысяч постов в IT-блогах и выступил с докладами более чем в 40 странах.
                          Читать дальше →
                        • Об оценках сроков в разработке ПО

                          • Translation
                          В течение всей истории разработки ПО мы искали надежные способы оценки времени на реализацию задач и проектов. Но и спустя более чем 60 лет существования отрасли наши прогнозы все еще оставляют желать лучшего. Может быть, дело не в том, как именно мы пытаемся оценивать, а в том, что мы вообще опираемся на оценки?

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