• Про одного парня

      История реальная, я все видел своими глазами.

      Несколько лет один парень, как и многие из вас, работал программистом. На всякий случай напишу так: «программистом». Потому что он был 1Сником, на фиксе, производственной компании.

      До этого он пробовал разные специальности – 4 года во франче программистом, руководителем проектов, умел закрывать по 200 часов, одновременно получая процент с проекта, за руководство и немного занимаясь продажами. Пробовал самостоятельно разрабатывать продукты, был начальником IT-отдела в большой компании, численностью 6 тысяч человек, примерял разные варианты применения своей кавычечной профессии – программиста 1С.

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

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

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

      Есть много причин, почему некоторым не удаётся привлечь талантов. Однако все команды, которые делали это с лёгкостью, поняли один простой факт о текущей ситуации на рынке:

      При найме сеньоров не компания выбирает кандидата, а кандидат выбирает компанию.

      Проще говоря:

      Приглашая опытного разработчика, вы не покупаете, а продаёте.
      Читать дальше →
    • Кортежи в языках программирования. Часть 1

        Сейчас во многих языках программирования существует такая конструкция, как кортежи (tuples). Где-то кортежи в той или иной мере встроены в язык, иногда — опять же в той или иной мере — реализуются средствами библиотек. C++, C#, D, Python, Ruby, Go, Rust, Swift (а также Erlang, F#, Groovy, Haskell, Lisp, OCaml и многие другие)…
        Что же такое кортеж? В Википедии дается достаточно точное определение: кортеж — упорядоченный набор фиксированной длины. Определение хоть и точное, но для нас пока бесполезное, и вот почему: задумывается ли большинство программистов, зачем понадобилась эта сущность? В программировании существует множество структур данных, как фиксированной, так и переменной длины; они позволяют хранить различные значения — как однитипные, так и разных типов. Всевозможные массивы, ассоциативные массивы, списки, структуры… зачем еще и кортежи? А в языках со слабой типизацией — и тем более, разница между кортежами и списками/векторами совсем размытая… ну нельзя добавлять в кортеж элементы, ну и что с того? Это может ввести в некоторое заблуждение. Поэтому стоит копнуть глубже и разобраться, зачем же на самом деле нужны кортежи, чем они отличаются от других языковых конструкций, и как сформировать идеальный синтаксис и семантику кортежей в идеальном (или близком к идеальному) языке программирования.

        В первой части мы рассмотрим кортежи и кортежеподобные конструкции в распространенных и не очень языках программирования. Во второй части я попытаюсь обобщить и расширить и предложить наиболее универсальный синтаксис и семантику кортежей.
        Читать дальше →
      • Свой облачный хостинг за 5 минут. Часть 1: Ansible, Docker, Docker Swarm

          Cloud hosting

          Привет Хабр! Последние 1.5 года я работал над своим проектом, которому был необходим надежный облачный хостинг. До этого момента я больше 10 лет занимался веб-программированием и когда я решил построить свой хостинг у меня были относительно поверхностные знания в этой области, я и сейчас не являюсь системным администратором. Все что я буду рассказывать может выполнить обычный программист в течение 5 минут, просто запустив набор сценариев для Ansible, которые я подготовил специально для вас и выложил на GitHub.
          Читать дальше →
        • «Запрограммировать» ЦОД

          Всем добрый день. Сегодня нам хотелось бы обсудить технологии и инструменты, обеспечивающие «программную определяемость» сетевой части дата-центров.

          В первую очередь при построении SDDC стоит задуматься о технологии макровиртуализации. Она подразумевает под собой рабочий тандем системы управления виртуальными машинами (ВМ), DCIM (Data Center Infrastructure Management) и SNMP-адаптеров (Simple Network Management Protocol). DCIM с помощью адаптеров собирает и агрегирует информацию о состоянии инженерной инфраструктуры дата-центров, наличии свободных площадей, а также места в стойках. Система позволяет получать максимально полную картину того, что происходит в ЦОД компании-провайдера «здесь и сейчас». Если присовокупить к данным DCIM информацию из системы управления ВМ, это позволит определять проблемные точки в ЦОД (превышение пороговых значений температуры, нехватка электропитания и др.) и перемещать в ту или иную физическую зону дата-центра (или в другой дата-центр) нагрузку на процессорные мощности. Компания сможет осуществлять миграцию высоконагруженных виртуальных машин ближе к подходящим элементам инженерной инфраструктуры. И в зонах «накала серверных страстей» будет наиболее холодно.

          Таким образом, физические дата-центры провайдера, объединенные технологией макровиртуализации, преобразуются в единую «экосистему», обладающую, помимо всего прочего, повышенной надежностью. Здесь уместна пословица «Веника не сломишь, а прутья по одному все переломаешь»: при невысоком уровне надежности инженерной инфраструктуры отдельных ЦОД все они обеспечивают полное взаимное резервирование.
          Читать дальше →
        • Удаленная работа с видом на море и горы: личный опыт в Черногории



            Земным раем для фрилансеров и удаленщиков традиционно считается Таиланд, для меня же таким местом стала Черногория. Вторую весну подряд я на три месяца перебираюсь со своей семьей в Будву, городок на побережье Адриатического моря, и работаю оттуда удаленно. О том, почему именно Черногория и к чему надо быть готовым в этой стране, я и хочу рассказать.
            Читать дальше →
          • 30 полезных сервисов для веб-разработчика

              Решил собрать сервисы, которые могут быть полезны веб-разработчикам и дизайнерам. Буду рад, если кто-то найдет для себя полезный сервис. Осторожно, под катом куча картинок!
              Читать дальше →