Айтишный мир
Айтишный мир
  • 11
  • 301 350
FRONTEND TEAMLEAD СОБЕСЕДОВАНИЕ (РЕАЛЬНОЕ)
#frontend #itсобеседование
Консультации: teletype.in/@brave_interviews/frontend_consulting
Мой телеграм: @parker_mode
2:27 - начало собеседования
4:30 - начало теоретической части
5:00 - замыкания
7:00 - var let const
9:15 - делегирование событий
10:35 - call bind apply
12:20 - медоты для глубого копирования
12:50 - PromiseAll, PromiseAllSettled
14:05 - протопиты в javascript
15:05 - map filter reduce
18:30 - promise chaning
20:25 - typescript
21:30 - interface в typescript
21:50 - generic
23:00 - type vs interface
24:00 - typeguards
25:10 - unknown vs any
25:30 - утверждение типов
27:15 - перегрузка в typescript
27:45 - что такое реакт
28:30 - методы жизненного цикла компонента
29:40 - хук useEffect
30:25 - контролируемые vs неконтролируемые компоненты в React
31:05 - для чего нужен virtual dom
32:30 - Context API в реакт
33:10 - key в списках React
33:55 - React Memo
35:00 - useMemo и useCallback
36:45 - inline block и block в html
39:15 - flex-box и grid
41:05 - семантика в html. зачем она
42:05 - z-index
43:40 - defer, async у тега script
46:00 - REST
51:30 - создание CI/CD части
53:50 - docker, kubernetes
56:10 - git fetch vs git pull
56:30 - рассказ про проект
01:04:00 - мои вопросы
Переглядів: 1 032

Відео

РЕАЛЬНЫЙ СОБЕС В АЛЬФА БАНК на 300К
Переглядів 20 тис.5 місяців тому
#frontend #itсобеседование Консультации: teletype.in/@brave_interviews/frontend_consulting Телеграм канал: @applied_frontend Мой телеграм: @parker_mode Таймкоды: 00:00 - вступление 01:07 - реклама 02:35 - рассказ про альфу и команду, подробный рассказ про технологии и процессы я позадавал свои вопросы 13:22 - самопрезентация 19:00 - что больше нравится в работе 20:11 - вопрос про стандарты разр...
СОБЕСЕДОВАНИЕ REACT FULLSTACK В ГОСУХУ || MIDDLE
Переглядів 11 тис.6 місяців тому
#frontend #itсобеседование Консультации: teletype.in/@brave_interviews/frontend_consulting Телеграм канал: @applied_frontend Мой телеграм: @parker_mode Таймкоды: 00:00 - вступление 01:00 - реклама 2:30 - самопрезентация 11:55 - задача на ассинхронные побочные эффекты и замыкания 19:20 - задача на область видимости переменных 20:15 - задача на оператор расширения и структуры массивов 24:10 - зад...
РЕАЛЬНОЕ FRONTEND СОБЕСЕДОВАНИЕ В ОЗОН || ЗП ДО 300К || ЧАСТЬ 3 СОФТЫ
Переглядів 9 тис.6 місяців тому
#frontend #itсобеседование Консультации: teletype.in/@brave_interviews/frontend_consulting Telegram: @parker_mode Таймкоды 00:00 - введение 0:46 - реклама 2:14- как ты докатился до такой жизни 4:24 - что нравится и не нравится на текущем месте работы 11:21 - где ты так научился решать задачки 12:58 - как ты видишь свой идеальный первый рабочий день 14:52 - надо сделать “красиво”, как будешь реш...
РЕАЛЬНОЕ FRONTEND СОБЕСЕДОВАНИЕ В ОЗОН || ЗП ДО 300К || ЧАСТЬ 2 ЗАДАЧИ
Переглядів 11 тис.6 місяців тому
#frontend #itсобеседование Консультации: teletype.in/@brave_interviews/frontend_consulting Telegram: @parker_mode Таймкоды 00:00 - введение 0:46 - реклама 3:05 - Задача на реализацию ретраев запроса (fetch) 25:35 - Задача на реализацию “Банкомата” 39:50 - Задача на алгоритмы (айтишник который любит путешествовать) 01:02:39 - Задача на оптимизацию архитектуры сервиса 01:17:45 - Мои вопросы собес...
РЕАЛЬНОЕ FRONTEND СОБЕСЕДОВАНИЕ В ОЗОН || ЗП ДО 300К || ЧАСТЬ 1 ТЕХ. СКРИНИНГ
Переглядів 15 тис.6 місяців тому
#frontend #itсобеседование Консультации: teletype.in/@brave_interviews/frontend_consulting Telegram: @parker_mode Таймкоды 00:00 - введение 01:15 - реклама 02:43 - рассказ про команду 05:49 - задача которой ты годишься 07:19 - что происходит после ввода URL в бразузере 10:15 - как работает HTTP и сертификаты 13:10 - что такое Cookie 14:19 - практические вопросы про Cookie 18:00 - что такое CORS...
СОБЕСЕДОВАНИЕ MIDDLE REACT FRONTEND || ЗП ОТ 230К
Переглядів 16 тис.6 місяців тому
Таймкоды 00:00 - Самопрезентация 06:00 - Много вопросов по стеку 17:03 - Задача на typeof 18:25 - Задача на приведение типов 21:40 - Задачи на логические операторы 27:15 - Как можно объявить функцию, в чем разница 30:45 - Задача на контекст 46:20 - Задача на методы массивов 49:10 - Задача на разворачивание вложенного массива 53:50 - Что такое Event Loop 58:10 - Задача на Event Loop 01:00:30 - М...
REACT FRONTEND || НЕСТАНДАРТНОЕ СОБЕСЕДОВАНИЕ В СБЕР || ДАЛИ ОФФЕР НА 250К
Переглядів 6 тис.6 місяців тому
Таймкоды: 17:20 - самопрезентация 26:23 - что предложил по изменению стека? 31:00 - опыт в B2C vs опыт в B2B продуктах 31:40 - важность хорошей команды 34:35 - в бар часто ходите? 35:40 - кто ты на вечеринках? 37:00 - ЗАДАЧА на виртуализацию и рендеринг больших списков 1:34:55 - заключение #javascript #js #reactjs #programmer #programming #обучениепрограммированию #программист #программирование...
СОБЕСЕДОВАНИЕ В СБЕР НА MIDDLE REACT FRONTEND. ПРОСТОЙ СОБЕС НА 200К
Переглядів 18 тис.6 місяців тому
Таймкоды 0:10 - план собеседования 0:55 - рассказ про продукт 5:46 - мой вопрос по процессам 8:40 - самопрезентация 15:30 - вопрос про зарплату 18:45 - задача на реализацию реакт компонента (запрос отрисовка) 35:05 - что такое Promise? 36:10 - Promise.All 37:20 - Написать Promise.All 50:10 - Заключение #frontend #itсобеседование
РЕАЛЬНОЕ СОБЕСЕДОВАНИЕ || MIDDLE REACT FRONTEND В АУТСОРС || ЗП ОТ 200К
Переглядів 8 тис.7 місяців тому
Таймкоды: 00:00 - план собеседования 00:35 - самопрезентация 04:40 - приходилось ли что-либо оптимизировать? 05:20 - метрики при оптимизации производительности frontend 05:48 - уточняющие вопросы по используемым технологиям 06:55 - Задача на prototype и контект 11:28 - Про контекст в стрелочных функциях 12:28 - Задача на контекст 14:45 - Задача на реализацию функции delay 16:25 - Написать Promi...
РЕАЛЬНЫЙ СОБЕС В СБЕР НА 300К. МИЛАЯ СОБЕСЕДУЮЩАЯ
Переглядів 186 тис.7 місяців тому
Таймкоды 00:00 - рассказ о команде 01:08 - стек команды 2:01 - самопрезентация 7:10 - что использовали по верстке? 8:20 - в чем разница между null и undefined? 9:30 - prevent default и stop propagation 10:42 - способы копирования объекта в Javascript 11:46 - хранилища в браузере 13:31 - SSR, SSG и SPA 17:37 - написать функцию 1 23:50 - написать функцию 2 42:40 - попросил еще таски :) 43:00 - за...

КОМЕНТАРІ

  • @tontontonic
    @tontontonic 10 днів тому

    кэтч к промисес.форич - лол, как такое будет работать?)типа фоич тебе промис возвращает?) а внутри фоича дак кэтча нет, который сразу реджектит из любого запущенного промиса, не дожидаясь окончания всех и вооще для такого обычно используют мап, а не фоич последняя проверка на длинну === 0 вооще не в промисе))) молодец держи 200к🤣

  • @МихаилКройтор-з5е
    @МихаилКройтор-з5е 16 днів тому

    В моем понимание тим-лид должен знать больше. Как минимум опыт с микрофронтами, веб-сокиты, архитектура, стейт менеджеры и много другое

    • @VladimirHard
      @VladimirHard 13 днів тому

      иначе ты не возьмешь его к себе в компанию?)

  • @tnsaturday
    @tnsaturday 16 днів тому

    6:00 "замыканиями давно не пользовался" - ахахаха, челик на реакте пишет =))

  • @andreykharitonov4025
    @andreykharitonov4025 16 днів тому

    без обид, но под таким лидом я бы не хотел работать...

    • @tnsaturday
      @tnsaturday 16 днів тому

      Мне кажется челик в какой-то момент почти открыто начал троллить =)

    • @mir-itishki
      @mir-itishki 16 днів тому

      @@andreykharitonov4025 не обидно совсем)

  • @1609maksi
    @1609maksi 16 днів тому

    Точно тим лид? Посмотрел 17 мин, js очень слабо...

    • @a6Brgeuka
      @a6Brgeuka 16 днів тому

      100% вопросы по js на джуна+ или мидла

    • @mir-itishki
      @mir-itishki 16 днів тому

      @@1609maksi ну если ты посмотрел 17 мин, то в самом начале интервьюер оглашал кого они и зачем ищут)

    • @1609maksi
      @1609maksi 16 днів тому

      ​​​@@mir-itishkiконечно, посмотрел полностью видео) ты красавчик, что откликнулся на вакансию, что сходил и потом еще и выложил запись. После этого видео я уже не думаю, что я джун) Интересно чем дело закончилось, дошли ли до офера) ну и вилка, хотя бы примерно 150-200?

    • @tnsaturday
      @tnsaturday 16 днів тому

      А главное не очень понятно, какое это все отношение имеет к позиции тим лида в 2024 году.

    • @mir-itishki
      @mir-itishki 16 днів тому

      @@1609maksi вилка там от 350 была вроде

  • @exzy7753
    @exzy7753 23 дні тому

    качество микрофонов как из ведра

  • @NarutoJavaScript
    @NarutoJavaScript Місяць тому

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

  • @NarutoJavaScript
    @NarutoJavaScript Місяць тому

    Тебе на первом этапе говорили что это не тех собес а в итоге дали задание еще и хера себе какое

  • @ЛеонидФилиппов-ш8щ

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

  • @TipTopTV69
    @TipTopTV69 Місяць тому

    Честно сказать , прям залипательно было смотреть!

  • @walterwhite3222
    @walterwhite3222 Місяць тому

    Тоже пытался устроиться, Сбербанк, днс, м.видео и прочее, это жесть что за вопросы 🤬🤬🤢

  • @frstnmlstnm-it1mf
    @frstnmlstnm-it1mf Місяць тому

    То что null считался у тебя объектом, это не проблема, т.к. это и есть объект с неопределенной структурой.

  • @ДмитрийДмитриевич-ы2о

    Он столько раз угукнул что мне в какой то момент захотелось в окно выйти

  • @roadtobecomingjsmaster3744
    @roadtobecomingjsmaster3744 Місяць тому

    Ладно 1 задачу на приведение типов и то кринж, но я сейчас на третьей...

  • @SordokGame
    @SordokGame Місяць тому

    Вторая задача такая простая, что то так долго въезжал в условие. У нас на работе даже стажеры сложнее задачи решают

  • @haiwjeylua1082
    @haiwjeylua1082 Місяць тому

    Озон, озон.. Прежде чем туда идти, подумайте тысячу раз

  • @callansmile3461
    @callansmile3461 Місяць тому

    uniqeSequence же у парня не будет корректно работать для рандомной последовательности на вход (например, ""ААВВААСВС")

  • @LIGHT_AROUND
    @LIGHT_AROUND Місяць тому

    собеседующий не понимает как работает промис если у промиса нет resolve или reject, то он никогда не испольниться и нельзя будет вызвать метод then. Он никогда не попадёт в очередь микрозадач и соответственно никогда не зарезолвится const p = new Promise ((resolve, reject) => { здесь идёт синхронный код и конечно setTimeout синхронно попадёт в макрозадачи и исполниться (здесь setTimeout не имеет никакого отношения к промису, это синхронный код который выполниться последовательно) }) попробуйте в этом коде закоментить resolve и увидите, что промис не зарезолвился console.log('START'); const p = new Promise((resolve, reject) => { console.log('STARTPromise'); resolve('PromiseDONE'); console.log('ENDPromise'); }); p.then(result => console.log(result)) console.log('END');

  • @AntonReut
    @AntonReut Місяць тому

    Посмотрел задания на функции, за такое реально платят 300 тыс? Охереть. Функции уровня джуна же.

  • @AntonReut
    @AntonReut Місяць тому

    Интересное видео, я хоть и не JS программист (больше бэкэндщик) но с любопытством загуглил некоторые вопросы и ответы на них.

  • @cheshiressmile1404
    @cheshiressmile1404 Місяць тому

    vue и react в целом одинаковые? ага, чего только стоит различие в системе реактивности, которая во vue совсем по другому работает, да и концептуально они разные, можно конечно попробавать писать на vue в стиле react, но как-будто это такая себе затея.

  • @S1lverhanD
    @S1lverhanD Місяць тому

    23:50 function toCamelCase(str: string): string { // Разделяем строку по тире или подчеркиванию const words = str.split(/[-_]/); // Преобразуем первое слово const firstWord = words[0].charAt(0).toLowerCase() + words[0].slice(1); // Преобразуем остальные слова const restWords = words.slice(1).map(word => word.charAt(0).toUpperCase() + word.slice(1).toLowerCase() ); // Объединяем все слова return [firstWord, ...restWords].join(''); } // Примеры использования: console.log(toCamelCase("what-a-nice-day-today")); // "whatANiceDayToday" console.log(toCamelCase("What_A_Nice_Day_Today")); // "whatANiceDayToday" console.log(toCamelCase("what_a_Nice-Day-Today")); // "whatANiceDayToday"

  • @S1lverhanD
    @S1lverhanD Місяць тому

    17:37 function func<T>(sequence: T[] | string): T[] { if (typeof sequence === 'string') { return func(sequence.split('')) as T[]; } if (sequence.length === 0) { return []; } const result: T[] = [sequence[0]]; for (let i = 1; i < sequence.length; i++) { if (sequence[i] !== sequence[i - 1]) { result.push(sequence[i]); } } return result; } // Примеры использования: console.log(func('AAAABBCCDAABB')); // ['A', 'B', 'C', 'D', 'A', 'B'] console.log(func('ABCcAD')); // ['A', 'B', 'C', 'c', 'A', 'D'] console.log(func([1,2,2,3,3])); // [1, 2, 3]

  • @S1lverhanD
    @S1lverhanD Місяць тому

    10:42 Поверхностное копирование: Object.assign() и спред-оператор (...) - копируют только верхний уровень объекта. Глубокое копирование: JSON.parse(JSON.stringify()) - создает полную копию, но не работает с функциями, Date, и undefined. Для сложных объектов лучше использовать сторонние библиотеки вроде Lodash.

  • @S1lverhanD
    @S1lverhanD Місяць тому

    9:30 preventDefault() останавливает действие события по умолчанию (например, предотвращает переход по ссылке или отправку формы), а stopPropagation() предотвращает дальнейшее распространение события по иерархии DOM (то есть, событие не "всплывет" или "не пойдет вниз" к другим элементам). Пример: preventDefault() - блокирует стандартное поведение элемента. stopPropagation() - блокирует распространение события на родительские элементы.

  • @S1lverhanD
    @S1lverhanD Місяць тому

    8:20 undefined - это значение переменной по умолчанию, если она была объявлена, но не инициализирована. null - это намеренное отсутствие значения, которое программист задает вручную. Главное отличие: undefined означает "значение еще не определено", а null - "значение отсутствует намеренно".

    • @McScraych
      @McScraych Місяць тому

      undefined тоже можно намеренно поставить

    • @Гооол-й4ч
      @Гооол-й4ч 22 дні тому

      Стоило добавить, что эту информация ты достал прямо из своей головы. Null - это falsy тип, предназначенный для работы с объектами.

  • @ольгаленкова-й4ъ
    @ольгаленкова-й4ъ Місяць тому

    А мужик неприятный , который собеседует)))

  • @ольгаленкова-й4ъ
    @ольгаленкова-й4ъ Місяць тому

    Как много выходов и вдохов 😕😕😕😕😕😫😫видео интересное!

  • @DmitriiAmagkn
    @DmitriiAmagkn Місяць тому

    Жаль что ты условия для задач не выкладываешь где-то (как это делают другие блогеры с таким контентом), чтобы можно было самому поковырять

  • @albertrain7093
    @albertrain7093 Місяць тому

    не понял для чего slice() вызывать перед sort()

    • @katory17
      @katory17 Місяць тому

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

    • @albertrain7093
      @albertrain7093 Місяць тому

      @@katory17 блин, вообще не очевидно ) лучше бы деструктуризацию заюзать, или через new Array спасибо за ответ!

  • @wyuten
    @wyuten Місяць тому

    Так мало мидлам платят в Сбере? А это точно собес на мидла?

  • @aa.alexey
    @aa.alexey Місяць тому

    Такое ощущение что собеседование ведешь ты а не они)

  • @davaipoka6963
    @davaipoka6963 Місяць тому

    разве первую задачу нельзя решить красивше и короче? const retry = async (url, { count, timeout }) => { const controller = new AbortController() const timeoutPromise = new Promise(() => { setTimeout(() => { controller.abort() }, timeout) }) try { const response = await Promise.race([ fetch(url, { signal: controller.signal }), timeoutPromise, ]) if (!response.ok) throw new Error(response.status) return response } catch(e) { return await retry(url, {count: count - 1, timeout }) } }

  • @xores26
    @xores26 2 місяці тому

    Задачи кринж, еще и решаешь 3 часа

  • @namalkin1981
    @namalkin1981 2 місяці тому

    Зачем скрывали лица, если их потом показали?

  • @weakhatredm7510
    @weakhatredm7510 2 місяці тому

    Тут такие умные все в комментариях)) Хотите слюни?) Скажу вам что реакт это библиотека , а не фреймворк, да будет ваша попка в огне

    • @orststikkain393
      @orststikkain393 Місяць тому

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

  • @ФёдорНиконоров-щ4м
    @ФёдорНиконоров-щ4м 2 місяці тому

    function changeCamelCase(someStr){ let someStr1 = '' + someStr.slice(0,1) let nextSymb = false for (let i of someStr.slice(1)){ if (i === '-' || i === '_'){ nextSymb = true continue } else{ if (nextSymb === true){ someStr1 += i.toUpperCase() } else {someStr1 += i} nextSymb = false } } return (someStr1) }

  • @Boortwint
    @Boortwint 2 місяці тому

    42:13 Нужен будет, зря убрали. Я уже где-то под похожим видео с собесом оставлял комментарий на эту тему. По логике работы нативного промиса в promiseAll можно передать массив, элемент которого может быть не промисом, например, массив [Promise.resolve(1), 1] Без предварительного оборачивания каждого элемента массива в Promise.resolve произойдёт ошибка в цикле, так как promise.then, где promise будет иметь числовое значение 1, не имеет метода then.

    • @sashnevski
      @sashnevski Місяць тому

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

    • @Boortwint
      @Boortwint Місяць тому

      @@sashnevski спасибо за замечание. Мне нужно было внимательнее слушать.

  • @infinity16492
    @infinity16492 2 місяці тому

    сколько у тебя опыт в программировании именно как ты устроился на первую работу и до этого собеса, что 300к предлагают?😅

    • @maratrakhimov2726
      @maratrakhimov2726 2 місяці тому

      по своему опыту скажу, опыт 4 года, из них два года работаю там же где и собес на видео, это точно не галера, много времени на саморазвитие выделено, примерно так: 4 часа работы, 2 часа на созвоны, 2 саморазвитие, причем созвоны только по делу без пустой траты времени

  • @Ildarey
    @Ildarey 2 місяці тому

    Задачи откровенно простые. Прорешал их на php параллельно за 10 минут

    • @AntonReut
      @AntonReut Місяць тому

      та же фигня

  • @nikto1851
    @nikto1851 2 місяці тому

    За такую галеру, это копейки!!! Блогер не пудри голову людям. Просто ищут по дешёвке людей!

  • @yurazakaryan1565
    @yurazakaryan1565 2 місяці тому

    Альтернатива для вторую задачу (так как я решал): const checkAndPush = (firstLetter, element, arr, index) => { if (index === 0) { if (firstLetter === element[0].toUpperCase()) { arr.push(element[0].toUpperCase() + element.slice(1)) } else { arr.push(element) } } else { arr.push(element[0].toUpperCase() + element.slice(1)) } } const convertToCamelCase = word => { const splitWord = word.split('-') const resultArr = [] if (Array.isArray(splitWord) && splitWord.length > 0) { splitWord.forEach((element, index) => { checkAndPush(splitWord[0], element, resultArr, index) }) } console.log(resultArr.join('')) } convertToCamelCase('what-a-nice-day-today') convertToCamelCase('What-A-Nice-Day-Today') convertToCamelCase('What-a-Nice-Day-Today')

  • @chickenwing4379
    @chickenwing4379 2 місяці тому

    😀

  • @507708
    @507708 2 місяці тому

    во второй задаче опечатка на 7 строчке promiseS

  • @cedrum8757
    @cedrum8757 2 місяці тому

    Автор ты куда пропал ?

  • @Dmitriy-is-coming
    @Dmitriy-is-coming 3 місяці тому

    баба не шарит

  • @Dmitriy-is-coming
    @Dmitriy-is-coming 3 місяці тому

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

  • @dirty0dozen
    @dirty0dozen 3 місяці тому

    и такие задачки для поиска разраба на 300К? Что случилось с миром?

  • @Юра-щ9п
    @Юра-щ9п 3 місяці тому

    я бы тебе ни копейки не дал

  • @seryozhamangushev9638
    @seryozhamangushev9638 3 місяці тому

    function test(text: string) { const strs = text.split(/_|-/) return strs.map((item, index) => { if (index === 0) { return item } return item.charAt(0).toUpperCase() + item.slice(1) }).join() } test('what-to-day')