pavki/hr_qa_sbs_best_bad huggingface dataset:
Вопрос: После уменьшения файла лога транзакций, 1с ругается в некоторых операциях?

Лучший ответ: Обрежьте журнал транзакций гигабайт до 5, установите приращение в 1 ГБ и не возвращайте БД в Full - вы всё равно не пользуетесь преимуществами полной модели восстановления. Оставьте в простой.
Deadlock'и у вас появляются из-за кривого кода 1С (ищите их документацию по причинам возникновения и избавлению от взаимоблокировок - её полно). Почему не возникали раньше? Возможно, потому что после "обрезки" ЖТ и переводе в полную модель восстановления, ЖТ снова начал расти и одна из кривых операций ждала завершения приращения, когда вторая кривая операция начала выполняться. Но это мой хрустальный шар только предполагает, вам и вашим одинэсникам виднее должно быть.

Худший ответ: Если 1с ругается в некоторых операциях, первое что делают это чистят кэш.
Вопрос: Как изменить тип переменной?

Лучший ответ: Не выйдет. C++ статически типизирован, и это то, что позволяет ему работать быстро.
А зачем, собственно, это понадобилось? В конкретной ситуации можно что-нибудь придумать.
P.S. Если хочется "просто", стоит оставаться на Питоне :)

Худший ответ: Разве что std::variant, но и там надо заранее указать все допустимые типы.
Вопрос: Как при наведении на один блок изменять стили другого, когда блоки находятся в разных местах?

Лучший ответ: Чтобы сработало, фигуры должны быть расположены в коде после списка
Причем списка не должно быть =)

пример

<div class="hover_1">2321321
<div class="hover_2">2321321
<div class="hover_3">2321321

<div class="hovered_1">
<div class="hovered_2">
<div class="hovered_3">

.hover_1:hover ~ .hovered_1 {}
.hover_2:hover ~ .hovered_2 {}
.hover_3:hover ~ .hovered_3 {}

Фигуры могут располагаться в своем контейнере:
<div class="hover_1">2321321
<div class="hover_2">2321321
<div class="hover_3">2321321

<div class="container">
  <div class="hovered_1">
  <div class="hovered_2">
  <div class="hovered_3">
</div>

.hover_1:hover ~ .container .hovered_1 {}
.hover_2:hover ~ .container .hovered_2 {}
.hover_3:hover ~ .container .hovered_3 {}

Худший ответ: В styled components данная возможность реализована.
https://styled-components.com/docs/advanced#referr...
Вопрос: По какому принципу работает autoload в composer?

Лучший ответ: Composer работает по нескольким стандартам - PSR-0 и PSR-4 которые работают по соглашению именования классов и расположения файлов в которых они объявлены - то есть в нем реализована "Ленивая" загрузка классов - класс грузится только когда впервые используется (https://secure.php.net/manual/ru/language.oop5.aut...
Смотри также:
- https://www.php-fig.org/psr/psr-0/
- https://www.php-fig.org/psr/psr-4/
Так же для совместимости есть способ classmap когда явно задается карта "класс" => "файл":
- https://getcomposer.org/doc/04-schema.md#autoload

Худший ответ: В принципе все более-менее понятно.
Происходит подключение класса, например use Class.
Если класс не найден, то вызываются зарегистрированные spl_методы.
Метод ищет ключ Class ищет в карте_классов.json (забыл как называется), со структурой "class_path : file_path".
Если находится, то происходит подключение класса (require, include, когда как. Отчего зависит я так и не понял).
Если нет, то ищет в основных папках, массив путей которых тоже хранится где-то в каком-то виде (тут я не уверен, так ли в композере, но в другом автолоадере видел такое).
Если никогда ничего не найдено, то вернёт ошибку.
Вроде так, если кто знает больше - поправьте меня, исправлю ответ.
Вопрос: Как закрывать блок при клике за его пределами?

Лучший ответ: Скрыть элемент при клике за его пределами

Худший ответ: Используй :focus-within, если элемент все фокуса, то список скрывается.

Разметка +-
<div class="menu-item" tabindex="-1">
  <div class="menu-item-toggle">Menu item</div>
  <div class="menu-item-list">
    <div class="menu-item">sub item</div>
    <div class="menu-item">sub item</div>
    <div class="menu-item">sub item</div>
    <div class="menu-item">sub item</div>
  </div>
</div>

.menu-item:not(:focus-within) .menu-item-list {
  display: none;
}
Вопрос: Как циклом перебрать список?

Лучший ответ: Циклы в C#
https://professorweb.ru/my/csharp/charp_theory/lev...

Худший ответ: Эмм. Это где-то в первой-второй главе любой книги по C# для начинающих идёт. 
https://metanit.com/sharp/tutorial/2.6.php (про циклы)
https://metanit.com/sharp/tutorial/4.5.php (про листы. Ничего особо не отличается от массивов в плане работы)
var list = new List {1,2,3,4};
foreach(var item in list) {
  if(IsEven(item)) //Например хотим вывести в консоль все чётные числа
    Console.WriteLine(item);
}

агрессивные мысли вслух
ДА ПОЧЕМУ ЭТИ ДЕБИЛЫ ПОСТОЯННО ЛЕЗУТ В ЮНИТИ С ШАРПОМ, НЕ ЗНАЯ ШАРПА.
ЕСЛИ НЕ ЗНАЕТЕ ЯП - НУ ВОЗЬМИТЕ КАКОЕ-НИБУДЬ ВИЗУАЛЬНОЕ СРЕДСТВО ПРОГРАММИРОВАНИЯ, РАЗ ВАМ ТАК ПРИНЦИПИАЛЬНО ХОЧЕТСЯ СРАЗУ НАЧАТЬ ИГРУШЕЧКИ ДЛЯ ТАКИХ ЖЕ ДЕБИЛОВ ДЕЛАТЬ.
ДОКУМЕНТАЦИЮ ЧИТАТЬ ЕЩЁ НАУЧИТЕСЬ.
Вопрос: Как правильно настроить мониторинг?

Лучший ответ: Можно проверять так:curl http://localhost:8000/radio.mp3 | head -c 300 | file - | grep MPEG
Если действительно прилетает MPEG Layer III поток, то греп выйдет с нулевым кодом завершения. Дальше шелл вам в руки.
По поводу vlc. Можно запускать его без графического интерфейса. И сделать для запуска systemd unit отдав управление запуском/перезапуском в случае падения  systemd на откуп. Ну а мониторить заббиксом уже активность systemd юнита.

Худший ответ: Делать тестовый запрос и анализировать, что прилетает в ответ - по размеру или как-то более хитро.
Вопрос: Как ЭТО закодировать в json?

Лучший ответ: Эти просто строки должны быть просто написаны в простой кодировке utf-8. 
Предваряя возможные возражения. Нет, не "я тут поковырял в носу, и полагаю, что эти просто строки уже в кодировке utf-8", а фактически быть в кодировке utf-8.
Предваряя возможные предложения. Перекодировать - это будет голопотяпство. Надо сразу получать в нужной кодировке, оттуда, откуда эти строки берутся. Поскольку автор вдруг решил играть в юного партизина, то актуальное решение будет искать самостоятельно.
После того, как из автора удалось выбить показания, появилась возможность восстановить картину происшествия.
Р¤Рћ_РўРћ - это утф, перекодированный в 1251.echo mb_convert_encoding('ФО_ТО', "UTF-8", "cp1251");
Соответственно, обратноecho mb_convert_encoding('Р¤Рћ_РўРћ', "cp1251", "utf-8");

Худший ответ: Приведите к utf8 все строчные элементы, либо заюзайте опцию: JSON_UNESCAPED_UNICODE
Вопрос: Как подготовиться к собеседованию на Front-end разработчика???

Лучший ответ: Хороший джун умеет в первую очередь гуглить :)
+ Портфолио \ гитхаб с демонстраницей знаний на практике и с рассказом что ты там накодил.

Худший ответ: Хватит ли знаний HTML, CSS, JavaScript, Git, SaSS, ReactJS (основы) для того чтобы попасть на работу в IT компанию
Просто напишите в резюме чем владеете и на каком уровне. И ищите компанию которая готова взять вас с вашим уровнем. Есть полным полно компаний, готовых взять совсем зеленых разработчиков, за очень дешево. Просто ищите.
Вопрос: Печатная продукция. Поможет ли Adobe XD?

Лучший ответ: Основная проблема в том, что Adobe XD не поддерживает профиль CMYK.
Вам в Adobe Indesign.

Худший ответ: Есть ли такая возможность в Adobe XD
Вообще он прям далеко не для этого, но в теории это можно.Как привести готовый дизайн в векторный файл?
Либо вывести сразу в pdf - его 99% типографий принимают, либо все скопировать в иллюстратор и оттуда уже в любой другой.
Сам Adobe Xd экспортирует в SVG, что тоже по сути вектор, но его не примут =\
Вопрос: Как проверить данные на их случайность?

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



UPD: https://www.random.org/analysis/

Худший ответ: Лучший генератор данных: веб-камеру направьте на небо и проблема случайности решена.

Про ГСПЧ:
Всегда используем только N-ную часть периода (не более 1/5, которую всегда определяем перед использованием новых коэффициентов) и сохраняем коэффициенты в "отслужившие".
После - генерируем новые коэффициенты через бесконечную дробь.
Вопрос: Как уйти с галеры и найти нормальную работу?

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

Если не получится найти - надо дорабатывать опыт. Развиваться. Добирать необходимый опыт в петпроектах (например, сделать качественный todo покрытый тестами). И по мере накопления опыта пытаться снова.

Худший ответ: Учть тебя на работе никто не станет.
Просто оно никому кроме тебя не нужно.
Для твоего начальства ты просто станок дающий некое количество продукта, пока продукт устраивает твоя миссия вопоняется никто ничего менять не станет.
---
Максимум может на хороших работах курсы какие-нибудь оплатят.
---
--
Поэтому самостоятельно находишь где учат и учишься целенаправленно.
Кроме тебя за тебя тебя учить никто не станет.
Вопрос: Как узнать загруженность блока питания?

Лучший ответ: Розетку-переходник с ваттметром купите и будет вам потребление любого прибора.
Включаете розетку с ваттметром и последовательно, начиная с материнки, начинаете подключать устройства к БП.
Разница соседних измерений - даст точное потребление очередного подключенного устройства.
Вот ещё тут гляньте: Как померять реальную нагрузку на блок питания?Если будет софт который можно будет удалено на 120 рс и потом смотреть нагрузку на бп то цены не будет ему =)см. в сторону управляемых по snmp корпоративных бесперебойников.

Худший ответ: токовые клещи
Вопрос: Насколько безопасно хранить конфиденциальную информацию на VPS?

Лучший ответ: Может ли хостер каким-то способом просмотреть эти самые файлы со своей стороны?Да, если задастся такой целью.

Насколько вообще конфиденциально такое хранение информации на удалённом сервере, и как можно его защитить именно от хостера?Нет!
Хостер в любом случае сможет получить доступ к вашим данным если захочет, даже если вы их зашифруете.

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

Худший ответ: хостеру обычно лень

но и взлом делается не вручную, кто знает когда и куда боты достучатся
Вопрос: Как сконвертировать datetime в прошлое?

Лучший ответ: Начнём с того, что это невозможно.
Вина на тех, кто присылает год без века.
Бить их ногами и исправлять ситуацию на бэке.
Это не проблема фронта.
Если вариантов исправить бэк нет, то отказаться от этого кривого API.
P.S. А если вам прилетит "1/1/21" или "11/11/20"?.
Это какой год будет? 1921 или 2021, 1920 или 2020?
Как ваш код будет работать через три месяца? А через 9 лет? А через 70?

Худший ответ: А как вы собираетесь отличать 20 век от 21 при таком формате?
И откуда знаете, что именно 1929, а не, к примеру, 1029?
Если, конечно, все даты в рамках 20 века, то можно принудительно сплитом бить и дописывать 19 перед годом.
Но вообще это вопрос к тому, кто в таком виде данные отдает.
Вопрос: Как разобраться с выделением памяти в массиве?

Лучший ответ: Если правильно понял вопрос, то можно выделить память единым куском под всю матрицу:int* matr = (int*)malloc(n * m * sizeof(int));а к конкретной ячейке обращаться как matr[i * n + j]
тогда и освободить будет просто - free(matr) и все.

а для текущего примера освобождение памяти будет выглядеть так:void free_matr(int m, int** matr) {
  for(int i = 0; i < m; i++) {
    free(matr[i]);
  }
  free(matr);
}

Худший ответ: Я так понял - сперли откуда-то кусок кода, но понять, как это работает, тяму не хватает. Да и код-то фиговый.

int** inmatr(int m,int n){
    int *matr;
    int i,j;

    if ((matr=(int*) сalloc(m * n, sizeof(int))) == NULL)
      {
         puts("Memory alloc error");
         exit(100);
      }

    for (i=0; i<m; i++){
        for (j=0;j<n;j++){
            printf("a[%d][%d] = ", i, j);
            scanf("%d", &matr[i][j]);
        }
    }
    return &matr;
}

Проверка успешности выделения памяти делается банально просто - если память не выделена, целевая переменная равна NULL. Выделять память не только можно, но и нужно сразу - размер матрицы же известен сразу. Только разумеется не массив указателей на целое, а массив целых.
Возвращается адрес области, куда записали адрес области под матрицу. Хотя я бы передавал переменную (тип **int) из вызывающей функции.
Освобождается память через free(). Но освобождение невыделенной памяти может запросто привести к SIGSEGV.
Вопрос: Почему браузер неправильно умножает числа?

Лучший ответ: Эта "фишка" не только в браузере и JS, а в целом - в машинном вычислении. 
Есть даже интересный сайт, посвящённый этой проблеме, вот он 
Если взять, например 0.2 и 0.3, то константы 0.2 и 0.3 будут аппроксимированы до своих истинных значений. Получается, что ближайшее к 0.2 значение double оказывается больше рационального числа 0.2, но ближайшее к 0.3 значение double меньше рационального числа 0.3. Сумма 0.1 и 0.2 оказывается больше рационального числа 0.3, и следовательно не соответствует константам в коде.

0.1 + 0.2 // -> 0.30000000000000004
(0.1 + 0.2) === 0.3 // -> false

Худший ответ: Потому что 0.0610 в двоичной системе представляется бесконечной дробью 0.0(00011110101110000101)2. И какую бы конечную запись этой дроби вы ни взяли, она всегда будет содержать ошибку округления.
Вопрос: Как устроена система регистрации в корпоративных сервисах уодной компании?

Лучший ответ: LDAP или AD DS

Худший ответ: В корпоративной среде не должно быть личных аккаунтов. Все организовывается вашими силами на подконтрольных вам машинах (реальных/виртуальных/в облаке). Аутентификацию проводить из Active Directory.
Замените все онлайн службы с личными акканутами на on-premise решения. Возможно не так удобно, зато на 100% подконтрольно вам.
Вопрос: Почему не работают фасады в laravel phpunit?

Лучший ответ: В начале метода setUp неободимо вызвать parent:setUp() и все заработает

Худший ответ: Потому что ты переопределил setUp, не став читать документацию. Она же для лохов, да?
Вопрос: Почему не доходят письма по SMTP?

Лучший ответ: А по существу:
PTR - отвратительный ip-176-192-239-59.bb.netbynet.ru
SPF - отсутствует: *** No text (TXT) records available for trainzcity.myftp.org
Ну т.е. домен абсолютно не подготовлен быть сервером отправки сообщений.

Худший ответ: mail.ru  у вас все принимает - так что вариант один - кто-то  где-то фильтруют по дороге - а кто и где ... поищите в спаме гмыла. от туда любит складывать если  у вас не прописаны нормально  DKIM/SPF/DMARC
Вопрос: Как сформировать такой URL?

Лучший ответ: У вас не совсем корректный урл. Двух знаков вопросов не должно быть.
Вот вариант для site.ru?some=&code[]=100&code[]=200&code[]=300
$arr = [
        'some' => '',
        'code' => [100, 200, 300]
    ];
$query = http_build_query($arr);

Худший ответ: Через http_build_query, никак, формируйте самостоятельно через цикл, или вручную
$query = urlencode('code[]') . '=' . urlencode(100) . '&' . urlencode('code[]') . '=' . urlencode(200);
Цифры я поставил в urlencode просто для того чтобы были, и на всякий случай если вместо них будут другие данные, чтобы не забыть.
Вопрос: Как запретить загрузку элемента если страница открывается с моб. устройства?

Лучший ответ: CSS не решает проблему, так как он просто скрывает элемент, но он все ровно загружаетя на страницу и тратит на это время
вы просто не умеете его готовить
если изображение вы делаете не элементом img, а фоном на блоке, то на css влегкую 1 и 2 и т.д...
даже если сам элемент при этом в разметке останется, то он будет "пустой", а парсинг его браузером незаметен вообще
А вот если у вас на 10/100/100 кБ вложенного контента, то тут уже только на стороне сервера, либо генерировать динамически на стороне клиента
Хорошо бы видеть вашу разметки и css

Худший ответ: Тегом  можно подсовывать картинки разного размера для мобильника и компьютера
Вопрос: Какие преимущества mikrotik перед шлюзом на centos?

Лучший ответ: Отсутствие винта. Ну то есть отсутствие шанса получить систему, повисшую в грабе из-за невосстановимого сбоя. Эта причина несущественна, если всегда на месте есть "руки", которыми можно хотя бы по телефону руководить, желательно с приложением к ним хоть немного думающей головы.
Если ВМ на хосте, который настоящий сервер, а не "сервер-из-десктопа" - наличие аппаратного роутера позволит удаленно управлять хостом через KVM. 
Падает все. Однажды я был свидетелем, как новенький Dell за поллимона (в ценах 2013 года!) лег при просадке питания (и глупости местного админа, неправильно подключившего упсник). И того, как его подымали из Москвы по удаленке.
Я считаю, что роутеру - роутерово. Я много лет жил в такой конфигурации - тырнет пришел в хост, роутером является ВМ на хосте. Это мне показалось неудобным, и когда появилась возможность (в виде RB450G) соскочить - я соскочил. Эта героическая машинка проработала два года без корпуса в помещении, где жило десять тысяч тараканов :D...

Худший ответ: Если в инфраструктуре есть место куда ставить отдельную железку, то надо ставить отдельную железку.
Тут такая же аналогика как Игровой PC & Playstation - да игры идут и там и там, но во втором случае они уже оптимизированы и заточены под конкретное железо. И не дужно плясать с тем чтобы правильно поднять и удержать окружения - сразу настраиваешь конфиг и пошел работать, если упало - открываешь кучу стандартных логеров и смотришь что там или тупо достаточно взлянуть на состояние светодиодов, чтоб понять как работает железка.
Про потерю управления на VM тоже не обна тысяча диферамбов сложена и про софт-роутер и про гипервизор введенный в домен контроллер которого на нем же и расположен и про обновление ESXi когда сервак со сферой на нем
А с железякой на филиале: - "Алло, username. вторкни ноутбук с триджиком в ETH1 и скажи пасс от Teamwiver-a"
Вопрос: Чего ожидать от собеседования?

Лучший ответ: о чем меня могут спросить?
О чём угодно.

И как воспринимать это дело как экзамен или просто на понимание рассказать?
Зависит от компании и от человека, проводящего собеседование.

Что вообще такие собеседования должны показать обо мне если мой код уже видели?
Как уже заметили в другом ответе, реальное наличие знаний, а не умение кому-нибудь делегировать задачу.

Как избавиться от паранойи что я чего-то не знаю типа мне кажется что мне по какому-то html что-то спросят и я отлечу хотя вроде знаю нормально?
Никак. Я 20 лет в ИТ и до сих пор очкую на собеседованиях.

Худший ответ: Наткнулся на этот пост спустя время)
То собеседование я провалил на 95% вопросов я не ответил (x_x)
Очень сильно расстроился и отчаелся найти работу (мне потребовался месяц что-бы справиться с отчаинем и хоть как-то начать заниматься) потом спустя месяца 3
Мне ответили на резюме и пригласили на собеседование 
Я для диплома с другом сделал интернет магазин правда на python django а не на php
Я так же завалил 50% вопросов и ещё на 40% я не ответил из-за волнения (вспомнил ответы спустя мин 15 после собеседования) но мне дали тестовое которое я делал около месяца и в итоге меня взяли на стажировку
Я работаю уже год я попал в крутую компанию в которой работают люди которые горят тем чем занимаются
Как я узнал потом мне дали шанс из-за того что я был на энтузиазме и горел этим 
Так что тем ребятам которые нашли этот вопрос и у которых скоро собеседование вообще не парьтесь что вы чего-то не знаете и не ответили на что-то это нормально
Просто развивайтесь и занимайтесь тем чем нравиться и равно или поздно вы найдете что-то крутое для себя)
Вопрос: Как оставлять уникальные отзывы на сайте?

Лучший ответ: Уволиться.

Худший ответ: идеи  - есть
сколько готовы заплатить?
и да - легендирование нужно попродуманнееклиенты оставляют отзывы хоть по 100 шт в день
вряд ли заколлерирует с увеличившимся потоком бабла в т.ч. в карманы руководства
Вопрос: Как определить источник изменения размера окна?

Лучший ответ: Наверное, мой юный друг, ты можешь, вызывая событие WMSIZE в своём коде, так же взводить какой-то флаг, а сбрасывать его в своём обработчике.

Худший ответ: В компоненте пишем обработчик сообщения WM_SIZING. Сообщение отсылается только при действиях пользователя.procedure THiddenClassName.WmSizing(var Message: TMessage);
var
  Rect: PRect;
begin
  inherited;
  Rect := PRect(Message.LParam);
  FMaxHeight := Rect^.Height;
end;
Здесь WParam - Сторона, которую в данный момент изменяют. LParam - указатель на Rect
Вопрос: Как запустить nodejs на сервере linux?

Лучший ответ: Сегодня что, CORS day? В 100500 раз - браузер не даст обращаться просто так через js с одного домена на другой. Или ставьте сервер как бэк на роут в том же домене или же ставьте правильные заголовки allow origin.
Ну и в догонку - для браузера localhost это всегда пользовательская машина, но никак не ваш vps

Худший ответ: www.some.ru:3001
Локалхост-то тут при чем?
Вопрос: Как привлечь разработчика-кофаундера, в перспективный стартап?

Лучший ответ: Та же проблема. Только с другой стороны.

Я программист. Есть три программы. Но дизайн у них не очень. Также нужно хорошие сайты к ним.
Обучающие ролики. Но приложения плохо монетизируются. 

Не хотите бесплатно помочь мне ? А в будущем, когда мой двухлетний труд окупиться по ставке 
сеньора программиста Вам буду отдавать 20 процентов от сумм свыше 5 тысяч долларов в месяц.
А если случиться чудо (больше 10к$), то под каким нибудь предлогом перестану платить совсем.

Дико ? 

Опытный программист знает, что шанс выйти на самоокупаемость у мобильного приложения 3-5% через 2-3 года.
А то, что потом какие-то  проценты начнуть капать пожизненно вообще равно нулю. Рассорились.  Перестал работать дальше над проектом. Фиг тебе золотая рыбка.

Худший ответ: Кстати чем плох по вашему баду или тиндер?
Вопрос: Почему зависает сайт при 30-40 одновременно выполняемых запросах?

Лучший ответ: Из всего что я понял, получается у вас в callback-хендлере делается запрос через curl куда-то ещё (через proxy) и тем самым воркер из пула web-сервера держится до момента окончания выполнения запроса. Ваш сервачок быстро исчепает пул веб-воркеров, даже если вы увеличите их до 100 и хватит памяти. Конечно, это плохое решение. 
Да, в сущности нужно реализовывать систему очередей. 
Вам нужно как можно быстрее выполнять пришедний запрос-колбек и освобождать пул. Для этого нужно ограничить его работу тем, чтобы положить необходимые данные в какое-то хранилище или передать сообщением в менеджере очередей, делегировав работу по отправке другому пулу воркеров. Например 1-4 воркерам/демонам на ReactPHP или Node.js, которые будут брать пачку заданий и асинхронно рассылать запросы.

Худший ответ: 1) Если PHP работает через FPM - увеличить количество процессов покуда хватает памяти/процессора
2) Если работает через апач - выкинуть апач и поставить FPM, затем повторить п. 1
3) Если уж хотите очереди - скармливайте запросы серверу очередей, клиенту отдавайте ID задачи, а клиент раз в N секунд пусть опрашивает завершилась задача или нет
Вопрос: Чего ожидать в IT после армии?

Лучший ответ: Как в армии с программированием?
Влияние армии на знания программирования?
Магистратура, аспирантура, армия. На какой путь встать?
Работа после армии: легко ли восстановиться и найти работу?spoilerЭто я к тому, что прежде чем задать вопрос, лучше поискать.
Ведь ваша ситуация не уникальна.

Худший ответ: Почему бы не пойти в магистратуру в вуз, где есть военная кафедра? Да, возможности работать полноценно еще меньше, но можно спокойно идти на 20-30 часов в неделю