Тайна вызова Less в Linux утилитах
Привет ребят. Ща покопаемся в неочевидных вещах, залезем так сказать под капот.
ㅤ
Знаешь же такую команду:
Тут всё просто, она выводит историю коммитов. И что примечательно, в конце будет пагинация (pager). Смотри картинку 1.
А теперь пойдем неочевидной дорожкой и выполним:
Ну и снова запустим
Хуяк и нет больше пагинации. Сразу вывалилась простыня. О чем это говорит? А говорит это о том, что
Но если
И видим картину маслом: Смотри картинку 3
Ага, запускается
Вот и прекрасно, словили ошибку
Если выполнить команду
Иииии ебать копать: Смотри картинку 5.
Кстати не только
Ну и на закуску:
Команда
А это уже еще один вектор атаки из арсенала пентестеров, о котором никто не рассказывает. Так что бери на вооружение, глядишь сгодится при прохождении очередного HackBox’а.
🛠 #security #linux
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Привет ребят. Ща покопаемся в неочевидных вещах, залезем так сказать под капот.
ㅤ
Знаешь же такую команду:
git log
Тут всё просто, она выводит историю коммитов. И что примечательно, в конце будет пагинация (pager). Смотри картинку 1.
А теперь пойдем неочевидной дорожкой и выполним:
sudo mv /usr/bin/less /usr/bin/less.bak
Ну и снова запустим
git log: Смотри картинку 2.Хуяк и нет больше пагинации. Сразу вывалилась простыня. О чем это говорит? А говорит это о том, что
git использует внешнюю утилиту less при выводе истории коммитов, причем делает это по умолчанию.Но если
less накрылся пиздой, git сразу вывалит простыню без пагинации. Забавно! Давай подключим strace и подтвердим этот факт, запускаем:strace -f -e execve git log
И видим картину маслом: Смотри картинку 3
Ага, запускается
less, а теперь снова перемещаем less и смотрим выхлоп strace: Смотри картинку 4Вот и прекрасно, словили ошибку
error: cannot run less: No such file or directory. Но ожидаемый результат все равно получили.Если выполнить команду
echo $PAGER, то увидим, какая утилита будет использоваться для пагинации. По умолчанию less, но раз есть переменная, её можно переопределить. Давай попробуем это сделать.apt install lolcat
export PAGER="lolcat"
git log
Иииии ебать копать: Смотри картинку 5.
Кстати не только
git завязан на переменную $PAGER, такое же поведение ты можешь увидеть у утилит: man, systemctl, journalctl и т.п. Всё что работает с пагинацией, использует переменную $PAGER.Ну и на закуску:
export PAGER="vim -"
man ls
Команда
man ls будет выполнена в vim. То есть получается что любая программа, доверяющая $PAGER, фактически запускает произвольную команду пользователя.А это уже еще один вектор атаки из арсенала пентестеров, о котором никто не рассказывает. Так что бери на вооружение, глядишь сгодится при прохождении очередного HackBox’а.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2 39
Selectel работает — вы зарабатываете до 20% от чека клиентов
Становитесь партнером ведущего независимого провайдера ИТ-инфраструктуры, рекомендуйте качественный сервис и получайте пассивный доход от реферальной программы. Партнером может стать как юридическое, так и физическое лицо.
При регистрации в программе до 31 мая вы получите повышенную ставку 20% на 3 месяца. А после этого срока — от 10 до 15% от чека с ежемесячными выплаты без лимитов по сумме и сроку.
Ваши рефералы будут довольны. В Selectel 50+ инфраструктурных продуктов, большой выбор комплектующих для серверов и бесплатная техподдержка.
Регистрируйтесь в партнерской программе Selectel до 31 мая и получайте 20% от чека ваших рефералов первые 3 месяца: https://slc.tl/3cp0s
Реклама. АО "Селектел". erid:2W5zFJbjLJm
Становитесь партнером ведущего независимого провайдера ИТ-инфраструктуры, рекомендуйте качественный сервис и получайте пассивный доход от реферальной программы. Партнером может стать как юридическое, так и физическое лицо.
При регистрации в программе до 31 мая вы получите повышенную ставку 20% на 3 месяца. А после этого срока — от 10 до 15% от чека с ежемесячными выплаты без лимитов по сумме и сроку.
Ваши рефералы будут довольны. В Selectel 50+ инфраструктурных продуктов, большой выбор комплектующих для серверов и бесплатная техподдержка.
Регистрируйтесь в партнерской программе Selectel до 31 мая и получайте 20% от чека ваших рефералов первые 3 месяца: https://slc.tl/3cp0s
Реклама. АО "Селектел". erid:2W5zFJbjLJm
Less и секретный режим мониторинга
ㅤ
Очередные консольные приколы о которых ты не знаешь. Есть такая красота:
Эта команда будет в реальном времени выводить строчки из файла по мере их добавления. То есть ты можешь наблюдать за лог файлами как с авто-суфлёра.
НО есть аналог:
А если кто не знал, то в
Сразу видно, что утилиты затачивали под одну экосистему и unixway. Ну а теперь вкуснятина.
После выполнения команды
Ну а чтобы вернуться в режим наблюдения, нажимаем
Так что
🛠 #bash #linux
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
ㅤ
Очередные консольные приколы о которых ты не знаешь. Есть такая красота:
tail -f /var/log/nginx/access.log
Эта команда будет в реальном времени выводить строчки из файла по мере их добавления. То есть ты можешь наблюдать за лог файлами как с авто-суфлёра.
НО есть аналог:
less +F /var/log/nginx/access.log
А если кто не знал, то в
less можно пользоваться клавишами vim. Например, навигация hjkl.Сразу видно, что утилиты затачивали под одну экосистему и unixway. Ну а теперь вкуснятина.
После выполнения команды
less +F нажимаем CTRL+C и теперь можно передвигаться по выводу как раз теме же клавишами hjkl, что-то поискать /127.0.0.1, g/G, n/N. На минуточку, в tail ты так быстро ничего не поищешь. Надо тормозить процесс, выгружать в файл, грепать-хуепать.
Ну а чтобы вернуться в режим наблюдения, нажимаем
SHIFT+F и less возвращает режим мониторинга, строчки с логами продолжают бежать в реальном времени.Так что
less это не просто про пагинацию, а немного больше.—
Please open Telegram to view this post
VIEW IN TELEGRAM
Docker кеш без боли
ㅤ
Давай поговорим про docker и кеширование, тема вроде поверхностная, но как оказалось многие в ней плавают и особо не понимают почему их сборка каждый раз занимает 100500 минут.
А занимает она столько минут, по одной причине — копировать исходники нужно в последнем слое. Механизм тут простой, если какой-то слой изменился, то следующие слои будут пересобраны. Логично, что если ты копируешь исходники так:
Тебе пезда! Всё будет пересобираться каждый раз с нуля, никаким кешированием тут и не пахнет. Так делают многие, ведь оно работает и пофигу что долго.
В примере выше, команда
Ключевой момент тут исходники, которые меняются.
Получаем:
- заново устанавливает npm зависимости
- заново качает пакеты
- заново rebuild native modules
- тратит минуты в CI
Хотя зависимости вообще не менялись. Мрак! Фиксим:
Теперь если что-то изменить в коде проекта, пересобирается только:
А
Бест-практика простая: От самого стабильного → к самому изменяемому.
- base image
- системные пакеты
- lock-файлы зависимостей
- install dependencies
- исходники
- build
- startup
Короче думай паттерном, а не жопой — «Какие файлы меняются редко?» и выносить их максимально вверх Dockerfile.
Каждый
Вот и вся наука.
🛠 #devops #docker
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
ㅤ
Давай поговорим про docker и кеширование, тема вроде поверхностная, но как оказалось многие в ней плавают и особо не понимают почему их сборка каждый раз занимает 100500 минут.
А занимает она столько минут, по одной причине — копировать исходники нужно в последнем слое. Механизм тут простой, если какой-то слой изменился, то следующие слои будут пересобраны. Логично, что если ты копируешь исходники так:
FROM node:22
WORKDIR /app
COPY . .
RUN npm install
RUN npm run build
CMD ["node", "dist/index.js"]
Тебе пезда! Всё будет пересобираться каждый раз с нуля, никаким кешированием тут и не пахнет. Так делают многие, ведь оно работает и пофигу что долго.
В примере выше, команда
COPY копирует весь проект. Представь, что ты изменил одну букву в конфиге и приехали. Кеш инвалидировался, сборка пошла по новой и RUN npm install доставит много удовольствия. Ключевой момент тут исходники, которые меняются.
Получаем:
- заново устанавливает npm зависимости
- заново качает пакеты
- заново rebuild native modules
- тратит минуты в CI
Хотя зависимости вообще не менялись. Мрак! Фиксим:
FROM node:22
WORKDIR /app
COPY package.json package-lock.json ./
RUN npm ci
COPY . .
RUN npm run build
CMD ["node", "dist/index.js"]
Теперь если что-то изменить в коде проекта, пересобирается только:
COPY . .
RUN npm run build
А
RUN npm ci возьмется из кеша. Аналогично и в питончике и гошке:COPY . .
RUN pip install -r requirements.txt
COPY . .
RUN go mod download
Бест-практика простая: От самого стабильного → к самому изменяемому.
- base image
- системные пакеты
- lock-файлы зависимостей
- install dependencies
- исходники
- build
- startup
Короче думай паттерном, а не жопой — «Какие файлы меняются редко?» и выносить их максимально вверх Dockerfile.
Каждый
RUN, COPY, ADD это новый слой. Docker пытается переиспользовать уже существующие слои из кеша. Если инструкция и все предыдущие слои не изменились — слой не пересобирается. Docker сбрасывает кеш начиная с измененного слоя.Вот и вся наука.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
This media is not supported in your browser
VIEW IN TELEGRAM
Стрим о защите контейнеров, который нельзя пропустить
Что сейчас ломают в контейнерных средах и как от этого защищаться. На стриме 28 мая в 11:00 разберем ключевые угрозы, покажем ИИ и другие ключевые новинки Kaspersky Container Security, которые уже меняют игру в контейнерной безопасности. Спикеры — эксперты «Лаборатории Касперского» и платформы «Штурвал».
Чтобы не пропустить, регистрируйтесь.
Что сейчас ломают в контейнерных средах и как от этого защищаться. На стриме 28 мая в 11:00 разберем ключевые угрозы, покажем ИИ и другие ключевые новинки Kaspersky Container Security, которые уже меняют игру в контейнерной безопасности. Спикеры — эксперты «Лаборатории Касперского» и платформы «Штурвал».
Чтобы не пропустить, регистрируйтесь.
Когда начинаешь вкатываться в Ansible, кажется что
ㅤ
Многие пишут:
А переменная
И вроде тут всё ок, НО
Поэтому правильнее будет сделать так:
Здесь
В первом случае это «хак», ты делаешь
Главная мысль тут — если модуль умеет принимать список —
Loop нужен там, где логика на каждый элемент отдельная:
- разные параметры
- условия
- шаблоны
- создание пользователей
- файлы
- сложные таски
Короче не заLOOPайся и будет тебе счастье.
🛠 #devops #linuxfactory #ansible
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
loop нужен вот прям всегда и везде. Но это не так.ㅤ
Многие пишут:
- name: install packages
ansible.builtin.apt:
name: "{{ item }}"
state: present
update_cache: yes
loop: "{{ packages }}"
А переменная
packages содержит список пакетов на установку.И вроде тут всё ок, НО
apt вызывается для каждого пакета отдельно, а update_cache может дёргаться несколько раз. Это избыточно и ломает заложенные паттерны.Поэтому правильнее будет сделать так:
- name: install packages
ansible.builtin.apt:
name: "{{ packages }}"
state: present
update_cache: yes
Здесь
apt получает сразу список пакетов, кеш обновляется один раз, установка идёт одной транзакцией. Получается меньше оверхеда, всё происходит быстрее и логичнее.В первом случае это «хак», ты делаешь
loop из одного элемента, внутри которого уже лежит список.Главная мысль тут — если модуль умеет принимать список —
loop нахуй не нужен.Loop нужен там, где логика на каждый элемент отдельная:
- разные параметры
- условия
- шаблоны
- создание пользователей
- файлы
- сложные таски
Короче не заLOOPайся и будет тебе счастье.
Ну а если хочешь стать гуру, я всегда жду тебя здесь.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
2 81
Китайские LLM продолжают завоевывать рынок
За пару месяцев вышли сразу несколько сильных open source релизов: GLM-5.1, Kimi K2.6, DeepSeek V4 Pro.
Что интересного:
Как внедрить в проекты:
📍 Все модели доступны в каталоге Evolution Foundation Models от Cloud.ru.
👉 Протестируйте новые модели в личном кабинете👈
За пару месяцев вышли сразу несколько сильных open source релизов: GLM-5.1, Kimi K2.6, DeepSeek V4 Pro.
Что интересного:
▶️ GLM-5.1 — мощная модель для Agentic AI: умеет автономно выполнять задачи до 8 часов и поддерживает сложные сценарии.▶️ Kimi K2.6 делает ставку на мультимодальность и Agent Swarm-подход, позволяя оркестрировать до 300 субагентов.▶️ DeepSeek V4 Pro выделяется контекстом до 1 млн токенов и гибридной архитектурой внимания для эффективной работы с длительным контекстом.
Как внедрить в проекты:
В сервисе уже 45+ популярных LLM. Модели готовы к использованию — не нужно развертывать инференс и писать код, достаточно подключиться через API.
Please open Telegram to view this post
VIEW IN TELEGRAM
Всем привет. Недавно прилетела неожиданная задача: Организовать скриптом sftp-обмен по со старых версий винды с аутентификацией по ключам.
🔤 🔤 🔤 🔤 🔤 🔤 🔤
С 10+ все понятно. Там и ssh и sftp из коробки есть настройка от linux вообще не отличается. А вот со старыми - проблема.
ㅤ
Почему до сих пор используются старые версии? Да потому что работают. А выставлять их наружу никто не собирается. Так что пока работает будет работать. Ну, я отвлекся.
Итак sftp. Я нашел две программы psftp (из комплекта putty) и winscp.
Попробовал обе и psftp пришлось забраковать. Оказалось, она не хочет работать, если не видит файлов в каталоге. (права xw (3)). А winscp.com (не сайт, программа для работы в скриптах из комплекта winscp) работает.
Вот ее и будем настраивать.
1. Генерим ключ без парольной фразы с помощью puttygen (из комплекта putty). Желательно выбрать EdDSA(Ed25519(255 bits). Он маленький, и с ним удобно работать. Сохраняем публичный ключ в формате *.ppk .
2. Для того, чтобы публичный ключ нормально читался его нужно привести к однострочному виду:
3. После этоого вставляем ключ в authorized_keys на серваке.
4. Запускаем winscp.exe и в настройках → хранилище меняем реестр на ini файл. Это нужно сделать, чтобы скрипт работал и от другого пользователя.
5. В WinSCP.exe создать подключение например «servername» указав ключ. В подключении можно и начальный каталог указать сразу.
6. Обязательно протестировать соединение приняв fingerprint.
7. Создать скрипт обмена script.sftp типа:
8. Запуск скрипта обмена:
9. Иногда, Скрипт, при запуске из какой-нибудь программы типа 1c не срабатывает. Тогда строку пункта 8 проще записать в какой-нибудь servername.bat и выполнять его из программы через cmd:
Вот тебе и винда, такая простая задача, и столько гемора при реализации. Да, кстати, на десятке тоже работает. Проверил.
Всем работы без багов.
🛠 #devops #windows
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
С 10+ все понятно. Там и ssh и sftp из коробки есть настройка от linux вообще не отличается. А вот со старыми - проблема.
ㅤ
Почему до сих пор используются старые версии? Да потому что работают. А выставлять их наружу никто не собирается. Так что пока работает будет работать. Ну, я отвлекся.
Итак sftp. Я нашел две программы psftp (из комплекта putty) и winscp.
Попробовал обе и psftp пришлось забраковать. Оказалось, она не хочет работать, если не видит файлов в каталоге. (права xw (3)). А winscp.com (не сайт, программа для работы в скриптах из комплекта winscp) работает.
Вот ее и будем настраивать.
1. Генерим ключ без парольной фразы с помощью puttygen (из комплекта putty). Желательно выбрать EdDSA(Ed25519(255 bits). Он маленький, и с ним удобно работать. Сохраняем публичный ключ в формате *.ppk .
2. Для того, чтобы публичный ключ нормально читался его нужно привести к однострочному виду:
ssh-ed25519 AAAAC3....8cJiPqx0VAOmEI+yy user@host
Я редактировал прямо в vim.
3. После этоого вставляем ключ в authorized_keys на серваке.
4. Запускаем winscp.exe и в настройках → хранилище меняем реестр на ini файл. Это нужно сделать, чтобы скрипт работал и от другого пользователя.
5. В WinSCP.exe создать подключение например «servername» указав ключ. В подключении можно и начальный каталог указать сразу.
6. Обязательно протестировать соединение приняв fingerprint.
7. Создать скрипт обмена script.sftp типа:
open servername
put filename
get filename1
bye
8. Запуск скрипта обмена:
C:\prog\WinSCP\winscp.com /ini=C:\prog\WinSCP\WinSCP.ini /logsize=2*100K /script=C:\prog\WinSCP\script.sftp /log="C:\prog\WinSCP\script.sftp.log" /console
9. Иногда, Скрипт, при запуске из какой-нибудь программы типа 1c не срабатывает. Тогда строку пункта 8 проще записать в какой-нибудь servername.bat и выполнять его из программы через cmd:
c:\windows\...\cmd.exe /c C:\prog\WinSCP\servername.bat
Вот тебе и винда, такая простая задача, и столько гемора при реализации. Да, кстати, на десятке тоже работает. Проверил.
Всем работы без багов.
—
Please open Telegram to view this post
VIEW IN TELEGRAM
Si vis pacem, para bellum
Все вокруг ноют, что у нас какой-то кризис в айти, рынок перегрет, вакансии схлопываются, а на одно место претендуют сотни кандидатов.
Ладно, я немного про другое хотел тебе написать. Тема довольна избитая — стоит ли сейчас увольняться и прыгать на другую работу, если ты уже официально трудоустроен?
Однозначно стоит, если предлагают x3-x4 к текущей ЗП. Но возникает парадокс. Казалось бы, сиди тихо, цени текущее место и не дергайся. Но всегда есть НО.
ㅤ
Зона комфорта vs Испытательный срок
На текущем месте работы, ты знаешь как всё устроено, где что лежит, можешь с закрытыми глазами ориентироваться, в общем царь и бог. Работаешь от силы 2-3 часа в день в комфортном для себя режиме, ездишь по делам и пинаешь хуи.
На новом месте работы — баланс придется выстраивать с нуля, неизвестность, снова DODы испытательного срока, новые технологии, коллеги-токсики. И опять же уровень компетенции. Если на предыдущем месте ты уверенный мидл-сеньор, то на новом месте, грейды оцениваются иначе.
Ежу понятно, что ключевой фактор это деньги. То есть здесь интересен не столько вопрос «правильно ли я поступаю», сколько вопрос «что именно я продаю и что покупаю».
Если смотреть со стороны:
Вместе с новой зарплатой получаем новый набор рисков:
— испытательный срок
— отсутствие привычной зоны комфорта
— необходимость реально показывать результат
— нагрузку, которая наверняка будет в разы выше
Для кого-то лишние 200–300 тысяч рублей в месяц полностью стоят стресса и переработок. Для кого-то возможность спокойно жить, заниматься своими проектами, семьей или просто не выгорать ценнее любой прибавки к зарплате.
Есть еще один интересный момент. Если человек годами работает в режиме «пару часов в день», он постепенно теряет понимание своей реальной рыночной стоимости. Внутри компании может казаться, что всё хорошо. Но настоящий уровень всегда показывает только рынок.
Переходы позволяют проверить себя об этот рынок. И ты либо разъебёшься об камни реальности, либо выплывешь, всё будет зависеть от твоих скилов и компетенций.
Поэтому иногда даже неудачный переход бывает полезнее десяти лет комфортного сидения на одном месте. Возможно, через три месяца ты поймешь, что ошибся. Возможно, через год будешь вспоминать прежнюю работу как слишком уютное болото.
А может быть, окажется, что все эти разговоры про кризис в ИТ сильно преувеличены для тех, кто готов брать на себя ответственность и приносить бизнесу результат.
Если это действительно x3, а не +20–30%, то я скорее понимаю такие решения. Зарплата в три раза выше способна за 1–2 года создать финансовую подушку, закрыть ипотеку, накопить капитал. Потерять комфорт неприятно, но комфорт — это тоже риск. Особенно в ИТ, где человек может годами находиться в тепличных условиях и не замечать, как рынок уходит вперед.
Короче хуй знает. Пишите в комменты свои мысли. Ни к чему не призываю, так, трёп…
Моя стратегия сюда уже не влезла, опубликовал её в блоге 👇
Читать продолжение: https://two.su/nrzhw
🛠 #workflow
—
💬 Bashdays 📲 MAX 🌐 LF 🔵 Blog
Все вокруг ноют, что у нас какой-то кризис в айти, рынок перегрет, вакансии схлопываются, а на одно место претендуют сотни кандидатов.
Да, так и есть. Искали мы тут QA специалиста, за неделю скинули более 2000 резюме. Это пиздец. Как будто нейронка по вакансии прошлась и нагенерила нам вайтишников.
С QA всё понятно, это самый простой вход в наш «цирк абсурда», но вот с другими вакансиями аналогичная ситуация. Причем кандидаты гнут пальцы и не хотят делать тестовые задания, даже за деньги.
Разленились падлы, подавай им сразу оффер и оклад 100500 мильонов за нехуй делать с обязательной удаленкой. Да идите вы нахуй!
Ладно, я немного про другое хотел тебе написать. Тема довольна избитая — стоит ли сейчас увольняться и прыгать на другую работу, если ты уже официально трудоустроен?
Однозначно стоит, если предлагают x3-x4 к текущей ЗП. Но возникает парадокс. Казалось бы, сиди тихо, цени текущее место и не дергайся. Но всегда есть НО.
ㅤ
Зона комфорта vs Испытательный срок
На текущем месте работы, ты знаешь как всё устроено, где что лежит, можешь с закрытыми глазами ориентироваться, в общем царь и бог. Работаешь от силы 2-3 часа в день в комфортном для себя режиме, ездишь по делам и пинаешь хуи.
На новом месте работы — баланс придется выстраивать с нуля, неизвестность, снова DODы испытательного срока, новые технологии, коллеги-токсики. И опять же уровень компетенции. Если на предыдущем месте ты уверенный мидл-сеньор, то на новом месте, грейды оцениваются иначе.
Коллега сеньор-фронтендер сходил в яндекс на технический собес ииии, барабанная дробь — его скилы оценили как джуновские, соответственно предложили ЗП намного меньше чем он рассчитывал. А всё, потому, что технологии шагнули вперед, а он всё еще на втором ангуляре кнопочки двигает.
Ежу понятно, что ключевой фактор это деньги. То есть здесь интересен не столько вопрос «правильно ли я поступаю», сколько вопрос «что именно я продаю и что покупаю».
Если смотреть со стороны:
Вместе с новой зарплатой получаем новый набор рисков:
— испытательный срок
— отсутствие привычной зоны комфорта
— необходимость реально показывать результат
— нагрузку, которая наверняка будет в разы выше
Для кого-то лишние 200–300 тысяч рублей в месяц полностью стоят стресса и переработок. Для кого-то возможность спокойно жить, заниматься своими проектами, семьей или просто не выгорать ценнее любой прибавки к зарплате.
Есть еще один интересный момент. Если человек годами работает в режиме «пару часов в день», он постепенно теряет понимание своей реальной рыночной стоимости. Внутри компании может казаться, что всё хорошо. Но настоящий уровень всегда показывает только рынок.
Переходы позволяют проверить себя об этот рынок. И ты либо разъебёшься об камни реальности, либо выплывешь, всё будет зависеть от твоих скилов и компетенций.
Поэтому иногда даже неудачный переход бывает полезнее десяти лет комфортного сидения на одном месте. Возможно, через три месяца ты поймешь, что ошибся. Возможно, через год будешь вспоминать прежнюю работу как слишком уютное болото.
А может быть, окажется, что все эти разговоры про кризис в ИТ сильно преувеличены для тех, кто готов брать на себя ответственность и приносить бизнесу результат.
Если это действительно x3, а не +20–30%, то я скорее понимаю такие решения. Зарплата в три раза выше способна за 1–2 года создать финансовую подушку, закрыть ипотеку, накопить капитал. Потерять комфорт неприятно, но комфорт — это тоже риск. Особенно в ИТ, где человек может годами находиться в тепличных условиях и не замечать, как рынок уходит вперед.
Короче хуй знает. Пишите в комменты свои мысли. Ни к чему не призываю, так, трёп…
А ты бы согласились поменять спокойную работу на зарплату в 3-4 раза выше, если бы знал, что работать придется действительно дохуя, да еще и проходить испытательный?
Моя стратегия сюда уже не влезла, опубликовал её в блоге 👇
Читать продолжение: https://two.su/nrzhw
—
Please open Telegram to view this post
VIEW IN TELEGRAM