• Переезд в Лондон с женой и собаками. История мобильного разработчика

      Всем привет!

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


      Читать дальше →
    • Осторожный переезд в Нидерланды с женой и ипотекой. Часть 1: поиск работы

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

        image

        В общем, если вам интересен рассказ о том, как C++ программист из Подмосковья искал работу в Европе, желательно в Великобритании, а нашел-таки в Нидерландах, переехал туда сам и привез жену, все это с непогашенной ипотекой в России и с небольшими приключениями — добро пожаловать под кат.
        Читать дальше →
      • Сравниваем PHP FPM, PHP PPM, Nginx Unit, React PHP и RoadRunner



          Тестирование производилось с помощью Yandex Tank.
          В качестве приложения использовались Symfony 4 и PHP 7.2.
          Целью являлось сравнение характеристик сервисов при разных нагрузках и нахождение оптимального варианта.
          Для удобства все собрано в docker-контейнеры и поднимается с помощью docker-compose.
          Под катом много таблиц и графиков.
          Читать дальше →
        • 11 вопросов, которые нужно обсудить до начала работы

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

            1. Какую работу требуется выполнить


            Не просто в общих чертах, а подробно. Важно, чтобы обе стороны одинаково понимали что нужно сделать и что будет являться результатом сотрудничества. Чем подробнее, тем лучше. Важно зафиксировать объем.

            Если договоренностей нет, то разбежности в толковании объема ведут к недовольству и конфликту. Один считает, что работа выполнена не полностью, другой же наоборот, считает, что сделал уже больше оговоренного и его обманывают.
            Читать дальше →
          • Велосипед из энергомонитора PZEM004T и ESP8266, с Народным мониторингом

              Задался я вопросом — куда девается ток из проводов? Вроде топим дом газом, в доме все лампы диодные, посудомойку включаем в ночь, бани с электропечкой пока нет, а электричество все время куда-то девается. Непорядок. Надо бы за ним проследить.
              Добро пожаловать под кат…
              Читать дальше →
            • Сенсорный мини выключатель cо стеклянной панелью на nRF52832

                В сегодняшней статье хочу поделится с вами новым проектом. На этот раз это сенсорный выключатель с стеклянной панелью. Устройство компактное, размерами 42х42мм(стандартные стеклянные панель имеет размеры 80х80мм). История этого устройства началась давно, около года назад.


                Читать дальше →
              • Сравнение репитеров сотовой связи. RF-Link 1800/2100-75-23 и AliExpress Noname

                  Для сравнения выбраны модели идентичные по характеристикам. Aliexpress желтый Noname и RF-Link 1800/2100-75-23 – по паспорту оба усиливают диапазоны 1800 и 2100 МГц на 75 дБ и имеют выходную мощность 200 мВт (23 дБм). Важное замечание в статье не рассматривается ценовая разница, да она есть, в статье сравниваются реальные характеристики выдаваемые репитерами.




                  Теория


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


                  Что из себя представляет репитер? Если упростить, это двунаправленный полосовой линейный усилитель. На самом деле, это сложное электронное устройство, которое должно отвечать жёстким требованиям.


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


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


                  Читать дальше →
                • Сколько зарабатывают разработчики разных квалификаций, 2018



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

                    Сегодня мы хотим сравнить зарплаты разработчиков разных квалификаций. Как всегда, для этого используем данные, которые пользователи «Моего круга» оставляли в нашем калькуляторе зарплат в течение последних полутора лет.  

                    С картинки каждой диаграммы box plot можно перейти к её интерактивной версии, где будет проще сориентироваться в цифрах.
                    Читать дальше →
                  • Опусы про Его Величество Клей. Часть третья — полиуретан vs космический холод

                    • Tutorial
                    Посвящается всем туристам-водникам, рыбакам и морякам, которым удалось или не удалось (но, надеюсь, удастся после прочтения статьи) заклеить дыры на своих ПВХ судах, ибо не Десмоколом единым...

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

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

                    Узнать, что это за полиуретан такой!
                  • Знакомство с Python для камрадов, переросших «язык A vs. язык B» и другие предрассудки

                      Для всех хабравчан, у которых возникло ощущение дежавю: Написать этот пост меня побудили статья "Введение в Python" и комментарии к ней. К сожалению, качество этого "введения" кхм… не будем о грустном. Но ещё грустнее было наблюдать склоки в комментариях, из разряда "C++ быстрее Python", "Rust ещё быстрее C++", "Python не нужен" и т.д. Удивительно, что не вспомнили Ruby!


                      Как сказал Бьярн Страуструп,


                      «Есть всего два типа языков программирования: те, на которые люди всё время ругаются, и те, которые никто не использует».

                      Добро пожаловать под кат всем, кто хотел бы познакомиться с Python, не опускаясь при этом до грязных ругательств!

                      Читать дальше →
                    • Возможности Python 3, достойные того, чтобы ими пользовались

                      • Translation
                      Многие программисты начали переходить со второй версии Python на третью из-за того, что уже довольно скоро поддержка Python 2 будет прекращена. Автор статьи, перевод которой мы публикуем, отмечает, что основной объём Python 3-кода, который ему доводилось видеть, выглядит как код со скобками, написанный на Python 2. По его словам, он и сам грешит чем-то подобным. Здесь он приводит примеры некоторых замечательных возможностей, доступных лишь тем, кто пользуется Python 3. Он надеется, что эти возможности облегчат жизнь тем, кто о них узнает.



                      Все примеры, приведённые в этом материале, написаны с использованием Python 3.7. В описании каждой возможности имеются сведения о минимальной версии Python, необходимой для её применения.
                      Читать дальше →
                    • Управление командой программистов: как и чем их правильно мотивировать? Часть первая

                        Эпиграф:
                        Муж, глядя на чумазых детей, говорит жене: ну, что, этих отмоем или новых нарожаем?


                        Под катом рассуждения нашего тимлида, а также директора по развитию продукта RAS — Игоря Марната об особенностях мотивации программистов.

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



                          Ниже — краткий обзор того, как сейчас можно переехать во Францию по работе в ИТ: на какую визу стоит рассчитывать, какую зарплату нужно для этой визы иметь, и как адаптировать резюме под местные традиции.
                          Читать дальше →
                        • Теперь хороших разрабов меряют по просмотрам и подписчикам — и это плохо



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

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

                            Вот только почти все статьи не про разработку — в них нытье про мою депрессию. Я-то рад, что мне больше не надо никому ничего доказывать. Но вы что, с ума сошли котировать разрабов за такую чушь? Я думаю, сошли, и вижу тревожные симптомы этого везде.
                            Читать дальше →
                          • Docker: невредные советы

                              В комментариях к моей статье Docker: вредные советы было много просьб объяснить, чем так ужасен описанный в ней Dockerfile.


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



                              Сейчас разберемся, что не так с этим Dockerfile.


                              Итак, прошла неделя.

                              Читать дальше →
                            • Пять ошибок, которые люди совершают при подготовке к рабочей иммиграции в США

                              • Translation


                              Миллионы людей со всего мира мечтают переехать на работу в США, на Хабре полно статей о том, как конкретно это можно сделать. Проблема в том, что обычно это истории успехов, о возможных ошибках мало кто рассказывает. Я нашел интересный пост на эту тему и подготовил его адаптированный (и немного дополненный) перевод.
                              Читать дальше →
                            • Nginx cache: всё новое — хорошо забытое старое

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

                                Но что делать, когда ваш код “идеален”, все тяжелые запросы вынесены в фон, все, что можно, было закэшировано, а сервер все так же не дотягивает до нужных нам показателей SLA? Если есть возможность, то конечно можно докупить новых машин, распределить часть трафика и забыть о проблеме еще на некоторое время.

                                Но если вас не покидает чувство, что ваш сервер способен на большее, или есть магический параметр, ускоряющий работу сайта в 100 раз, то можно вспомнить о встроенной возможности nginx, позволяющей кэшировать ответы от бэкенда. Давайте разберем по порядку, что это, и как это может помочь увеличить количество обрабатываемых запросов сервером.
                                Читать дальше →
                              • Что такое SIM-банк и как он работает

                                  Такие устройства, как VoIP GSM шлюзы пользуются растущей популярностью среди российских компаний и предпринимателей. Сфера их применения достаточно широка – начиная с экономии средств компании на звонках по мобильным номерам, заканчивая различными SMS-рассылками. Потребности многих компаний не ограничиваются одним, даже самым мощным, шлюзом. При использовании же нескольких подобных устройств, особенно распределенных территориально, трудозатраты по их поддержке и администрированию возрастают значительно. Устройства под названием SIM-банки позволяют не только упростить работу с несколькими VoIP GSM шлюзами, но и добавить последним множество интересных возможностей. Сегодня, на примере SIM-банков SMB32 и SMB128 мы познакомимся и научимся работать с данным классом устройств.


                                  Читать дальше →