[{"data":1,"prerenderedAt":580},["ShallowReactive",2],{"$f9HGyuaVv-w3Q-BY0FLEO2FPsqz-i2mn2aNDUKqWjHGk":3,"$fMMUdSFktwQFqMVGPrTtt3EC5yheBp7PzwIqznamFcMo":76,"$f1Prj1xEczHja_-L7FyIGgRHd5_cSWHo7r6AE5aheAik":79,"$fc0LoAJgqXDLbKKd2JS_NpM4SuzBK8EycUXINSg09CKU":403,"$fbnelCJbZnd-EIXnKsLFLzbC4ktF8Pa8qZs3oWl9j9OU":406,"$fI5fDmvm-5tr9wcH0eHaKZa1j3y_FQIQaHHPqbZxAHJE":415,"mdc-91lxw8-key":435,"mdc-inx62u-key":447,"mdc--o8938q-key":468,"mdc--ahoxnk-key":482,"mdc--y36ntu-key":490,"mdc-3qnj0e-key":544,"mdc-zfuuck-key":552,"mdc-n2r3wa-key":561},{"content":4,"pageMeta":65},[5,9,12,16,19,23,27,30,34,37,41,44,48,51,55,58,62],{"id":6,"value":7,"isTypeH1":8},"1996","Добро пожаловать!",true,{"id":10,"value":11,"isTypeParagraph":8},"10705","Добро пожаловать в тренажёр, предназначенный для тех, кто стремится сделать уверенный шаг вперед в своей профессиональной карьере Frontend-разработчика. Мы подготовим тебя к успешному прохождению технических собеседований.",{"id":13,"value":14,"anchor":15,"isTypeH2":8},"4644","Чем мы поможем?","what-awaits-you-inside",{"id":17,"value":18,"isTypeParagraph":8},"10706","Здесь представлены реальные задачи с собеседований разных компаний: от стартап-проектов до огромных энтерпрайсов. Бесплатно. С подробным решением, объяснением сложных концепций, подводных камней.\nЗдесь тебя подготовят к [**задачам**](/technical-interview/tasks), которые предлагают на собеседованиях. \nНеважно, начинаешь ли свой путь в профессии, проходишь стажировку или планируешь повысить свой грейд до Junior, Middle или Senior.",{"id":20,"value":21,"anchor":22,"isTypeH2":8},"4645","С чего начать?","where-to-begin",{"id":24,"value":25,"anchor":26,"isTypeH3":8},"4701","Оцени свои силы","evaluate-your-strengths",{"id":28,"value":29,"isTypeParagraph":8},"10707","Если ты только начинаешь изучать профессию, то необходимо планомерно изучить базовые технологии - HTML, CSS, JavaScript. Для этого переходи к третьему шагу. После того, как у тебя будут базовые знания, возвращайся к нам, чтобы прорешать задачи к собеседованию и успешно устроиться на проект:)\n\nЕсли ты планируешь повысить грейд, то прежде чем приступить непосредственно к подготовке, важно честно оценить собственный уровень владения необходимыми технологиями. Начни с простого теста на знание основных инструментов и технологий, используемых в веб-разработке: HTML, CSS, JavaScript, React, Vue.js и др. Это даст четкую картину ваших сильных сторон и областей, нуждающихся в улучшении.",{"id":31,"value":32,"anchor":33,"isTypeH3":8},"4702","Цель","goal",{"id":35,"value":36,"isTypeParagraph":8},"10708","Определи уровень должности, на которую планируешь претендовать - Junior, Junior+, Middle, Middle+, Senior. Чем точнее ты сформулируешь свои ожидания, тем эффективнее будут проходить занятия.",{"id":38,"value":39,"anchor":40,"isTypeH3":8},"4703","План подготовки","preparation-plan",{"id":42,"value":43,"isTypeParagraph":8},"10709","Ресурсы, предоставляющие учебный план + теоретические знания по ключевым направлениям:\n- [MDN - Изучение веб-разработки](https://developer.mozilla.org/ru/docs/Learn_web_development);\n- [W3Schools](https://www.w3schools.com/);\n- [Learn JavaScript](https://learn.javascript.ru/);\n- Обучающие каналы на видеоплатформах.",{"id":45,"value":46,"anchor":47,"isTypeH3":8},"4704","Изучи теорию и практику","study-theory-and-practice",{"id":49,"value":50,"isTypeParagraph":8},"10710","Только входишь в профессию или уже ты фронтендер с опытом, в любом случае, необходимо иметь теоретические знания - повторить забытое, изучить новое. Для этого воспользуйся ресурсами из прошлого пункта.\nЗанимаясь ежедневно, уделяй время как теории, так и практической части. Теоретическое изучение лучше подкреплять решением задач и созданием небольших учебных проектов (например, TODO list).\nТак ты быстрее освоишь материал и получишь уверенность в собственных силах.",{"id":52,"value":53,"anchor":54,"isTypeH3":8},"4705","Прохождение собеседований","passage-of-interviews",{"id":56,"value":57,"isTypeParagraph":8},"10711","Нет лучшего способа закрепить теорию, задачи, справиться со стрессом и повысить эффективность ответов, чем участие в реальных собеседованиях. Даже если первое собеседование окажется неудачным, оно станет отличным уроком, благодаря которому ты поймешь, как реагировать на вопросы, давать ответы и понять, что ты уже многое умеешь, важно лишь планомерно готовиться. \nМожет быть полезным записывать на видео собеседование, чтобы сохранить для себя список вопросов, прорешать те, на которые некорректно ответил. Проанализировать, улучшить ответы на технические вопросы, общие вопросы про тебя и твой опыт.",{"id":59,"value":60,"anchor":61,"isTypeH3":8},"4706","Задачи и еще раз задачи","tasks-and-more-tasks",{"id":63,"value":64,"isTypeParagraph":8},"10712","Один из самых важных пунктов для успешного прохождения собеседований - умение решать задачи. Мы тебе в этом поможем: [**задачи**](/technical-interview/tasks).",{"id":66,"title":21,"description":67,"ogTitle":21,"ogDescription":67,"ogImageUrl":68,"canonical":69,"ogLocale":70,"ogSiteName":71,"ogImageWidth":72,"ogImageHeight":73,"ogUrl":69,"ogType":74,"ogImageType":75},"1975","Предлагаем прорешать задачи: здесь представлены реальные задачи с собеседований разных компаний: от стартап-проектов до огромных энтерпрайсов","/og-image.png",null,"ru_RU","goodwebjob.ru","1200","630","website","image_jpeg",{"siteName":77,"siteUrl":78},"GOOD WEB JOB!","https://goodwebjob.ru",{"slugs":80},[81,84,87,88,91,94,97,100,103,106,109,112,115,118,121,124,127,130,133,136,139,142,145,148,151,154,157,160,163,166,169,172,175,178,181,184,187,190,193,196,199,202,205,208,211,214,217,220,223,226,229,232,235,238,241,244,247,250,253,256,259,262,265,268,271,274,277,280,283,286,289,292,295,298,301,304,307,310,313,316,319,322,325,328,331,334,337,340,343,346,349,352,355,358,361,364,367,370,373,376,379,382,385,388,391,394,397,400],{"name":82,"value":83},"Теоретические задания","theoretical-tasks",{"name":85,"value":86},"Что вернёт этот код: typeof (function(){})()","what-this-code-will-return-typeof-function",{"name":21,"value":22},{"name":89,"value":90},"Почему опасно писать прямо в прототипы базовых типов?","why-is-it-dangerous-to-write-directly-to-the-prototypes-of-basic-types",{"name":92,"value":93},"Backend","backend",{"name":95,"value":96},"Frontend","frontend",{"name":98,"value":99},"Какие логические значения в console.log будут получены?","prototype-what-logical-values-will-be-received-in-console-log",{"name":101,"value":102},"Нечётные числа должны отсортироваться по возрастанию, а чётные должны остаться на своих местах","odd-numbers-should-be-sorted-in-ascending-order-and-even-numbers-should-remain-in-their-original-positions",{"name":104,"value":105}," Найти в массиве неповторяющиеся числа","find-non-repeating-numbers-in-an-array",{"name":107,"value":108},"arr.push(0) повлияет на массив так же, как если бы мы выполнили...","arr-push-0-will-affect-the-array-in-the-same-way-as-if-we-performed",{"name":110,"value":111},"Дана строка: 'one.two.three.four.five'. Необходимо из строки сделать вложенный объект","the-string-one-two-three-four-five-is-given-it-is-necessary-to-make-a-nested-object-out-of-the-string",{"name":113,"value":114},"Реализовать функцию, похоже как в Jquery","implement-a-function-similar-to-jquery",{"name":116,"value":117},"Для каждого вложенного объекта нужно добавить свойство level, которое равняется числу - номер вложенности","for-each-nested-object-you-need-to-add-the-level-property-which-is-equal-to-a-number-the-nesting-number",{"name":119,"value":120},"Какое значение выведет консоль с object.property?","what-value-will-the-console-output-with-object-property",{"name":122,"value":123},"Что выведется в console.log([arr[0](), arr[0]()])?","what-will-be-displayed-in-console-log-arr-0-arr-0",{"name":125,"value":126},"Вернуть массив от 1 до n, где числа, кратные 3, заменены на 'fizz', кратные 5 - на 'buzz', а кратные и 3, и 5 одновременно - на 'fizzbuzz'","returns-an-array-from-1-to-n-replacing-numbers-that-are-multiples-of-3-with-fizz-numbers-that-are-multiples-of-5-with-buzz-and-numbers-that-are-multiples-of-both-3-and-5-with-fizzbuzz",{"name":128,"value":129},"Необходимо проверить, являются ли две строки анаграммами друг друга","checks-whether-two-strings-are-anagrams-of-each-other",{"name":131,"value":132},"Определить, является ли слово палиндромом","determines-whether-a-word-is-a-palindrome",{"name":134,"value":135},"Есть массив, в котором лежат объекты с датами, необходимо отсортировать даты по возрастанию","there-is-an-array-containing-objects-with-dates-that-need-to-be-sorted-by-date",{"name":137,"value":138},"Реализовать функцию, принимающую аргументы \"*\", \"1\", \"b\", \"1c\" и возвращающую строку \"1*b*1c\"","implement-a-function-that-accepts-arguments-1-b-1c-and-the-return-string-1-b-1c",{"name":140,"value":141},"Дано дерево (вложенный объект), надо найти сумму всех вершин","given-a-tree-nested-object-it-is-necessary-to-find-the-sum-of-all-vertices",{"name":143,"value":144},"Для каждой ветви дерева записать номер вложенности данной ветви","for-each-branch-of-the-tree-write-down-the-nesting-number-of-this-branch",{"name":146,"value":147},"Есть слова в массиве, необходимо определить, состоят ли они из одних и тех же букв","there-are-words-in-the-array-it-is-necessary-to-determine-whether-they-consist-of-the-same-letters",{"name":149,"value":150},"Числа от 1 до 100 находятся в массиве, они хаотично перемешанные, но в нём не хватает одного числа из этой последовательности. Необходимо найти его","the-numbers-from-1-to-100-are-in-the-array-they-are-randomly-mixed-but-it-lacks-one-number-from-this-sequence-it-is-necessary-to-find-him",{"name":152,"value":153},"Есть строка, состоящая из разных скобок, необходимо проверить, закрыты ли все","there-is-a-string-consisting-of-different-brackets-it-is-necessary-to-check-whether-all-are-closed",{"name":155,"value":156},"Напишите функцию, который сделает из массива объект","write-a-function-that-will-make-an-object-out-of-an-array",{"name":158,"value":159},"Что выведет console.log в результате выполнения цикла while?","what-will-console-log-output-as-a-result-of-executing-the-while-loop",{"name":161,"value":162},"Есть функция и объект. Напишите все известные вам способы, чтобы вывести в консоли значение x из объекта, используя функцию","there-is-a-function-and-an-object-write-all-the-ways-you-know-to-output-the-value-of-x-from-an-object-in-the-console-using-the-function",{"name":164,"value":165},"Что выведет консоль в случае присвоения свойства массиву по строковому отрицательному индексу?","what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-negative-string-index",{"name":167,"value":168},"Что выведет консоль в случае удаления элемента массива с помощью оператора delete?","what-will-the-console-output-if-an-array-element-is-deleted-using-the-delete-operator",{"name":170,"value":171},"Уникализация значений в массиве","unifying-values-in-an-array",{"name":173,"value":174},"«Расплющивание» массива","flattening-the-array",{"name":176,"value":177},"Что вернёт метод book.getUpperName()?","what-will-the-book-get-upper-name-method-return",{"name":179,"value":180},"Сжатие строк","string-compression",{"name":182,"value":183},"Что выведет консоль в случае присвоения свойства массиву по строковому положительному индексу?","what-will-the-console-display-if-a-property-is-assigned-to-an-array-using-a-positive-string-index",{"name":185,"value":186},"Что получится в результате передачи объекта как аргумента в функцию и выполнения кода?","what-will-happen-when-an-object-is-passed-as-an-argument-to-a-function-and-the-code-is-executed",{"name":188,"value":189},"Как браузер после ввода домена понимает, откуда брать сайт?","how-does-the-browser-know-where-to-get-the-website-after-entering-the-domain",{"name":191,"value":192},"Как домен попадает в DNS в таблицу соответствия: домен – ip","how-does-a-domain-get-into-the-dns-mapping-table-domain-ip",{"name":194,"value":195},"Как браузер решает, какое соединение ему открывать, TCP или UDP?","how-does-a-browser-decide-whether-to-open-a-tcp-or-udp-connection",{"name":197,"value":198},"Ключевые отличия TCP и UDP","key-differences-between-tcp-and-udp",{"name":200,"value":201},"\"TCP/IP\" - кем является TCP, а кем IP в данном случае?","tcp-ip-who-is-tcp-and-who-is-ip-in-this-case",{"name":203,"value":204},"Что такое HTTP и из чего состоит?","what-is-http-and-what-does-it-consist-of",{"name":206,"value":207},"Что такое заголовки в HTTP и зачем они нужны?","what-are-http-headers-and-why-do-we-need-them",{"name":209,"value":210},"Что такое параметры в HTTP?","what-are-http-parameters",{"name":212,"value":213},"Где находится HTML-код в структуре HTTP-ответа?","where-is-the-html-code-located-in-the-http-response-structure",{"name":215,"value":216},"Что такое HTML?","what-is-html",{"name":218,"value":219},"Чем отличаются 1.0, 1.1, 2.0, 3.0 версии HTTP?","what-are-the-differences-between-http-versions-1-0-1-1-2-0-and-3-0",{"name":221,"value":222},"Пользователь авторизован на сайте. Как сервер узнает об этом с последующими другими заходами, что «я – авторизованный пользователь»?","the-user-is-logged-in-on-the-website-how-does-the-server-know-that-i-am-an-authorized-user-when-the-user-logs-in-again",{"name":224,"value":225},"Что такое cookie?","what-is-a-cookie",{"name":227,"value":228},"Кто является инициатором записи cookie в браузере?","who-initiates-the-cookie-recording-in-the-browser",{"name":230,"value":231},"Есть ли возможность с клиента (с браузера) управлять cookie?","is-it-possible-to-manage-cookies-from-the-client-browser",{"name":233,"value":234},"Лайвкодинг","livecoding",{"name":236,"value":237},"Что вернёт следующий код? Object.create(null).hasOwnProperty('toString')","what-will-the-following-code-return-object-create-null-has-own-property-to-string",{"name":239,"value":240},"Всё, что идет по HTTPS – оно защищено?","is-everything-that-goes-through-https-secure",{"name":242,"value":243},"Все данные зашифрованы, используется https. Хакер взламывает dns и делает подмену одного ip на другой, на фишинговый сайт. В этом случае, злоумышленник может получить данные (логин \\ пароль)?","all-data-is-encrypted-https-is-used-let-s-assume-a-hacker-hacks-the-dns-and-makes-a-substitution-of-one-ip-for-another-a-phishing-site",{"name":245,"value":246},"Есть веб-приложение. Помимо HTTP, какие протоколы того же уровня (Application Layer) можно дополнительно использовать в веб-приложении в браузере?","there-is-a-web-application-in-addition-to-http-what-other-protocols-of-the-same-level-application-layer-can-be-used-in-the-web-application-in-browser",{"name":248,"value":249},"Как браузер парсит JavaScript и изображения при рендеринге?","how-the-browser-parses-javascript-and-images-when-rendering",{"name":251,"value":252},"Что происходит, когда HTTP прислал HTML? Что браузер дальше делает c HTML с учетом того, что она валидная?","what-happens-when-http-sends-html-what-does-the-browser-do-with-this-html-given-that-it-is-valid",{"name":254,"value":255},"Что в браузере блокирует рендеринг страницы?","what-is-blocking-the-page-rendering-in-the-browser",{"name":257,"value":258},"Что такое DOM в браузере? Что такое CSSOM?","what-is-dom-in-a-browser-what-is-cssom",{"name":260,"value":261},"Что является узлами в DOM?","what-are-nodes-in-the-dom",{"name":263,"value":264},"Из чего состоит CSSOM?","what-does-cssom-consist-of",{"name":266,"value":267},"Дан HTML-код. Какой будет цвет у текста «Some dummy text»?","the-html-code-is-given-what-will-be-the-color-of-the-some-dummy-text",{"name":269,"value":270},"Есть шаблон HTML и CSS кода. Какой будет цвет у текста «Таким образом, постоянное»?","there-is-a-template-for-html-and-css-code-what-color-will-the-text-thus-constant-have",{"name":272,"value":273},"Есть шаблон вложенного HTML кода. Какой будет цвет у текста «One more dummy text»?","there-is-a-template-for-embedded-html-code-what-will-be-the-color-of-the-one-more-dummy-text",{"name":275,"value":276},"Есть шаблон вложенного HTML кода. Будет ли display:block у body влиять на span?","there-is-a-template-for-embedded-html-code-will-there-be-a-display-does-bodys-block-affect-span",{"name":278,"value":279},"Есть HTML код. Будет ли font-weight на span влиять?","there-is-an-html-code-will-font-weight-affect-span",{"name":281,"value":282},"Flexbox и Grid, чем отличаются друг от друга?","what-are-the-differences-between-flexbox-and-grid",{"name":284,"value":285},"Заменяют ли Flexbox и Grid друг друга?","do-flexbox-and-grid-replace-each-other",{"name":287,"value":288},"Есть CSS и JS анимация. Какая между ними разница, что быстрее, что более удобно?","there-are-css-and-js-animations-what-is-the-difference-between-them-and-which-is-faster-and-more-convenient",{"name":290,"value":291},"Сборник задач","tasks",{"name":293,"value":294},"Какие способы объявления функции есть в JavaScript?","what-are-the-ways-to-declare-a-function-in-javascript",{"name":296,"value":297},"Что такое this в JavaScript?","what-is-this-in-javascript",{"name":299,"value":300},"Что такое Event Loop, как работает?","what-is-an-event-loop-and-how-does-it-work",{"name":302,"value":303},"Что будет, если вызвать typeof на необъявленной переменной?","what-happens-if-you-call-typeof-on-an-undeclared-variable",{"name":305,"value":306},"Что показывает оператор typeof в JavaScript?","what-does-the-typeof-operator-show-in-javascript",{"name":308,"value":309},"Какие типы данных существует в JavaScript?","what-types-of-data-exist-in-javascript",{"name":311,"value":312},"Какую структуру использовать для хранения упорядоченного списка строк в JavaScript?","what-is-the-best-structure-to-use-for-storing-an-ordered-list-of-strings-in-javascript",{"name":314,"value":315},"Что вернет typeof для массива?","what-will-typeof-return-for-an-array",{"name":317,"value":318},"Почему оператор typeof, применённый к массиву, возвращает объект?","why-does-the-typeof-operator-applied-to-an-array-return-an-object",{"name":320,"value":321},"Если нужно хранить список уникальных строк, какую структуру данных выбрать?","if-you-need-to-store-a-list-of-unique-strings-which-data-structure-should-i-choose",{"name":323,"value":324},"Что возвращает typeof для new Set в JavaScript?","what-does-typeof-return-for-new-set-in-javascript",{"name":326,"value":327},"Для чего нужен React, какие он решает проблемы?","what-is-react-used-for-and-what-problems-does-it-solve",{"name":329,"value":330},"Если убрать в React VDOM/Fiber, и вручную изменять DOM, разве это не оптимально?","if-you-remove-the-vdom-fiber-in-react-and-manually-change-the-dom-isn-t-that-optimal",{"name":332,"value":333},"Есть блок кода. Что в реальном DOM изменится после нажатия на кнопку?","there-is-a-block-of-code-what-changes-in-the-real-dom-after-clicking-the-button",{"name":335,"value":336},"Есть код, в котором список и кнопка. Что в реальном DOM изменится после нажатия на кнопку?","there-is-a-code-in-which-there-is-a-list-and-a-button-what-will-change-in-the-real-dom-after-clicking-on-the-button",{"name":338,"value":339},"Зачем нужен Redux (Mobx/Effector)? Зачем нужен менеджер состояния? Какие проблемы решает?","why-do-we-need-redux-mobx-effector-why-do-we-need-a-state-manager-what-problems-does-it-solve",{"name":341,"value":342},"Как диагностировать и исправить нежелательное изменение цвета фона по клику на кнопку, если исходный код сайта запутан и недоступен для прямого чтения?","how-can-diagnose-and-fix-unwanted-background-color-changes-when-clicking-on-a-button-if-the-source-code-of-the-site-is-confusing-and-inaccessible-to-direct-reading",{"name":344,"value":345},"Разрабатывал, взял закоммитил, запушил. Оказалось, что запушил не в ту ветку, точнее, коммит не в ту ветку. Какие действия?","developed-it-committed-it-and-launched-it-it-turned-out-that-i-had-pushed-it-to-the-wrong-branch-or-rather-the-commit-was-in-the-wrong-branch-what-actions",{"name":347,"value":348},"В git есть несколько вариантов слияния веток, какие? Чем отличаются?","git-has-several-options-for-merging-branches-which-ones-how-are-they-different",{"name":350,"value":351},"Какие существуют стратегии ветвления для работы команды? Что это такое?","what-are-the-branching-strategies-for-the-team-what-is-it",{"name":353,"value":354},"По каким характеристикам, ревьюер понимает, что данный код - хороший, а этот код - плохой?","how-does-a-reviewer-know-which-code-is-good-and-which-code-is-bad",{"name":356,"value":357},"Дан фрагмент bash-скрипта: cd ~; mkdir foo... Что в нем происходит?","here-is-a-fragment-of-a-bash-script-cd-mkdir-foo-what-is-happening-in-this-script",{"name":359,"value":360},"Дан фрагмент bash-скрипта: target=$(ps -Af | grep $1 | head -n 1)...","here-is-a-fragment-of-a-bash-script-target-ps-af-grep-1-head-n-1",{"name":362,"value":363},"Что такое алгоритмическая сложность?","what-is-algorithmic-complexity",{"name":365,"value":366},"Какая алгоритмическая сложность у \"быстрой сортировки\"?","what-is-the-algorithmic-complexity-of-quick-sort",{"name":368,"value":369},"Почему в JavaScript два объекта с одинаковым содержимым при сравнении возвращают false?","why-do-two-objects-with-the-same-content-return-false-when-compared-in-javascript",{"name":371,"value":372},"Каким способом может выполняться авторизация пользователя на сайте?","how-can-a-user-be-authorized-on-a-website",{"name":374,"value":375},"В чем разница между микро- и макро-тасками в JavaScript?","what-is-the-difference-between-micro-and-macro-tasks-in-javascript",{"name":377,"value":378},"В комнате три человека. Какова вероятность того, что хотя бы двое из них одного пола? То есть два и более.","there-are-three-people-in-the-room-what-is-the-probability-that-at-least-two-of-them-are-of-the-same-sex-that-is-two-or-more",{"name":380,"value":381},"Есть монета. Ее подбрасывают пять раз подряд. Каждый раз записывается, что выпало - орел или решка. Сколько разных последовательностей орлов и решек может при этом получиться?","there-is-a-coin-it-is-tossed-five-times-in-a-row-each-time-it-is-recorded-whether-it-lands-on-heads-or-tails-how-many-different-sequences-of-heads-and-tails-can-be-obtained",{"name":383,"value":384},"Как гарантированно найти лёгкую фальшивую монету среди 8 за минимальное число взвешиваний на чашечных весах?","how-can-you-guarantee-to-find-an-easy-fake-coin-among-8-in-the-minimum-number-of-weighings-on-a-balance-scale",{"name":386,"value":387},"Подготовка к тех.интервью","technical-interview",{"name":389,"value":390},"Верно ли утверждение, что злоумышленник, контролирующий роутер и прослушивающий трафик, может получить логины и пароли от сайтов, на которые заходит клиент?","is-it-true-that-an-attacker-who-controls-a-router-and-listens-to-traffic-can-obtain-logins-and-passwords-from-websites-that-a-client-visits",{"name":392,"value":393},"Что такое DNS, как DNS находит нужный IP-адрес?","what-is-dns-and-how-does-dns-find-the-correct-ip-address",{"name":395,"value":396},"Переменные объявлены следующим образом: a=3; b=«hello»;. Укажите правильное утверждение","variables-are-declared-as-follows-specify-the-correct-statement",{"name":398,"value":399},"Какой механизм лежит в основе оптимизации обновлений DOM в React?","what-is-the-underlying-mechanism-for-optimizing-dom-updates-in-react",{"name":401,"value":402},"Что мешает организовать централизованное состояние без менеджера состояния? Если организовать состояние механизмами реакта: контекстом, стейтом, в чем проблема? Что менеджеры состояния привносят?","what-prevents-you-from-organizing-a-centralized-state-without-a-state-manager-if-you-organize-the-state-using-react-context-and-state-mechanisms-what-is-the-problem-what-do-state-managers-add",[404],{"label":386,"slug":387,"to":405},"/technical-interview/where-to-begin",{"navigationList":407,"navigationSublist":414},[408,410],{"path":405,"isActive":8,"name":21,"icon":409,"isNavbarMobileDisabled":8},"material-symbols:visibility-outline-rounded",{"path":411,"isActive":412,"name":290,"icon":413,"isNavbarMobileDisabled":412},"/technical-interview/tasks",false,"material-symbols:task-outline",[],{"cooperation":416,"copyright":419,"reportError":420,"socialNetwork":422},{"link":417,"title":418},"https://t.me/baurinanton","Сотрудничество","© “GOOD WEB JOB!”",{"label":421,"link":417},"Сообщить об ошибке",{"label":423,"socialNetworkList":424},"Мы в соцсетях:",[425,428,431],{"icon":69,"link":426,"title":427},"https://max.ru/u/f9LHodD0cOKMaukdnnahTeL5pwvjrPfUaZ4S8_1rsNy9I9qsmc9Ar3kP_y8","Max",{"icon":429,"link":417,"title":430},"ic:baseline-telegram","Telegram",{"icon":432,"link":433,"title":434},"ri:vk-fill","https://vk.com/baurinanton","VK",{"data":436,"body":437},{},{"type":438,"children":439},"root",[440],{"type":441,"tag":442,"props":443,"children":444},"element","p",{},[445],{"type":446,"value":11},"text",{"data":448,"body":449},{},{"type":438,"children":450},[451],{"type":441,"tag":442,"props":452,"children":453},{},[454,456,466],{"type":446,"value":455},"Здесь представлены реальные задачи с собеседований разных компаний: от стартап-проектов до огромных энтерпрайсов. Бесплатно. С подробным решением, объяснением сложных концепций, подводных камней.\nЗдесь тебя подготовят к ",{"type":441,"tag":457,"props":458,"children":459},"a",{"href":411},[460],{"type":441,"tag":461,"props":462,"children":463},"strong",{},[464],{"type":446,"value":465},"задачам",{"type":446,"value":467},", которые предлагают на собеседованиях.\nНеважно, начинаешь ли свой путь в профессии, проходишь стажировку или планируешь повысить свой грейд до Junior, Middle или Senior.",{"data":469,"body":470},{},{"type":438,"children":471},[472,477],{"type":441,"tag":442,"props":473,"children":474},{},[475],{"type":446,"value":476},"Если ты только начинаешь изучать профессию, то необходимо планомерно изучить базовые технологии - HTML, CSS, JavaScript. Для этого переходи к третьему шагу. После того, как у тебя будут базовые знания, возвращайся к нам, чтобы прорешать задачи к собеседованию и успешно устроиться на проект:)",{"type":441,"tag":442,"props":478,"children":479},{},[480],{"type":446,"value":481},"Если ты планируешь повысить грейд, то прежде чем приступить непосредственно к подготовке, важно честно оценить собственный уровень владения необходимыми технологиями. Начни с простого теста на знание основных инструментов и технологий, используемых в веб-разработке: HTML, CSS, JavaScript, React, Vue.js и др. Это даст четкую картину ваших сильных сторон и областей, нуждающихся в улучшении.",{"data":483,"body":484},{},{"type":438,"children":485},[486],{"type":441,"tag":442,"props":487,"children":488},{},[489],{"type":446,"value":36},{"data":491,"body":492},{},{"type":438,"children":493},[494,499],{"type":441,"tag":442,"props":495,"children":496},{},[497],{"type":446,"value":498},"Ресурсы, предоставляющие учебный план + теоретические знания по ключевым направлениям:",{"type":441,"tag":500,"props":501,"children":502},"ul",{},[503,517,528,539],{"type":441,"tag":504,"props":505,"children":506},"li",{},[507,515],{"type":441,"tag":457,"props":508,"children":512},{"href":509,"rel":510},"https://developer.mozilla.org/ru/docs/Learn_web_development",[511],"nofollow",[513],{"type":446,"value":514},"MDN - Изучение веб-разработки",{"type":446,"value":516},";",{"type":441,"tag":504,"props":518,"children":519},{},[520,527],{"type":441,"tag":457,"props":521,"children":524},{"href":522,"rel":523},"https://www.w3schools.com/",[511],[525],{"type":446,"value":526},"W3Schools",{"type":446,"value":516},{"type":441,"tag":504,"props":529,"children":530},{},[531,538],{"type":441,"tag":457,"props":532,"children":535},{"href":533,"rel":534},"https://learn.javascript.ru/",[511],[536],{"type":446,"value":537},"Learn JavaScript",{"type":446,"value":516},{"type":441,"tag":504,"props":540,"children":541},{},[542],{"type":446,"value":543},"Обучающие каналы на видеоплатформах.",{"data":545,"body":546},{},{"type":438,"children":547},[548],{"type":441,"tag":442,"props":549,"children":550},{},[551],{"type":446,"value":50},{"data":553,"body":554},{},{"type":438,"children":555},[556],{"type":441,"tag":442,"props":557,"children":558},{},[559],{"type":446,"value":560},"Нет лучшего способа закрепить теорию, задачи, справиться со стрессом и повысить эффективность ответов, чем участие в реальных собеседованиях. Даже если первое собеседование окажется неудачным, оно станет отличным уроком, благодаря которому ты поймешь, как реагировать на вопросы, давать ответы и понять, что ты уже многое умеешь, важно лишь планомерно готовиться.\nМожет быть полезным записывать на видео собеседование, чтобы сохранить для себя список вопросов, прорешать те, на которые некорректно ответил. Проанализировать, улучшить ответы на технические вопросы, общие вопросы про тебя и твой опыт.",{"data":562,"body":563},{},{"type":438,"children":564},[565],{"type":441,"tag":442,"props":566,"children":567},{},[568,570,578],{"type":446,"value":569},"Один из самых важных пунктов для успешного прохождения собеседований - умение решать задачи. Мы тебе в этом поможем: ",{"type":441,"tag":457,"props":571,"children":572},{"href":411},[573],{"type":441,"tag":461,"props":574,"children":575},{},[576],{"type":446,"value":577},"задачи",{"type":446,"value":579},".",1775735655416]