LINUX.ORG.RU
ФорумTalks

Cобсеседованиями собеседуй собеседник HTTP 1, 2, 3 QUIC

 , , , ,


0

2

Что спрашивают на собеседованиях?

На собеседованиях спрашивают про разницу протоколов HTTP разных версий. Ну давайте не будем разговаривать про UDP/TCP это и так большниство знает, что UDP не дает гарантий ни для последовательнсоти и ни для доставки, а вот с HTTP?

Вот так, если сходу «Опа, Гоп Стоп!» Вчем разница?

  • HTTP создает соденинение на каждый запрос.
  • HTTP 2 уже вроде как может качать все ресурсы по одному соедению.
  • HTTP 3 основан на новом протокол QUIC который основан на UDP.

А теперь мои дороиге друзья ответы от ByteByteGo и лично от Alex Xu.

Проверил себя сам, проверьте себя и вы.

UPD:

Работа над ошибками:

  • HTTP 1 TCP соединение на отправку каждого ресурса, текстовый протокол.
  • HTTP 1.1 постоянное TCP содинение, возможность отсылать множество запросов, ответы приходят последовательно. Пока не пришел ответ на запрос №1, ответы на запрос №2, №3 и №4 не придут. Также текстовый проткол.
  • HTTP 2 протокол бинарный, также существует на постоянном TCP соединение, создана концепция стримов: параллельная загрузка ресурсов в рамках одного TCP соденинения.
  • HTTP 3 бинарнаый проткол на QUIC, потоки уже реализованы на уровне UDP. Сам QUIC расшифровывается «Quick UDP Internet Connection», является UDP с встроенным TLS.


Последнее исправление: lbvf50txt (всего исправлений: 7)
Ответ на: комментарий от Obezyan

Если у человека в резюме 15+ лет опыта и первые места работы еще «сисадмин в бла бла бла»

то это немного сужает круг заявленных вами изначально:

При этом в резюме 15+ лет в ИТ.

Но так как вы и здесь заявили:

первые места работы еще «сисадмин в бла бла бла»

то также допустимо, что как минимум человек уже просто не помнит.

anc ★★★★★
()
Ответ на: комментарий от lbvf50txt

Новичок через пол года еле-еле будет писать цикл for.

Это новичек «с дипломом» из спец. школы что ли?

anc ★★★★★
()
Ответ на: комментарий от Norgat

И он это должен знать

Я не про знания, а про реально нужен «мышевоз коврикопротиратель».

anc ★★★★★
()
Ответ на: комментарий от Obezyan

сам по себе ответ не ответ на цвета мало информативно

а вот как гран который может оказать влияние на общий знак всей беседы - дык полно вопросов которые в сумме собеседования и дают вполне достоверную оценку

qulinxao3 ★☆
()
Ответ на: комментарий от anc

Новичок через пол года еле-еле будет писать цикл for.

Это новичек «с дипломом» из спец. школы что ли?

Пол года это студент 1 курса на первой сессии. Он только только сдал свой первый курсовик сортировки пузырьком.

lbvf50txt
() автор топика
Ответ на: комментарий от anc

QUIC расшифровывается «Quiq UDP internter connection»

Спасибо. Исправил.

lbvf50txt
() автор топика
Ответ на: комментарий от lbvf50txt

всёж «мамы разные нужны мамы разные важны»

если студент(получающий вышку(даже бак) про сортировку узнал на специальности - ну да в индустрии все пригодятся

«в мои» времена будущие студенты узнавали это (сортировки) где то в классе 7оом(из 11 классов 10летней средней шк) на той же информатике - ща же интернет - забавно как меньшее число препятсвий снижает общий уровень знаний - ибо а зачем знать если нагуглится - как результат част тот же Даненг-Крюгер - да просто не будут даже гуглить ибо нет понимания не знания

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

всёж фундаментальное знание_навыки на то фундаментальны что универсальны для ими владеющих

qulinxao3 ★☆
()
Последнее исправление: qulinxao3 (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

забавно как меньшее число препятсвий снижает общий уровень знаний - ибо а зачем знать если нагуглится

Препятсвий меньше не стало. Сейчас просто на работу не берут да и всё. Лайвкодинг на интервью подавай и точка. Раньше устроиться было на несколько порядков проще, если пользователь умеет писать if/else цикл for, всё работа уже есть в кармане.

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

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от lbvf50txt

Пол года это студент 1 курса на первой сессии. Он только только сдал свой первый курсовик сортировки пузырьком.

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

anc ★★★★★
()
Ответ на: комментарий от lbvf50txt

Конкретезируйте, в чем они гиганские?

Сам же и ответил:

In general, an SRE team is responsible for the availability, latency, performance, efficiency, change management, monitoring, emergency response, and capacity planning of their service(s)

Теперь посмотри какие задачи решает разработчик, а какие SRE. А так же какими инструментами пользуется.

SRE - это про operations, те про управление и мониторинг в лайве + планирование этого. И набор инструментов там соответствующий начиная от cron, systemd, docker и заканчивая управлением распределением потоков трафика по сервера в зависимости от нагрузки и гео. Ну и прелести управления парком серверов.

Developer - это про бизнес логику, про API, документацию, алгоритмы обработки данных. И инструменты там БД, веб фреймворки, библиотеки работы с предметной областью (например - обработка картинок, текстов, JSON, XML и тп).

Предметная область тут пересекается разве что если сайты на Wordpress клепать.

PS Там еще написано по ссылке, что SRE 50% у них на разработку тратят. Только вот нюанс - это разработка автоматизаций для operations. Те это будут инструкции для docker/ansible/cheef/vagrant/terraform и тп. Плюс сбор метрик и обработка конечно. Это сильно отличающиеся задачи, тк они про управление стейтом операционных систем/сетей/настройку сервисов, а не про создание бизнес логики приложений (которой, в основном, занимаются на developer позициях).

Norgat ★★★★★
()
Последнее исправление: Norgat (всего исправлений: 1)
Ответ на: комментарий от Norgat

Теперь посмотри какие задачи решает разработчик, а какие SRE. А так же какими инструментами пользуется.

Одни и те же: availability, latency, performance, efficiency, change management, monitoring, emergency response, and capacity planning.

И инструменты там БД, веб фреймворки, библиотеки работы с предметной областью (например - обработка картинок, текстов, JSON, XML и тп).

… Всё понятно.

lbvf50txt
() автор топика
Ответ на: комментарий от lbvf50txt

… Всё понятно.

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

Norgat ★★★★★
()
Ответ на: комментарий от Norgat

а не про создание бизнес логики приложений (которой, в основном, занимаются на developer позициях).

Понятно. Вы считаете, что описать бизнес логику это, что-то из ряда вон выходящее. Хотя это как правило самое простое, что решается при помощи «житейской логики». Самое трудозатратное это изучение устройства системы и протколов.

Алгоритмы нужны и SRE и SWE, это разные позиции на производсве, а не разные типы подготовки.

Те это будут инструкции для docker/ansible/cheef/vagrant/terraform…

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

lbvf50txt
() автор топика
Ответ на: комментарий от Norgat

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

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

Есть только зазубренные заклинания для определенных фреймворков. Поменятся чуть сематика и синтаксис и всё - приплыли. Потом на условном «LOR» будут с 5ю звёздами рассказывать как IT деградировало.

@FishHook на эту тему хороший пост писал. Надо бы найти.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 2)
Ответ на: комментарий от lbvf50txt

Нашел. @FishHook точно описал трагедию.

А вот фиг. Не работает это так. Молодой человек Иванов Вася, прочитав Марка Лутца, посмотрев ютуб и порешав задачек идет устраиваться джуниором. Там ему задали вопросы про цикл фор и дали тестовое задание на физ-баз, каковое он блистательно решил. И вот Вася с новым ноутбуком первый день в команде, готовый писать циклы фор и манипулировать списками. И тут у Васи рвется шаблон, потому что помимо циклов и списков есть еще какой-то гит, какие-то пулл-реквесты, какой-то дженкинс, какой-то линукс и какие-то базы данных и со всем этим добром ему надо коммуницировать. Да что там линукс, выйдите на улицу и спросите у рандомного прохожего, знает ли он, что такое XML и JSON. Вот и Вася не знал, и еще кучу всякой терминологии, которой опытные айтишники используют не задумываясь. И Васе будет вообще не до аллокации памяти на куче, следующие несколько лет ему предстоит забивать себе голову разнообразным тулингом, а так же всяким менеджерским дерьмом - скрамами и спринтами, которые ничего общего не имеют ни с циклом фор ни с Васеными романтическими представлениями о работе разработчика.

Два-три года спустя Вася почувствовав себя мидлом меняет работу. Вася уже не такой наивный юнош, он заматерел и может даже запрос на SQL написать. В глазах друзей Вася обосраться хакер, к нему идут за советом и он агитирует всех переходить на линукс, называет виндоуз мастдаем и хочет изучить хаскель как-нибудь потом, когда время будет. Программирование для Васи превращается в рутину, оно теряет ореол загадочности, становясь просто кормушкой. Вася больше не мальчик, он взрослый дяденька со взрослыми проблемами - у него ипотека, кредит, ребенок, детский сад, пудель, больная теща, похмелье. И Вася больше не хочет учиться. У него самая большая из всех друзей зарплата, он хорошо справляется со своей работой, он на хорошем счету у менеджера. Вася даже не знает, что у него есть существенные пробелы в знаниях, вернее он догадывается, но ему и так норм, а вечером лучше пивка хряпнуть, чем книгу нудную читать. Через три года Вася выгорел и спился и пошел в манагеры.

Рецензия на книги А. В. Столярова (комментарий)

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от lbvf50txt

Алгоритмы нужны и SRE и SWE, это разные позиции на производсве, а не разные типы подготовки.

Это разные типы подготовки.

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

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

Это так не работает в реальном мире. За день можно написать хелло ворд или десять. И получить 5-10% возможностей инструмента.

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

Norgat ★★★★★
()
Ответ на: комментарий от lbvf50txt

И что? Вася принял решение и получил его последствия. Это не имеет никакого отношения к тому, что для SRE и SWE нужны разные наборы знаний.

Norgat ★★★★★
()
Ответ на: комментарий от Norgat

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

Это так не работает в реальном мире.

Вы абсолютно правы, за день не работает. А за прау работает, как я разборался в Nushell за пару вечеров имея опыт Bash, SQL и Ruby.

Не сможет разработчик занимавшийся, например, разработкой эквайринга сесть управлять

Сесть и управлять не сможет, а за прау недель войти в курс дела и заменть коллекгу запросто. Если у обоих есть подготовка по алгоритмам, устройству сети, и архитектуре ОС (азам системного программирования).

lbvf50txt
() автор топика
Ответ на: комментарий от Norgat

Это не имеет никакого отношения к тому, что для SRE и SWE нужны разные наборы знаний.

Наш изначальный спор пошел из-того, что вы начали говорить, что знание различий между протоколами HTTP/1 и HTTP/2 не нужно 99% процентов разарботчиков.

Что я воспринял эмоционально, потмоу, что считаю вредной неправдой. Так как существует такая техника оптимизации работоспособности протокола HTTP/1, называется Domain Sharding заключается в разложении на разные поддомены ассетов для паралельной загрузки.

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

что для SRE и SWE нужны разные наборы знаний.

Нужен один общий набор знаний, что вы можете проверить на сайте sre.google по требованям к кандидату на дложность инженера.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 4)
Ответ на: комментарий от lbvf50txt

Сесть и управлять не сможет, а за прау недель войти в курс дела и заменть коллекгу запросто. Если у обоих есть подготовка по алгоритмам, устройству сети, и архитектуре ОС (азам системного программирования).

За пару недель всей его подготовки хватит только на то, чтобы позвать коллегу когда продакшн кластер развалится.

Norgat ★★★★★
()
Ответ на: комментарий от Norgat

За пару недель всей его подготовки хватит только на то, чтобы позвать коллегу когда продакшн кластер развалится.

Не согласен с вашей позицей, с вашим отношением к образованию, и свашей оценкой функционирования IT. Ссылки и рассуждения я уже предоставил.

Вы говорите одно, я говорю другое. Можно расходиться.

lbvf50txt
() автор топика
Ответ на: комментарий от anc

то также допустимо, что как минимум человек уже просто не помнит.

В таком случае пусть идет и не помнит в другое место. Опыт не пропьешь, он либо есть либо нет. Можно забыть порядок, но не то для чего этого. Я почему-то помню и после 20+ лет в ИТ хотя не работал напрямую сисадмином никогда.

Можно зазубрить какую-то современную технологию, но нельзя зазубрить КРУГОЗОР наработанный за 15 лет. Простые вопросы которые знает любой ИТ гик помогают определить насколько резюме дутое. И 15 лет опыта превращают в условные 3 года в двух конторах…

Obezyan
()
Ответ на: комментарий от anc

По вашему мнению работа в ИТ должна в обязательном порядке включать в себя обжим витухи?

По моему мнению, если человек пишет в резюме 15+ лет опыта, указывает что работал в то время сисадмином (сервера/сети) и не может вспомнить что это порядок обжима соплей, то тут явно что-то не так. Так и оказалось (случай из реальной практики).

Вообще, настоящие сисадмины того времени и лапшу тянули в атски на предприятиях и asterix настраивали и много чего еще.

Я никогда не лютую на собеседованиях и практически не задаю задачи на код или алгоритмы. Я пытаюсь узнать кругозор человека и соотнести с тем что он указал в резюме. А как правильно написать код он загуглит или глянет на SO.

Obezyan
()
Ответ на: комментарий от Obezyan

Можно забыть порядок, но не то для чего этого.

Поперхнулся. Так и представил себе ваш маня мирок в котором ВСЕ сисадмины знают по какой причине пары скручены и скручены с разной длинной завивки.

Я почему-то помню и после 20+ лет в ИТ

Вы и A и B и прямой и кросс помните так, что ночью разбуди наизусть произнесете?

Простые вопросы которые знает любой ИТ гик помогают определить насколько резюме дутое.

Примеры «простых вопросов» можно? А то у интервьюеров и интервьюируемого нередко что «простой» это разные понятия. Например: «Как настроить wifi в linux?» Вопрос по формулировке простой. А по содержимому вопроса?
Или ещё из тупых вопросов: «Какие базы данных вы знаете?». Это не шутка, реально так и спрашивают как в электронном варианте вопросов так и ИРЛ.

anc ★★★★★
()
Ответ на: комментарий от Obezyan

По моему мнению, если человек пишет в резюме 15+ лет опыта, указывает что работал в то время сисадмином (сервера/сети) и не может вспомнить что это порядок обжима соплей, то тут явно что-то не так.

Что не так? У вас сисадмин это и жнец и кузнец малчик «all-in-one»? Он же и ora-db починяет и витуху тянет и высоковольку распаивает...

Вообще, настоящие сисадмины того времени и лапшу тянули в атски на предприятиях и asterix настраивали и много чего еще.

И что?

А как правильно написать код он загуглит или глянет на SO.

Кажется я начинаю догадываться почему вы такой ник выбрали.

anc ★★★★★
()
Ответ на: комментарий от Norgat

BUT:

счёт (который началка) редко когда в природе - в природе скоре отсутстиве_пространства, 0/1, много_вариантов (руки рук и прочий шаман)

так и с алгосами дерево Фенвика(Рябко) простая вещь - полезная когда нужна :) и редко редко нужная ваще

выше преамбула

учитывая массовизацию исполняющих устройств то распределённые системы и их алгоритмы реально общее промеж sre | swe

qulinxao3 ★☆
()
Ответ на: комментарий от Obezyan

ну вот и уточнили что

достаточным ответом подразумевается содержательное узнавание и «демагогия» на тему отличий 100 мигабод езернета от полного 4пария ; как имея уже подключение без доп роутера(это же денех стоит) подключить второго ибо вторая пара пар резервна и прочий колхоз реальности на благо народного хозяйства здесь и сейчас ида время ай0лю0лю

ключ-замок

то что ща ЕГЭтравма уже стало чудом и мешает практике - таки всем мешает

qulinxao3 ★☆
()
Последнее исправление: qulinxao3 (всего исправлений: 1)
Ответ на: комментарий от Obezyan

имха собеседование это правильно

тестирование(ака выберите из предложенного наиболее правильное) - несколько под другие задачи и контингент

по алгосам - опятже можно быстро обнаружить соискатель кодом молится или кодом творит

qulinxao3 ★☆
()

https://norvig.com/21-days.html

и да адаптируя к эпохи

различение нюансов версий коммуникаций протоколов в дереве специализации осмысленно

qulinxao3 ★☆
()
Ответ на: комментарий от anc

Что не так? У вас сисадмин это и жнец и кузнец малчик «all-in-one»? Он же и ora-db починяет и витуху тянет и высоковольку распаивает…

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

Но! @Obezyan несколько раз уточнил о 15 годах стажа в резюме. 2025-15=2010 год. В 2010 году такого обиля удаленной работы и облачных сервисов не было. Значит притендент обязан иметь многократный опыт обжима витой пары.

P.S. Хотя, честно сказать, и по сей день сисадмин не умеющий обжимать витую пару, это сисадмин абсолютно без практического опыта. Если уж какая контора выделяет бюжет на системного администратора, то и сетями заниматься будет лично он. А не какой-то техник со стороны.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от Obezyan

Уменя есть нвый emoji.

Осу!🥋

Хотел вам рассказать. Есть один из знаментейших матесров-основателей карате, его тоже звали Обезьян, Мотобу по японски. Полное имя Мотобу Тёки, хорошо дрался и лазал по деревьям, за что и получил прозвище Обезьян.

P.S. С какогу перепугу Тёки если Motobu Chōki, пойди с этой транскрипцией разбересь.

P.P.S.

One cannot understand the true meaning of something without putting it into practice.

https://en.wikipedia.org/wiki/Motobu-ry%C5%AB

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 2)
Ответ на: комментарий от lbvf50txt

последовательности для обжима витой пары

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

t3n3t
()

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

sparkie ★★★★★
()

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

Имно в разрабе самое важное это усидчивость и усердность, а не куча поверхностных знаний и подвешенный язык. Усердный и усидчивый в конце концов в проблеме разберётся, а «знающий» будет языком молоть :-)))

vtVitus ★★★★★
()
Последнее исправление: vtVitus (всего исправлений: 1)
Ответ на: комментарий от vtVitus

а не куча поверхностных знаний и подвешенный язык.

Умение программировать проверяется на live coding.

Усердный и усидчивый в конце концов в проблеме разберётся, а знающий будет языком молоть :-)))

К чему этот ваш комментарий? На данный момент есть общие требования к разработчику как к коммандному игроку, так называемые soft skills.

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

Все эти подколы давным давно просчитаны в идустрии. Проверяются все характеристки: теория, практика, уменее общаться. Итервью специально разделяется на несколько этапов. Это уже давным давно проработанная отточеная до мелочей практика, уже 5 лет как существующая.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 2)
Ответ на: комментарий от vtVitus

Усердный и усидчивый в конце концов в проблеме разберётся…

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

lbvf50txt
() автор топика
Ответ на: комментарий от vtVitus

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

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

Навык объснения соственных решений требуется развивать, точно также как развивается навык программирования. Что требует кропотливой, планомерной работы. С бухты барахты он не появляется.

Это база по прохождению интервью. Самые азы.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от vtVitus

усердному и усидчевому не нулевая вероятность времени жизни вселенной может не хватить

короче лучше быть богатым и здоровым чем бедным и больним

проблема в «много знает» (не в этом много_знании )в отсутствии навыка фильтрации «показушников_только» от любых(не важно есть у них показуха или сычи-социофобы) которые смогут тянуть лямку своей должности и быть профитны рабкодателю у рабкопринемающегодателя

следовательно выставление могущих в показуху как заведомых не_кодеров - это симптоматично

усидчивость нужна

усердность нужна

голова на плечах нужна

qulinxao3 ★☆
()
Последнее исправление: qulinxao3 (всего исправлений: 3)
Ответ на: комментарий от qulinxao3

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

lbvf50txt
() автор топика
Ответ на: комментарий от lbvf50txt

впечатление что это «лид» защищает територию и заинтересован в «омегах» которые сверхэксплуатируемы

т/е чел отчего то противопоставляет знание и правильное говорение письму правильного кода

если код негодный то очевидно говорение было явно какое угодно но не «правильное»

ergo фильтруют по правильным заклинаниям и удивляются итогу - прокляли думают

qulinxao3 ★☆
()
Последнее исправление: qulinxao3 (всего исправлений: 2)
Ответ на: комментарий от qulinxao3

Хорошо что вы есть, вы своим примером труда вернули меня на Leetcode, а то с этими «завтраками» я подзапутсил коддинг. Вчера не так шустро развернул List.

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

Старт! 28

Golang:

// Rotale or reverse single linked list.
package main

func rotate(head *List) *List {
   var prev, cur, nxt *List
   // Idea is to first move to a  next item, then replace the 
  // pointers.
  // loop ends when cur is nil, answer is in previous value.
  cur = head
  for nil != cur {
    nxt = cur.Next
    prev, cur.Next, cur = cur, prev, nxt
  }
  return prev
}

32 потрачено 4 минуты. Сейчас получу сигнатуру функции.

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func reverseList(head *ListNode) *ListNode {
    
}

Так копипастим вутреннюю часть:

/**
 * Definition for singly-linked list.
 * type ListNode struct {
 *     Val int
 *     Next *ListNode
 * }
 */
func reverseList(head *ListNode) *ListNode {
   var prev, cur, nxt *ListNode // Fix here, change type.
   // Idea is to first move to a  next item, then replace the 
  // pointers.
  // loop ends when cur is nil, answer is in previous value.
  cur = head
  for nil != cur {
    nxt = cur.Next
    prev, cur.Next, cur = cur, prev, nxt
  }
  return prev
    
}

36 - отправляю. Ура-а-аа-а-а! Сдал. 36-28= 8 минут. Ну без подсветки синтаксиса, более менее норм.

Спасибо дружище!

lbvf50txt
() автор топика
Ответ на: комментарий от qulinxao3

впечатление что это «лид» защищает територию и заинтересован в «омегах» которые сверхэксплуатируемы

А толку от толпы таких «омег» в проекте? Они же просто мешают, и ничего не могут сделать.

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

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 1)
Ответ на: комментарий от qulinxao3

Пойду решу чтук 5-10 Easy задачек, чтоб не в напряг, вместо болтовни в чате.

lbvf50txt
() автор топика
Ответ на: комментарий от anc

Поперхнулся. Так и представил себе ваш маня мирок в котором ВСЕ сисадмины знают по какой причине пары скручены и скручены с разной длинной завивки.

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

Вы и A и B и прямой и кросс помните так, что ночью разбуди наизусть произнесете?

Вы уже дважды пропустили мои сообщения где я писал о том что достаточно сказать для чего это, весь порядок будет помнить необязательно. Те кто назовут порядок занимаясь этим 10-15 лет назад - профи достаточного уровня.

Примеры «простых вопросов» можно?

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

Например: «Как настроить wifi в linux?» Вопрос по формулировке простой. А по содержимому вопроса?

На простой вопрос простой ответ: линуксы бывают разные как и wifi карты, у них разная совместимость. В общем случае настройка сводится к поиску работающего с этой wifi картой модуля ядра под используемый линукс и последующей настройке с помощью различных утилит которые обеспечивают нужный типа подключения (iwconfig, wpa_supplicant и тд).

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

Obezyan
()
Ответ на: комментарий от anc

Что не так?

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

Obezyan
()
Ответ на: комментарий от t3n3t

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

Это и называется кругозор. Вы достаточно развиты в ИТ чтобы понимать что это может быть хоть и не знаете точно порядок. Именно так специалист и решает сложные технические задачи НА СТЫКЕ технологий с которыми он еще не сталкивался: предыдущий опыт + кругозор. Понимание куда копать это 50% решения задачи.

Если бы у соискателя было в резюме 30 лет опыта я бы спросил его про пилотон.

Obezyan
()
Ответ на: комментарий от Obezyan

задрочивших «топ 100 алгоритмов на собеседовании в гугл» и галерных «синьоров» …

Ёмко пишите. Галерный сеньор - точный термин.

Сейчас я решаю Easy задачи на Leetcode, те которые не решал, и так не очень пиятно ощущение, из-за спотыкачек в индексации массива. Т.е. все очень просто, но именно нюансы тут надо добавить еденичку в объем массива для хранения 1-based идексов, или на оборот просто удалять по 1 из 1-based индекса, но тогда прибавлять при возврате.

Вот именно такие подножки и проваливают на интервью. Хотя все просто. Надо наработать навык кодирования. Чтоб сразу без тестированния можно было сдавать такие задачи.

Правильно понять, обсудить, написать.

lbvf50txt
() автор топика
Последнее исправление: lbvf50txt (всего исправлений: 2)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)