Задать вопрос
  • Какая нужна теоретическая база на собеседовании джуна?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Приходит к тебе джун и говорит
    "у меня вот задача, сделать такой простенький сервис который будет делать вот это и вот это, а я не очень понимаю как начать"
    И ты ему начинаешь полтора часа пояснять что к чему.

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

    Конкретная реализация различных паттернов - это огромный опыт.
    Но в первую очередь это просто обычная терминология.
    Да, конечно паттерн как термин и понятие отличается от термина типа "интерпретатор и компилятор" тем, что сложно его объяснить в двух словах - надо потратить время на изучение, а желательно еще и попытаться написать парочку объектов для набивки руки.
    Но собственно это от джуниора и требуется - владеть терминологией на достаточном уровне, чтобы экономить много времени.
    Ответ написан
    Комментировать
  • Как построить последовательность учебных курсов для продвижения в карьере?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Углубитесь в адмниистрирование линукс и мониторинг. Тем более что вы это и на текущей работе можете сделать.
    Покройте удобным мониторингом все что можно, заодно продвинетесь в bash/python скриптах для этого.
    Рекомендую выбрать популярный Прометеус + Графана.

    В Девопсы - сложно сказать. С одной стороны да, с другой стороны, если до сих пор не было опыта с проектами в разработке. нужно изучать много различных инструментов. Девопсы уже не работают руками, везде есть оркестраторы, контейнеры, CI/CD утилиты, и баш/питон уже заменяется "ямл-девелоперами" =)

    Может быть имеет смысл не заморачиваться, а найти просто более удобную позицию интегратора конкретного продукта и доработать там до пенсии.
    Ответ написан
    2 комментария
  • Как вы понимаете работу следующей команды?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Это ответ начала установки tcp соединения?

    Нет конечно, это уже ответ от вашего TCP сервера. Скорее всего там какой-то простое приложение которое по telnet протоколу в ответ на PING возвращает вам "PONG"
    Ответ написан
  • Как правильно посчитать?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    А зачем 27 делить на что-то?
    Не очень понятен вопрос - что вы хотите посчитать?

    Координаты конкретного слота?
    Так делить надо не 27 на что-то, а на количество слотов в ряду. У вас по 9 слотов в ряду, выходит

    Например слот №20
    20 / 9 = 2.22222 (дробную часть откидываем, получаем второй ряд)
    20 - (2*9) = 2 (отнимаем от слота наши два ряда, получаем остаток)
    итого, координаты 2,2

    Например слот №14
    14/9 = 1.xxxx
    14-(1*9) = 5
    координаты 1.5

    Или я не так понял вопрос?
    Ответ написан
    4 комментария
  • Стоит ли грузить голову алгоритмами и структурами данных?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Изучать алгоритмы нельзя просто читая. Надо решать задачки.
    Но для программиста, задачки лучше решать не в тетрадке а на языке программирования.
    Поэтому забивать на программирование не нужно.
    Берите различные задачки по алгоритмам и пишите программы которые этот алгоритм реализуют и что-то считают.
    Но да, чтобы написать программу для алгоритма, надо этот алгоритм сперва понять.

    P.S. Сложные алгоритмы нужны не всем. Начните с простых - с банальных сортировок и обходов массивов/графов.
    Ответ написан
    2 комментария
  • Как поднять сервис с помощью bash скрипта?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    Файлы вроде как у вас везде заданы с полным путем, но я подозреваю, что при запуске крона PATH не содержит всего чего нужно
    В идеале было бы просто добавить в кроне скрипт с перенаправлением вывода ошибок и посмотреть логи, типа так

    Попробуйте либо прописать полный путь к iconv и grep либо добавить в кроне перенаправление вывода в лог и посмотреть на что ругается скрипт
    1 * * * * /bin/sh /home/user/script.sh>>$HOME/script.log 2>&1
    Ответ написан
    Комментировать
  • Заочное высшее образование для должности Team Lead?

    saboteur_kiev
    @saboteur_kiev Куратор тега Карьера в IT
    software engineer
    Профильное высшее может помочь при прохождении первичного отбора рекрутером разных резюме при трудоустройстве в фаанг, особенно за рубежом или в госсектор.
    Если рекрутера уже прошел, и добрался до технического интервью - там всем плевать на образование, важны знания и опыт.

    Просто нужно помнить, что есть определенные компании, где высшее - просто требование корпоративной политики. И есть отдельные рекрутеры, которые отбирают резюме, и у которых может быть свое мнение.
    За этим исключением на образование практически никто не смотрит, и уж тем более вообще никто не смотрит это была очка или заочка.
    Я бы даже сказал, что заочка лучше - человек мог в это время уже набирать опыт.
    Ответ написан
    Комментировать
  • Как отформатировать в NTFS?

    saboteur_kiev
    @saboteur_kiev Куратор тега Linux
    software engineer
    cat /proc/filesystems
    и смотри, есть ли там ntfs
    если нет, то никак, надо устанавливать подержку, или ждать пока ntfs появится в ядре вашего дистрибутива (еще нет ни одного дистрибутива, хотя планируется)
    Ответ написан
    Комментировать
  • Что такое ladr формат?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Так спросите у тех, кто задал задание, ибо неизвестно что они себе придумали.
    Ответ написан
    Комментировать
  • Как часто приходится обновлять знания и насколько широко развитие?

    saboteur_kiev
    @saboteur_kiev Куратор тега IT-образование
    software engineer
    Что-то новое постоянно узнаешь, может быть не каждый день, но это тоже зависит от проекта.
    Новый проект - может быть множество новых технологий, на каждую уйдет целая виртуальная жизнь.
    Старый проект - можно углубиться в нюансы, и изучить то, чем пользуешься, со сменой версий может меняться как незначительно, а может вызвать лавинообразные изменения в проекте, потому что либо депрекейтится то, чем ты пользовался, либо ты пользовался чем-то не особо разобравшись, а тут изменения коснулись так, что приходится разобраться досконально.

    Суть в том, что да, настолько часто приходится что-то изучать и уточнять старые знания, что это входит в привычку.
    И ты уже изучаешь даже то, что сразу непосредственно не используешь. И даже не обязательно в области ИТ.
    Но оно помогает и расширяет кругозор и понимание архитектуры.

    Нелюбопытные программисты остаются на уровне стабильный джун - средний мид.
    Ответ написан
    4 комментария
  • Как замерить скорость интернета на всех узлах от точки А до точки Б?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Нет у вас доступа заходить на промежуточные хосты и с них что-то куда-то тестировать.
    Ответ написан
    Комментировать
  • Как добавлять сертификаты .p12 на сервер Ubuntu 18.04.2 LTS (GNU/Linux 4.15.0-50-generic x86_64)?

    saboteur_kiev
    @saboteur_kiev Куратор тега Ubuntu
    software engineer
    Представьте, что вы впервые в жизни видите компьютер с мышкой.
    Как скопировать файл? Как догадаться что оказывается можно зайти в папку (что это?), как догадаться что для этого нужно навести курсор и нажать именно левую кнопку мышки да еще и два раза, да еще и быстро. Да еще и несколько раз, пока не зайдешь в нужную папку.
    Как догадаться, что нужный файлик нужно перетянуть мышкой (да еще и догадаться что именно левой кнопкой), да еще и куда тянуть? Как догадаться, что можно открыть на рабочем столе сразу ДВЕ папки?
    А еще ручки кривые, к мышке непривычные, в мелкие иконки попасть выходит не сразу, при нажатии кнопки мышка сама двигается, пока поймешь как скопировать файл, за это время успеешь пару файлов или папок куда-то переместить и даже нельзя посмотреть логи куда и что переместил.

    Как вы видите, это простое действие на самом деле очень сложное, просто вы его изучили.

    Также и с командной строкой - это не устаревший, а актуальный способ взаимодействия с компьютером, который активно используется при работе с удаленными серверами.
    Советы простые - берешь и осваиваешь работу команд cd, ls, cp, mv, cat
    пару часов должно быть достаточно, если потренироваться на какой-то виртуалке.
    Ответ написан
    Комментировать
  • Как правильно реализовать continuous deployment для запуска миграций?

    saboteur_kiev
    @saboteur_kiev Куратор тега Git
    software engineer
    Ну все руками делается.
    Делаете каталог для файлов миграции и в нем какой-то главный типа control.sh
    в control.sh инклюдите актуальные файлы миграции
    Для дедупликации проще всего в базе сделать таблицу, в которую при миграции добавляется "дата, имя скрипта миграции, статус (completed/failed), и при выполнении скрипта миграции соответствнено он проверяет по базе выполнялся уже или нет, чтобы не запускаться вторично. Может быть какие-то скрипты наоборот нужно прогонять каждый раз, тогда можно в таблицу добавить колонку для такого флага.

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

    Естественно контроль - ответственность разработчиков, магии тут не будет. И предполагается, что вы всегда деплоите более позднюю версию поверх старой.
    Ответ написан
    Комментировать
  • Как правильно распределить информацию по таблицам?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Ну а как по таким данным вам что-то ответить?
    Откуда мы знаем что именно вы планируете в ваших таблицах делать?
    Откуда взялось много одинаковых полей, если у вас везде разные данные?

    1. Можете привести нормальный пример структуры таблиц, тогда можно будет подумать.
    2. Посмотрите ЛЮБУЮ CMS, как там сделано


    В моём понимании 4 таблицы, где много одинаковых полей - это не очень нормально.

    Плохо, это если много одинаковых данных, а просто одинаковые поля - ну есть миллионы примеров баз данных с логами, где каждый месяц начинается новая таблица, с такими же самыми полями, и это нормально.
    Ответ написан
  • Коммандный UAC?

    saboteur_kiev
    @saboteur_kiev Куратор тега Windows
    software engineer
    powershell Start-Process -FilePath "%0" -ArgumentList "%cd%" -verb runas >NUL 2>&1


    if not "%1"=="am_admin" (powershell start -verb runas '%0' am_admin & exit /b)
    "Put your command here"
    Ответ написан
    2 комментария
  • Почему я получаю ошибку No route to host с нестандартным портом?

    saboteur_kiev
    @saboteur_kiev Куратор тега SSH
    software engineer
    не должно такого быть. Надо больше подробностей где и как меняли, с примерами подключения нормального и примерами ошибки прямо из консоли.
    Ответ написан
  • Как понять, подключён ли кто-то к моему вайфай?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Это паранойя.

    Кроме вашего wifi, есть еще роутер провайдера в вашем подъезде, к которому подключены все ваши соседи, и уже от этого роутера скорее всего оптика идет в серверную провайдера.
    Следовательно вся нагрузка со всех соседей все равно идет на одно устройство. Видимо ваш сосед активно качает что-то.
    Но ворует он не у вас.
    Ответ написан
    Комментировать
  • Как спецслужбы вычисляют человека по IP, если он сидит за NAT провайдера?

    saboteur_kiev
    @saboteur_kiev Куратор тега Компьютерные сети
    software engineer
    Но в итоге оказывается, что данный IP не назначался определенному клиенту провайдера. Под данным внешним IP-адресом в такое-то время сидело около 100 клиентов за NAT провайдера. Как будут вычислять из этих 100 человек, кто же именно сидел под данной фейковой страницей ВК?


    Что значит не назначался. КОНЕЧНО назначался, просто не закреплялся надолго. Но логи у провайдера естественно есть.
    Если бы ничего не закрпелялось, как бы провайдер вам счета выдавал?
    Спецслужбы даже вычислять ничего не будут. Придут с ордером к провайдеру, и он им все выдаст и даже больше.
    Ответ написан
    Комментировать
  • Стоит ли добавлять несложные проекты в github?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Да делай как хочешь. Никто тебе не мешает удалить впоследствии проект или репозиторий.
    Можешь объединить, можешь распределить. Гитхаб - это твой личный сервис, а не портфолио. Захочешь сделать портфолио - можно будет либо еще один гитхаб сделать, или этот потом почистить. Не парься, это не высший вопрос.
    Ответ написан
    2 комментария
  • Скоростной кэш в SSD будет работать на всём объёме?

    saboteur_kiev
    @saboteur_kiev
    software engineer
    Нет, так ты ничего не заметишь.
    Кеш это вообще не для копирования больших файлов, ибо чтение и запись больших файлов - это линейная скорость чтения, а кеши хороши для рандомного доступа.

    Предположим, у тебя выполняется компиляция продукта. тысячи маленьких файликов считаны, обработаны. Для каждого создан небольшой obj файлик (от десятков байт до пары мегабайт) и записан. Затем линкер по ним всем пробегает и собирает уже в основной исполняемый файл.
    То есть выполняется несколько тысяч операций прочитаь/записать пару килобайт.

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

    Динамический и статический - это просто что туда класть. Статический нарезан под готовые кусочки, динамический позволяет сохранить и килобайт и 100 килобайт и гигабайт отдельно нарезанным кусочком под каждую операцию, но будет чуть медленнее.
    P.S. В конечном счете, все будет упираться скорее всего в размер кластера дисковой системы.
    Почитай детали, если надо https://www.atpinc.com/blog/what-is-SLC-cache-diff...

    Но. На линейное копирование крупных файлов, кеш обычно практически не влияет
    Ответ написан
    Комментировать