Как стать автором
Обновить
1
0

Пользователь

Отправить сообщение

Обзор паттернов интеграции микросервисов. Часть 1

Время на прочтение 7 мин
Количество просмотров 25K

Недавно мы проводили вебинар «Обзор паттернов интеграции микросервисов». На нём энтерпрайз архитектор Пётр Щербаков рассказал, зачем IT-специалистам нужны шаблоны интеграции, и разобрал, для каких задач они подходят, а для каких нет. Для тех, кто пропустил или предпочитает читать, а не смотреть подготовили текстовый обзор интеграционных паттернов: Circuit Breaker, Sidecar, Ambassador, Anti-Corruption Layer и Async Request-Reply.

Читать далее
Всего голосов 24: ↑21 и ↓3 +18
Комментарии 1

Kubernetes-in-Kubernetes и ферма серверов с загрузкой по PXE

Время на прочтение 21 мин
Количество просмотров 9.4K

Когда у вас 2 собственных дата-центра, тысячи железных серверов, виртуалки и хостинг для сотен тысяч сайтов, Kubernetes может существенно упростить управление всем этим добром. Как показала практика, с помощью Kubernetes можно декларативно описывать и управлять не только приложениями, но и самой инфраструктурой. Я работаю в крупнейшем чешском хостинг-провайдере WEDOS Internet a.s и сегодня расскажу о двух своих проектах — Kubernetes-in-Kubernetes и Kubefarm.

С их помощью можно буквально за пару команд, используя Helm, развернуть полностью рабочий Kubernetes внутри другого Kubernetes-кластера. Как и зачем? Добро пожаловать под кат!

Читать дальше
Всего голосов 17: ↑17 и ↓0 +17
Комментарии 3

Как разработчику договариваться о зарплате при поиске работы за границей

Время на прочтение 4 мин
Количество просмотров 11K


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

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

Зарплатная вилка


Средняя зарплата разработчиков и инженеров-программистов варьируется в разных странах мира. Например, по данным PayScale, разработчики в Швейцарии зарабатывают 95 тысяч долларов. В Германии этот показатель составляет $60 тыс., в Норвегии — $64 тыс., в Дании — $72 тыс. В США разработчик в среднем зарабатывает $110 тыс. в год, в Израиле и Великобритании — $93 тыс. и $89 тыс. соответственно. Подробнее о зарплатах разработчиков в Европе можно почитать здесь.

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

Налоговый вопрос при переезде


Сколько денег останется на руках после уплаты налогов? Как происходит сбор налогов? Будет ли работодатель платить от вашего имени или вам придется подавать декларации и перечислять деньги самостоятельно?

Поговорите с иностранным работодателем или даже обратитесь к местному налоговому эксперту за консультацией. Договаривайтесь о льготах, вычетах и исключениях на берегу.
Читать дальше →
Всего голосов 9: ↑7 и ↓2 +5
Комментарии 19

Лучшие практики для деплоя высокодоступных приложений в Kubernetes. Часть 2

Время на прочтение 13 мин
Количество просмотров 11K

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

Читать далее
Всего голосов 39: ↑38 и ↓1 +37
Комментарии 4

Основы работы с Helm чартами и темплейтами — Часть 2

Время на прочтение 18 мин
Количество просмотров 33K

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

Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Комментарии 1

Установка Visual Studio Code в облаке

Время на прочтение 7 мин
Количество просмотров 18K

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

Интегрированные среды разработки тоже не избежали переноса в облака. Около десяти лет назад это было диковинкой, Cloud IDE только начинали развиваться, но потом на них обратили внимание самые крупные игроки IT-индустрии. 
Читать дальше →
Всего голосов 33: ↑32 и ↓1 +31
Комментарии 25

Да кто такой этот ваш Mobile DevOps?

Время на прочтение 13 мин
Количество просмотров 7.1K

Сегодня почти у каждого проекта мобильного приложения есть базовая инфраструктура: ваш код хранится на git хостинге и весь новый код регулярно проверяется на CI, чтобы не сломать старый. Если ваша команда в несколько человек производит не очень много кода, то скорее всего вы настроили весь пайплайн один раз и радуетесь его работе. Но что если ваша мобильная команда это пара десятков или даже сотен разработчиков? Много разработчиков производят много кода, что создает нагрузку на инфраструктуру, увеличивает вероятность сломать важные флоу приложения и просто навсего унести время сборки проекта в небеса. Единожды кем-то настроенный пайплайн обречен на изменения, если он не справляется с нагрузкой.

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

Читать далее
Всего голосов 12: ↑11 и ↓1 +10
Комментарии 8

Используем Ansible вместе с Terraform

Время на прочтение 4 мин
Количество просмотров 27K


Недавно я начал применять Terraform для создания облачной лабы для тестов, и это довольно круто. Буквально за несколько дней я поднялся с «никогда не использовал AWS» до «я умею декларативно создавать изолированную инфраструктуру в облаке». Я поставил парочку серверов в выделенной сети в VPC с security group и отдельными ключами SSH, все это заняло у меня несколько сотен строк кода.


Все приятно и прельстиво, но после создания сервера из некоторого базового AMI мне надо его развернуть. Мой типовой инструмент для этого — Ansible, но, к сожалению, у Terraform нет встроенного модуля для Ansible (есть обратный, начиная с Ansible 2.5, прим. переводчика), в отличие от Chef и Salt. Это не похоже на Packer, имеющий ansible (удаленный) и ansible-local, который я использовал для сборки образов Docker.


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

Читать дальше →
Всего голосов 20: ↑19 и ↓1 +18
Комментарии 59

Введение в Puppet

Время на прочтение 26 мин
Количество просмотров 73K

Puppet — это система управления конфигурацией. Он используется для приведения хостов к нужному состоянию и поддержания этого состояния.


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


Читать дальше →
Всего голосов 27: ↑27 и ↓0 +27
Комментарии 26

Введение в Git Merge и Git Rebase: зачем и когда их использовать

Время на прочтение 4 мин
Количество просмотров 319K
Часто у разработчиков возникает выбор между Merge (слияние) и Rebase (перемещение). В Гугле вы увидите разное мнение, многие советуют не использовать Rebase, так как это может вызвать серьезные проблемы. В статье я объясню, что такое слияние и перемещение, почему вы должны (или не должны) использовать их и как это сделать.

image

Git Merge и Git Rebase преследуют одну и ту же цель. Они предназначены для интеграции изменений из одной ветки в другую. Хотя конечная цель одинаковая, принципы работы разные.

Некоторые считают, что вы всегда должны использовать Rebase, другие предпочитают Merge. В этом есть свои плюсы и минусы.

Git Merge


Слияние — обычная практика для разработчиков, использующих системы контроля версий. Независимо от того, созданы ли ветки для тестирования, исправления ошибок или по другим причинам, слияние фиксирует изменения в другом месте. Слияние принимает содержимое ветки источника и объединяет их с целевой веткой. В этом процессе изменяется только целевая ветка. История исходных веток остается неизменной.
Читать дальше →
Всего голосов 44: ↑32 и ↓12 +20
Комментарии 17

Как заговорить на английском через месяц. 9 простых и проверенных шагов

Время на прочтение 8 мин
Количество просмотров 386K
Хабр, привет!

Меня зовут Марина Могилко, я кофаундер онлайн-платформы LinguaTrip.com.

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

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

Итак, начинаем! Осторожно: под катом мини-словарик на все случаи жизни.

image
Всего голосов 99: ↑64 и ↓35 +29
Комментарии 184

[в закладки] PDF- и ePUB-версия руководства по React

Время на прочтение 3 мин
Количество просмотров 43K
Привет Хабр! В этом году мы делали перевод огрооомного обучающего курса по React — в нашем блоге он был аж в 27 постах. В каждой части, от простого к сложному, выдавался концентрат знаний, которые тепло оценили читатели нашего блога. А сегодня мы поймали себя на мысли, что не выпустили все части одним большим куском — исправляемся!



Для новых читателей нашего блога — два бонуса внутри.
Читать дальше →
Всего голосов 58: ↑55 и ↓3 +52
Комментарии 9

С чего начать изучение Python: книги для начинающих

Время на прочтение 4 мин
Количество просмотров 246K
image

Друзья, забирайте в закладки подборку из 17 книг по Python.

Подборка поможет вам освоить язык программирования с нуля или с минимальными знаниями.
Готовы приступить к изучению Python?

Тогда начнем!
Читать дальше →
Всего голосов 25: ↑23 и ↓2 +21
Комментарии 16

Создание простого чат-бота в VK на Python 3

Время на прочтение 6 мин
Количество просмотров 196K

Создание основы для работы бота будет состоять из следующих этапов:


  1. Создание бота в ВК
  2. Генерирование API- ключа
  3. Создание программы бота через LongPoolVK

Для кого эта статья?


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

Что есть в этой статье?


Создание основы бота. После этого его можно будет запрограммировать как-угодно. Автоматизировать какую-то рутину или использовать как собеседник.

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

Добавление функции передачи погоды. Научим бота говорить нам погоду.
Читать дальше →
Всего голосов 6: ↑5 и ↓1 +4
Комментарии 1

Основные структуры данных. Матчасть. Азы

Время на прочтение 5 мин
Количество просмотров 223K
Все чаще замечаю, что современным самоучкам очень не хватает матчасти. Все знают языки, но мало основы, такие как типы данных или алгоритмы. Немного про типы данных.

Еще в далеком 1976 швейцарский ученый Никлаус Вирт написал книгу Алгоритмы + структуры данных = программы.

40+ лет спустя это уравнение все еще верно. И если вы самоучка и надолго в программировании пробегитесь по статье, можно по диагонали. Можно код кофе.


Читать дальше →
Всего голосов 24: ↑14 и ↓10 +4
Комментарии 38

Как мы делали первый российский смартфон, продолжение

Время на прочтение 7 мин
Количество просмотров 41K

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

Краткое содержание первой части
В принципе, можно и не читать первую часть, потому что вот её краткое содержание:



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

Зато у нас было большое желание и отвага.
Читать дальше →
Всего голосов 127: ↑118 и ↓9 +109
Комментарии 156

Play with Kubernetes — сервис для практического знакомства с K8s

Время на прочтение 4 мин
Количество просмотров 22K
Около года мы писали об интересном онлайн-сервисе для самообразования в мире контейнеров — Play with Docker. Его авторы, поддерживаемые компанией Docker Inc, не стояли на месте и последовали за трендами, что мы наблюдаем не только в «узком кругу» Docker, но и в индустрии в целом: они запустили новый аналогичный сервис, посвящённый уже Kubernetes. Итак, встречайте Play with Kubernetes (PWK)!

Читать дальше →
Всего голосов 19: ↑18 и ↓1 +17
Комментарии 8

Джентльменский набор сисадмина

Время на прочтение 23 мин
Количество просмотров 50K
Админ — это тот человек, без которого ничего в ИТ-компании не заработает. А со счастливым и продуктивным админом, дело будет двигаться лучше и быстрее, поэтому комфортная рабочая атмосфера — забота компании. О том, с помощью каких инструментов сделать команду продуктивной, был доклад Антона Турецкого (banuchka) на Highload++ 2017.

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



Badoo с каждым годом растет, вот несколько чисел, которые это отражают: 350 млн сообщений в сутки, 364 млн зарегистрированных пользователей по всему миру, 300 тысяч новых пользователей в день. Но это далеко не самое главное, для человека, который в Badoo работает, главное — это в первую очередь образ мышления и команда. Badoo — это семья, это про людей и это круто!

Хочу начать с провокации, которую, возможно, кто-то не поддержит:

Админ — это главный человек в компании!

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


Всего голосов 61: ↑54 и ↓7 +47
Комментарии 43

Белые пятна в работе с SSH

Время на прочтение 7 мин
Количество просмотров 35K
SSH — очень мощный и гибкий инструмент, но, как показывает практика, не все понимают, как он работает, и правильно его используют. Слово Secure входит в аббревиатуру SSH и является одним из ключевых аспектов протокола, но часто именно безопасности уделяется недостаточное внимание. В этой статье я хочу рассказать о нескольких типичных ошибках при работе с SSH, а также о моментах, о которых часто забывают.

image
Читать дальше →
Всего голосов 40: ↑39 и ↓1 +38
Комментарии 54

25 ошибок начинающего программиста

Время на прочтение 19 мин
Количество просмотров 126K

Научитесь выявлять их. Выработайте привычки избегать их.


Цель этой статьи не загнобить новичков за типичные ошибки, а научить выявлять их и избегать. Порядок перечисления – случайный.

От переводчика


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

Как бы это смешно не звучало, я работал над этим текстом с середины марта, стараясь подобрать подходящие формулировки и упростить для восприятия. Ещё пару дней воевал с хабра-редактором. Поэтому, если вы найдёте недочёты, прошу не винить меня в нерадении, а оповестить, я их сразу же исправлю. Я думал украсить статью картинками, но решил, что это только раздует её до совсем неприличных размеров. Приятного чтения.
Читать дальше →
Всего голосов 78: ↑69 и ↓9 +60
Комментарии 231

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность