Search
Write a publication
Pull to refresh
0
0

User

Send message

Как правильно отвечать на вопрос “Какие у вас зарплатные ожидания?” на рынке США

Reading time6 min
Views69K

На первом интервью чаще всего рекрутер может задать вопрос о зарплатных ожиданиях кандидата — “What Are Your Salary Expectations?”. Я принимаю участие в найме продукт-менеджеров, дизайнеров и инженеров и хочу поделиться с вами своим опытом как правильно отвечать на этот вопрос применительно к рынку США.

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

Читать далее

Holy C++

Reading time5 min
Views33K

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

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

1 - union - сумм тип из 70х, в С идея хранения одного типа из нескольких в одном участке памяти выглядит неплохо и сейчас, ведь там все типы это набор байт с заданным размером.

В С++ же использование union это автоматическое undefined behavior, например:

Читать далее!

Google запустил тренажёр для подготовки к собеседованиям Interview Warmup

Reading time2 min
Views20K

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

Компания Google разработала инструмент Interview Warmup, который позволит снизить тревожность, предоставляя возможность потренироваться отвечать на самые популярные вопросы, которые задают на собеседованиях.

Читать далее

Глубокая работа: секрет достижения максимальной продуктивности

Reading time8 min
Views15K

Все мы хотим быть продуктивнее и успевать делать больше работы. Но как это реально сделать на практике?

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

И только когда дедлайн уже вовсю маячит на горизонте, и начинает пахнуть жареным, я сажусь наконец за написание кода или анализ пулл-реквестов коллег. Знакомая картина? Увы, в этом я не одинок. Я долго пытался бороться с собой и пробовал разные методики, пока один из коллег не порекомендовал мне познакомиться с книгой «Глубокая работа».

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

В чем его секрет? В той самой пресловутой глубокой работе. Итак, вдохновившись примером Кэла Ньюпорта (а кто не хочет тоже стать монстром продуктивности?), я решил попробовать работать глубоко по его системе.

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

Читать далее

Как я разогнал fail2ban* в тысячу раз с помощью SIMD

Reading time15 min
Views21K

Fail2ban — утилита чрезвычайно полезная во многих случаях. Думаю, многие используют её для того, чтобы в автоматическом режиме блокировать особенно назойливых «посетителей». К сожалению, если входящий поток становится слишком большим, fail2ban теряет все свои полезные свойства, потому что разбор лога безнадёжно отстаёт от реальности.

Лог nginx из 100 тысяч строчек fail2ban при самых простых настройках разбирает порядка 45 секунд. Нехитрыми манипуляциями его можно ускорить раз в 6, но этого оказалось недостаточно. Наивная реализация на аналогичного фильтра на Rust уже обеспечила требуемую производительность, но если уж взялся за оптимизацию, то остановиться трудно.

* только необходимую часть функционала

Читать далее

Зачем оформлять документы о создании программного обеспечения (мнение практикующего юриста)

Reading time14 min
Views7.1K

Согласно данным опроса сервиса SuperJob, в 51% опрошенных компаний есть сотрудники "на удаленке". При чем, чаще всего на дистанционную работу переводят сотрудников из сферы информационных технологий.

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

Состав документов может варьироваться от количества задействованных в разработке лиц (особенно если речь идет об авторских коллективах, крупных контрактах с длинными «цепочками» заказчиков, подрядчиков, субподрядчиков и т.д.).

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

Читать далее

Служебные произведения. Как работодателю правильно оформить и защитить права на программы для ЭВМ и базы данных

Reading time6 min
Views6.8K

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

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

Действительно, по общему правилу, исключительные права на произведения принадлежат работодателю, если иное не установлено в договоре (к примеру в трудовом договоре), но только если оно разработано работником (автором) в пределах его трудовых обязанностей. Однако, если работник вдруг обратится в суд, посчитав что исключительное право на произведение принадлежит ему, т.к. создано оно вне рамок исполнения им своих трудовых функций, сможете ли вы доказать суду документально, что этот работник создал произведение именно в рамках своих трудовых обязанностей? Если нет, то суд с большой долей вероятности может принять решение в сторону работника, тем более не следует забывать что работник в данном случае является "слабой стороной", а значит спрос с работодателя в суде будет максимальным. Исходя из личного профессионального опыта могу с уверенностью сказать что многие работодатели не уделяют кадровым документам надлежащего внимания и зачастую даже название должности не соответствует тому, чем фактически занимается работник. Ни в трудовом договоре, ни еще где-либо отсутствуют функциональные обязанности или прописаны так абстрактно, что судью становится очень сложно убедить в том, что имелось ввиду в таких «рукописях».

Читать далее

Разбираем концовку «Чужого»

Reading time6 min
Views74K


Привет, %username%.

Я, как обычно, не успокоюсь.

А всему причина пентафторид иода и прошлая статья!

В общем, все мы (надеюсь) помним начало творчества Ридли Скотта и просто потрясающий фильм «Чужой», который я рекомендую, несмотря на то, что он 1979 года. К концу этой статьи я докажу, что фильм не просто крут — он НАУЧЕН!

А для этого мы напряжём память и вспомним концовку: Рипли садится на челнок и внезапно обнаруживает там Чужого.

А теперь будет немного картинок, тёплых воспоминаний и химии.
Читать дальше →

Типографика фильма «Чужой»

Reading time14 min
Views45K
image

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

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

Начальные титры «Чужого» — настоящий шедевр типографики. Можно посмотреть их целиком на сайте Art Of The Title. Если вкратце, их смысл таков: медленное, постепенное появление частей букв модифицированного шрифта Helvetica Black в течение 90 секунд раскрывает основную тему фильма.
Читать дальше →

Типографика фильма «Бегущий по лезвию»

Reading time18 min
Views24K

После подробного исследования фильма «Чужой» настало время взглянуть на типографику и дизайн ещё одного классического научно-фантастического фильма Ридли Скотта«Бегущий по лезвию» (Blade Runner). Эта лента, снятая по мотивам романа Филипа К. Дика «Мечтают ли андроиды об электроовцах?», упрочила репутацию Скотта как автора красивой, умной научной фантастики в жанре tech noir.

(Должен заранее сообщить, что в статье есть множество спойлеров о фильме. Если вы не хотите знать, когда в «Бегущем по лезвию» единственный раз мелькает шрифт Eurostile Bold Extended, то отложите чтение.)
Читать дальше →

Обзор всего доступного в С++ type erasure

Reading time4 min
Views14K

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

Если спросить современного С++ разработчика какие примеры type erasure он видел / использовал, то вероятно он ответит что то про std::function и возможно про std::any, но это лишь малая часть всех применений этого замечательного инструмента!

В статье я постараюсь описать все возможные виды type erasure в современном С++, но начать стоит с определения.

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

Начнём с того, что было уже в С и о чём часто забывают говоря об erasure

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

Кстати, насчёт байтов:

std::byte (since C++17) / unsigned char / char так исторически сложилось, что в С все использовали чары для работы с сырыми байтами, поэтому для них в языке С++ исключение и указатель на них можно приводить к указателю на любой другой тип. Это не обходится без последствий и иногда из-за этого строки теряют некоторые оптимизации, поэтому сначала добавили std::byte, а потом начали потихоньку заменять чары (char8_t since C++20), но это уже совсем другая история. В контексте стирания типов нам важно, что мы получили способность читать данные из стёртого типа, а составив массив мы получим ещё и верхнюю границу размера типа, что конечно немного, но с void и так нельзя.

[erased]

Кто нанимает в русскоязычные команды вне РФ и Беларуси? (апрель 2022)

Reading time3 min
Views59K

После 24-го февраля появились десятки каналов в Телеграме, постов на VC, Хабре, страничек в Notion, которые собирают компании с удаленкой и релокацией. Но я не нашел ресурсов или каналов, которые концентрируются на одном аспекте: русском языке общения в командах.

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

Для этих людей я собрал в этом посте какие-то компании с русскоязычными командами разработки, которые релоцируют из РФ и Беларуси сейчас (то есть это не компании в Прибалтике, Польше и Чехии), либо позволяют удаленку из-за границ РФ с зарплатой в долларах или евро.

Пост не претендует на полноту или оригинальность. Хочется сделать русско-эмигрантский аналог постов Who is hiring? на Hacker News, где участники сообщества рекламируют вакансии в своих фирмах в комментариях.

На мой взгляд, это важный аспект, потому для ИТ-специалиста с хорошим английским, у которого главная цель - уехать из РФ или Беларуси, найти работу - вообще не проблема даже без всяких чатов и каналов. Английский - единственный профессиональных язык общения в огромном количестве компаний в Англии, Германии, Швеции, ОАЭ, Юго-Восточной Азии, куда довольно легко попасть (потому что сейчас везде острая нехватка специалистов), а релоцируют быстро и без особых проблем.

Читать далее

70+ бесплатных инструментов для компьютерной криминалистики (форензики)

Reading time8 min
Views50K

Расследование инцидентов в области информационной безопасности не такая горячая тема, как пентесты, но эта научная и практическая дисциплина продолжает развиваться, во многом, благодаря Open Source-сообществу.

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

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

Читать далее

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

Reading time1 min
Views5.8K

Cобрала ссылки на ресурсы Harvard, Yale, Stanford, Washington Universities по оформлению резюме под американские и международные вакансии. Подходит для удаленных вакансий, проверено на собственной шкуре.

Читать далее

Где искать данные по зарплате на этапе обсуждения оффера?

Reading time3 min
Views18K

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

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

Ниже я привожу несколько источников в первую очередь с фокусом на США которые можно использовать для анализа. Большинство из этих ресурсов используют данные предоставленные самими сотрудниками, анонимно.

Читать далее

Мистика культурных ценностей Петербурга глазами аналитика

Reading time10 min
Views4.7K

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

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

Погрузиться в исследование

Магия ssh

Reading time12 min
Views75K

Разве что ленивый не писал про ssh и несмотря на это, данный протокол и его возможности не перестают меня восхищать. Здесь я хочу поделиться исключительно своим опытом использования сего замечательного инструмента в своих задачах (При этом активно применяю его даже при разработке на Windows).

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

  • Удалённый доступ — логично, ведь для этого он и предназначался.
  • Монтирование папок по сети — очень удобно для работы с кодом на удалённой машине.
  • Удалённое выполнение команд — нечастая, но используемая мной операция. Удобно получать выхлоп команды в канал другой команды на текущей машине.
  • Запуск графических приложений на удалённой машине.
  • Проксирование трафика — способ перенаправления трафика. Этакий быстрый и простой аналог VPN.
  • Обратный ssh — использую для проброса портов к системам, находящимися за NAT, когда лень настраивать firewall.

Далее вкратце разберу каждый пункт, и особенно пути эффективного и простого использования под Windows.
Читать дальше →

99+ бесплатных инструментов для анализа зловредов

Reading time10 min
Views56K

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

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

Читать далее

Мои вопросы работодателю, когда подаюсь на разработчика

Reading time9 min
Views89K

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

Читать далее

C++. Убираем приватные поля из описания класса или немного дурачества

Reading time4 min
Views9.9K

Всем привет! Решил на выходных продолжить писать свой домашний проект и наступила пора реализовать платформозависимый код. Самым простым вариантом было бы описать классы в *.h файле, а в зависимости от платформы, Закрытые поля засунуть под #define. При этом, саму реализацию по конкретным платформам разнести по *.cpp файлам и включать их в компиляцию в зависимости от текущей платформы. Но... мне не нравится как выглядит описание класса с #define, поэтому я решил убрать препроцессор и оставить в описании класса только интерфейс. И да, я не пользовался абстрактными классами и pimpl, всё еще хуже :-)

Читать далее

Information

Rating
Does not participate
Registered
Activity