LINUX.ORG.RU
решено ФорумTalks

Я облажался на техническом собесе

 


0

1

Народ, всё было отлично. Я всё знал. В хитровыдуманном SQL запросе в родительском, где была фильтрация того, что мне не нужно, я тупо сделал ошибку с OR. На уровне средней математической школы. Позор.
И ещё убеждал, что у меня всё правильно.

PS. БОЛЬШОЕ СПАСИБО за поддержку.
Напишу несколько вариантов решений с анализом по планировщику и пошлю вдогонку.

★★★★★

Последнее исправление: Shadow (всего исправлений: 1)

Хорошо ещё, что вообще пофильтровал. Я как-то попытался удалить одно сообщение из очереди — его обработка падала и очередь застопорилась. Налажал с синтаксисом mnesia и удалил всю очередь вообще. Десятки миллионов сообщений, ЕМНИМЭ.

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

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

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

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

Когда разраб прав, конечно.

судя по признанию ТСа это же не наш случай :)

И потом, это зависит не только от твоего софт-скилла, но и от скиллов того, кого ты пытаешься убедить.

Условного бабуина ты не убедишь никак, как ни старайся

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

FPGA дорогой, не всегда подходит для массового производства дешёвых девайсов

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

Если на разминку, почему они думают над ней час? Задачки на интервью — лотерея, дай человеку второй шанс.

Я эту задачу решил за пару минут в лоб, просто выпихнул нули пузырьком. Посмотрел «правильное» решение за О(1). Элегантно. Но я бы не назвал этот алгоритм «простым». Скорее всего ты просто отсеиваешь людей, которые не решали эту задачу в прошлом, либо не задрачивались на решение подобного класса проблем. Ну я так сужу со своей колокольни собеседования программистов.

Пожалуйста, не давай эту задачу на час.

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

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

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

Если на разминку, почему они думают над ней час?

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

Задачки на интервью — лотерея, дай человеку второй шанс.

На самом деле - нет.

Задачки на интервью — лотерея, дай человеку второй шанс.

Второй шанс будет через несколько месяцев. В этот раз человек не готов.

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

Я когда решал эту задачу впервые, то решил её правильно.

Подсказка «как бы решали эту задачу со вторым массивом» должна приводить к правильному решению, так как в решении со вторым массивом можно в качестве второго массива взять тот же самый и решение при этом не поменяется, но народ не хочет думать!

О(1).

O(n) конечно же. «Пузырьком» дает O(n^2)

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

Это точно. Прокачанный гитхаб это скорее минус, а не плюс.

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

пройтись по массиву, вести счётчик встреченных нулей, копировать ненулевые значения на счётчик нулей вниз, за O(N), как-то так?

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

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

Reset ★★★★★
()
Ответ на: комментарий от Reset
void moveZeroes(vector<int>& nums) {
        int zeroes = 0;
        for(int i = 0; i < nums.size(); i++) {
            nums[i - zeroes] = nums[i];
            if (nums[i] == 0)
                zeroes++;
        }
        for (int i = nums.size() - zeroes; i < nums.size(); i++)
                nums[i] = 0;
    }

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

Принято. По моему мнению решение с двумя счетчиками (куда копировать/откуда копировать) более естественно и просто и обобщается на больший класс задач.

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

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

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

Я когда решал эту задачу впервые, то решил её правильно.

Ну это мало о чем говорит. Я уверен, что те 90% людей, что ты отсеял этой задачкой — не плохие программисты, не все из них.

O(n) конечно же.

Конечно же.

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

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

На самом деле - нет.

Ты решишь любую задачу с литкода?

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

95% соискателей не в состоянии написать читабельный и корректный код для тривиальных задач

На условной «доске», в обстановке максимально далёкой от рабочей? Не удивительно.

Понаберут долбоящеров в интервьюеры, а те им спецов распугивают. 🤷‍♀️

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

Я проводил небольшой эксперимент на чуть менее чем двадцати С++ сеньорах. Просил развернуть список. Список, Карл! Примерно половина не смогла. Они прекрасно знают свойства списков и векторов, про Юникс, конкуренцию, сети и потроха CPU. Но их воображение не позволяет развернуть чертов список.

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

Юниты надо писать, риск будет куда ниже. Особенно если запрос хитрый. На обычный pagination можно под сотню юнитов накатать, времени от силы час уйдёт. Базу в докере/ci поднять вроде уже лет пять как не проблема

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

Я как-то писал тесты для проверки кандидатов, включая хитровыдуманные SQL запросы. Почему-то никто не ответил правильно.

Не думали, что проблема была не в кандидатах?

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

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

некоторые - коренное слово.

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

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

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

Напоминаю с чего вообще всё началось:

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

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

наверное да

талантливый человек талантлив во многих вещах

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

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

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

95% соискателей не в состоянии написать читабельный и корректный код для тривиальных задач.

Люди принципиально не в состоянии написать всем понятный текст на родном языке, а тут рассуждают о необходимости «читабельности и корректности» кода. «Читабельность и корректность» кода - это не объективное понятие, это параметр пары писатель-читатель.

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

Ты решишь любую задачу с литкода?

Почти наверно да. Там почти все задачи простые. У меня решено 300 задач, на литкоде всего около 2000 :) Причем я решаю хардкорно – на Си, а не на Си++ с std, который упрощает жизнь :)

В вот с codeforces не решу, там часто жесть бывает, особенно в заданиях E и F :) Но на собеседованиях такого не бывает :)

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

Классная проблемка, я не догадался до красивого решения. Но вроде 10 минут, не час.

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

А, если надо именно за о(н), то я собеседование не прошел...

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

Я поддержу filosofia, нужна натасканость некоторая на такого типа задачки. А там - тебе виднее.

AndreyKl ★★★★★
()

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

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

Обычно даю для разминки задачу «283. Move Zeroes» (leetcode) 90% соискателей начинают писать какой-то бред и не укладываются в час на написание этих злосчастных 5 строк кода

Тоже даю задачки оттуда. Результат аналогичный, а люди заявляются на синьоров.

no-such-file ★★★★★
()
Ответ на: комментарий от anc

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

Удваиваю этого оратора. Недавно же обсуждали, если человек работает, ему некогда будет пилить пет-проекты и полировать «резюме на github».

no-such-file ★★★★★
()
Ответ на: комментарий от filosofia

Я уверен, что те 90% людей, что ты отсеял этой задачкой — не плохие программисты, не все из них

ЛОЛ ЧТО? Это задача для контрольной по информатике в школе. Так то её должен решать любой выпускник вообще, но то ладно, а вот программист просто обязан.

no-such-file ★★★★★
()
Ответ на: комментарий от no-such-file

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

Ахахахах. Тоже самое можно сказать и про вашу парашу, один в один:

«Если человек работает, ему некогда будет решать задачки на Leetcode»

fsb4000 ★★★★★
()
Ответ на: комментарий от no-such-file

ЛОЛ ЧТО? Это задача для контрольной по информатике в школе. Так то её должен решать любой выпускник вообще, но то ладно, а вот программист просто обязан.

Я облажался на техническом собесе (комментарий)

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

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

Умение решать алгоритмические головоломки

Это была головоломка? КАВО?

найти применение этим скиллам в повседневной работе почти невозможно

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

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 2)
Ответ на: комментарий от fsb4000

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

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

no-such-file ★★★★★
()
Последнее исправление: no-such-file (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.