Никогда не проходи тестовое задание (бесплатно)
За свою многолетнюю карьеру делал 15-20 тестовых. Абсолютно неблагодарная работа. Практически никогда не было позитивного фидбека. Ревьювер кода всегда смотрит со своей колокольни и не всегда она будет смотреть в вашу пользу. У каждого свое понимание «чистого» кода.
Тестовое занимает больше часа - в топку! Если компания не готова потратить время на тебя, почему ты должен тратить время на нее? В нормальных компаниях время на устройство вместе с соискателем делится примерно 50/50.
Последний раз делал тестовое пару лет назад на сеньорскую позицию с хорошими деньгами и условиями.
При просмотре тестового с лидом той компании оказалось, что для него норм писать костыли по проекту, писать на реакте классовые и функциональные компоненты одновременно чтобы использовать методы из обоих типов, лезть в
«по-хорошему надо бы, но мне удобнее так»
после этого меня побрили.
За свою многолетнюю карьеру делал 15-20 тестовых. Абсолютно неблагодарная работа. Практически никогда не было позитивного фидбека. Ревьювер кода всегда смотрит со своей колокольни и не всегда она будет смотреть в вашу пользу. У каждого свое понимание «чистого» кода.
Тестовое занимает больше часа - в топку! Если компания не готова потратить время на тебя, почему ты должен тратить время на нее? В нормальных компаниях время на устройство вместе с соискателем делится примерно 50/50.
Последний раз делал тестовое пару лет назад на сеньорскую позицию с хорошими деньгами и условиями.
При просмотре тестового с лидом той компании оказалось, что для него норм писать костыли по проекту, писать на реакте классовые и функциональные компоненты одновременно чтобы использовать методы из обоих типов, лезть в
instance компонета и менять там значения. На мои возражения соблюдения консистентности и кода без костылей человек сказал: «по-хорошему надо бы, но мне удобнее так»
после этого меня побрили.
👍6
Тестирование фронтенда
Пирамида тестирования на фронте выглядит так:
E2E тестирование: Сквозное (end-to-end) тестирование, позволяет тестировать функционал приложения. Прокликивать отдельные фичи, запускать процессы и тд. Обычно для их написания использует Cypress или Selenium. Для тестирования добавляет отдельные атрибуты для элементов. Пример:
Integration тестирование: Интеграционное тестирование, позволяет тестировать работу всего приложения через взаимодействие с
Unit тестирование: Юнит тестирование, самое популярный вид тестов тестирование. Позволяет тестировать модули или определенные блоки. Конкретно на фронте тестирование классов, утилилок или компонентов. Чаще всего для юнит тестирования используют jest, react-testing-library.
Полезные статьи по тестированию:
Тестирование фронтенда: большой гайд
Трофей тестирования фронтенда
Какие инструменты и подходы использовать для тестирования фронтенда — рассказывают эксперты
7 основных тенденций в тестировании Web Front-End
#javascript #react #jest #cypress #selenium #unittest #e2e
Пирамида тестирования на фронте выглядит так:
e2e
integration
unitE2E тестирование: Сквозное (end-to-end) тестирование, позволяет тестировать функционал приложения. Прокликивать отдельные фичи, запускать процессы и тд. Обычно для их написания использует Cypress или Selenium. Для тестирования добавляет отдельные атрибуты для элементов. Пример:
<input data-test-id="search-input" />Integration тестирование: Интеграционное тестирование, позволяет тестировать работу всего приложения через взаимодействие с
UI, совместимость с другими модулями(если например приложение разбито на микрофронты или использует общение с другими приложениями). Обычно для их написания используют тот же Cypress или самописные решения.Unit тестирование: Юнит тестирование, самое популярный вид тестов тестирование. Позволяет тестировать модули или определенные блоки. Конкретно на фронте тестирование классов, утилилок или компонентов. Чаще всего для юнит тестирования используют jest, react-testing-library.
Полезные статьи по тестированию:
Тестирование фронтенда: большой гайд
Трофей тестирования фронтенда
Какие инструменты и подходы использовать для тестирования фронтенда — рассказывают эксперты
7 основных тенденций в тестировании Web Front-End
#javascript #react #jest #cypress #selenium #unittest #e2e
🤨3
JavaScript: использование методов массивов в реальной жизни и необходимость их изучения.
( ч2. перебор, поиск, трансформация элементов )
forEach:
нечастый кейс
необходимость изучения: 30%
includes:
частый кейс
необходимость изучения: 100%
indexOf:
частый кейс
необходимость изучения 50%
find:
частый кейс
необходимость изучения 100%
filter:
частый кейс
необходимость изучения 100%
map:
частый кейс
необходимость изучения 100%
sort:
частый кейс
необходимость изучения 100%
( ч2. перебор, поиск, трансформация элементов )
forEach:
forEach((item, index, array) => )– позволяет запускать функцию для каждого элемента массиванечастый кейс
необходимость изучения: 30%
includes:
includes(item, from) – ищет item начиная с индекса from и возвращает true, если поиск успешенчастый кейс
необходимость изучения: 100%
indexOf:
indexOf(item, from) – ищет item начиная с индекса from и возвращает номер индекса, на котором был найден искомый элемент, в противном случае -1частый кейс
необходимость изучения 50%
find:
find((item, index, array) =>) – если true - возвращается текущий элемент и перебор прерывается, если все итерации оказались ложными, возвращается undefinedчастый кейс
необходимость изучения 100%
filter:
filter((item, index, array) =>) – проходит циклом по массиву и выдает результат из элементов соответствующих условиючастый кейс
необходимость изучения 100%
map:
map((item, index, array) => ) – вызывает функцию для каждого элемента массива и возвращает массив результатов выполнения этой функциичастый кейс
необходимость изучения 100%
sort:
sort((a,b) – возвращает отсортированный массив, но обычно возвращаемое значение игнорируется, так как изменяется самчастый кейс
необходимость изучения 100%
👍7
JavaScript. Как создать дополнительный поток?
Anonymous Quiz
3%
setTimeout
70%
Worker
9%
Mutation Observer
18%
Promise
👍3
На 95% собеседований вас спросят о нем. Event Loop.
Event Loop (событийный цикл) - главнейший механизм в JS.
JS -
Что блокирует интерфейс?
- циклы while, for
- тяжелые вычисления
- cинхронные операции без механизмов ассинхроности (
Полезные статьи:
Эволюция асинхронного JavaScript
What is non-blocking IO?
Асинхронное программирование в однопоточных средах JavaScript
Event Loop (событийный цикл) - главнейший механизм в JS.
JS -
однопоточный язык и некоторыми операциями можно заблокировать интерфейс пользователя. Соотвественно чтобы писать user-friendly приложение нужно делать его без блокеров IO (ввода вывода). Т.к. есть операции, которые мы не можем выполнить прямо сейчас, а когда-то потом. Для этого существует Event Loop и асинхронные инструменты Promise, async await и тд. Что блокирует интерфейс?
- циклы while, for
- тяжелые вычисления
- cинхронные операции без механизмов ассинхроности (
setTimeout, requestAnimationFrame и тд)Полезные статьи:
Эволюция асинхронного JavaScript
What is non-blocking IO?
Асинхронное программирование в однопоточных средах JavaScript
Frontender Magazine
Эволюция асинхронного JavaScript
До async-функций уже рукой подать, однако путь к ним был достаточно долгим.
Кажется, ещё недавно мы просто писали коллбеки, и вот уже одна за другой появились спецификация Promise/A+, генераторы, а теперь ещё и async-функции. Давайте оглянемся назад и вспомним…
Кажется, ещё недавно мы просто писали коллбеки, и вот уже одна за другой появились спецификация Promise/A+, генераторы, а теперь ещё и async-функции. Давайте оглянемся назад и вспомним…
👍5
🤷♂️В 90% случаев качественного повышение в зп в рамках одной компании не случится. Может добавят 5-10% раз в полгода-год в лучшем случае.
👩💻Лет 5 назад забирал документы у эйчаров с одной из работ. Параллельно слушал о чем они говорили: "Вася хочет повышение до 200, а у него 160. Надо посчитать сколько будет переплата за год и будет ли это больше какого-то коэффицента. Если больше, то не поднимаем зп".
Самый верный способ качественно увеличить зп на
Please open Telegram to view this post
VIEW IN TELEGRAM
💯5
🍁Осень - лучшее время для поиска работы
На моей памяти самые крутые интересные денежные вакансии приходились на последний квартал года.
❓ Почему так? Проекты горят, нужно выполнить KPI до конца, менеджерам показать что-то чтобы выбить бюджет или получить бонус. Бюджет на расширение штата закладывают как раз в сентябре.
🌿 В прошлом году искал работу весной: зп небольшие предлагают до 300, вакансий мало. Также в прошлом году: куча вакансий, зп предлагают по 400-450 / 5-6k$
❗️ Так что советую присматриваться к новым вакансиям в это время года.
На моей памяти самые крутые интересные денежные вакансии приходились на последний квартал года.
🌿 В прошлом году искал работу весной: зп небольшие предлагают до 300, вакансий мало. Также в прошлом году: куча вакансий, зп предлагают по 400-450 / 5-6k$
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7
Переменные:
- примитивы и непримитивы
- ссылочное копирование
- обьекты
- массивы
- стрелочные функции
- методы массивов
- методы обьектов
Работа с функциями и контекстом:
- this
- привязка контекст + переадресация вызова
- лексическое окружение
- замыкание, область видимости
- глобальный объект
Асинхронность:
- event loop
- promise
- async/await
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7👻2
Костя 8Бит | Fullstack AI
🍁Осень - лучшее время для поиска работы На моей памяти самые крутые интересные денежные вакансии приходились на последний квартал года. ❓ Почему так? Проекты горят, нужно выполнить KPI до конца, менеджерам показать что-то чтобы выбить бюджет или получить…
Осень началась, появились вкусные вакансии)
🤩5🌚2👻2
🚀 С нуля до оффера на 185 за 3 недели!
Мой ученик получил оффер на позицию Middle Frontend Developer с первого собеседования. Зарплата 185к₽.
Что было:
• Полгода самостоятельного обучения
• Пробелы в JS
• Страх собеседований
Что сделали за 3 недели:
✅ Закрыли пробелы в JavaScript
✅ Обсудили легенду и доработали
✅ Провели 4 моков собеседований
Результат: оффер в продуктовую компанию с первой попытки! Не без удачи конечно🍀
Мой ученик получил оффер на позицию Middle Frontend Developer с первого собеседования. Зарплата 185к₽.
Что было:
• Полгода самостоятельного обучения
• Пробелы в JS
• Страх собеседований
Что сделали за 3 недели:
✅ Закрыли пробелы в JavaScript
✅ Обсудили легенду и доработали
✅ Провели 4 моков собеседований
Результат: оффер в продуктовую компанию с первой попытки! Не без удачи конечно
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10❤2🤩2👻1🙉1
🔥 3 собеседования на $7K: что реально важно на высоких позициях
Недавно прошел собеседования в топовые компании: крупный ритейл и два AI стартапа. Делюсь инсайтами.
На что РЕАЛЬНО смотрят:
1. Софт скиллы 👥
- Коммуникация с бизнесом
- Умение отстаивать технические решения
- Взаимодействие с другими командами
2. Проектирование 📋
- Декомпозиция больших задач
- Оценка рисков
- Планирование ресурсов
- Выбор технологий
3. System Design 🏗
- Масштабируемость решений
- Производительность
- Безопасность
- Интеграции
4. Архитектура 🎯
- Паттерны проектирования
- Чистый код
- Поддерживаемость решений
❌ Что НЕ спрашивали:
- Работу хуков React
- Bind/call/apply
- Алгоритмические задачки
- Задачи типо "Рекурсивный обход деревьев"
💡 Вывод: на высоких позициях важнее умение проектировать и принимать архитектурные решения, чем знание синтаксиса.
#собеседование #frontend #архитектура
Недавно прошел собеседования в топовые компании: крупный ритейл и два AI стартапа. Делюсь инсайтами.
На что РЕАЛЬНО смотрят:
1. Софт скиллы 👥
- Коммуникация с бизнесом
- Умение отстаивать технические решения
- Взаимодействие с другими командами
2. Проектирование 📋
- Декомпозиция больших задач
- Оценка рисков
- Планирование ресурсов
- Выбор технологий
3. System Design 🏗
- Масштабируемость решений
- Производительность
- Безопасность
- Интеграции
4. Архитектура 🎯
- Паттерны проектирования
- Чистый код
- Поддерживаемость решений
❌ Что НЕ спрашивали:
- Работу хуков React
- Bind/call/apply
- Алгоритмические задачки
- Задачи типо "Рекурсивный обход деревьев"
💡 Вывод: на высоких позициях важнее умение проектировать и принимать архитектурные решения, чем знание синтаксиса.
#собеседование #frontend #архитектура
🔥9👻3
⏰ Заканчивай собеседование в нужный момент!
За 120+ собеседований в моей карьере я понял важное — не нужно терпеть некомфортные ситуации из вежливости. Это пустая трата времени для всех.
Два случая из моего опыта:
1️⃣
Интервьюер постоянно перебивал и душнил.
Через 10 минут я вежливо прервал собеседование и сообщил HR о причинах
🤖 Результат: этого интервьюера отстранили от проведения собеседований
2️⃣
- На код-ревью любят спорить часами
- 30 минут обсуждают название кнопки
Я сразу понял: это не мой формат и честно сказал об этом.
💡 Главные правила:
- Оставаться вежливым
- Четко объяснить причину
- Поблагодарить за время
- Дать конструктивную обратную связь HR
Помните: ваше время и комфорт так же важны, как и время компании.
За 120+ собеседований в моей карьере я понял важное — не нужно терпеть некомфортные ситуации из вежливости. Это пустая трата времени для всех.
Два случая из моего опыта:
1️⃣
Инвестиционная компанияИнтервьюер постоянно перебивал и душнил.
Через 10 минут я вежливо прервал собеседование и сообщил HR о причинах
2️⃣
Стартап- На код-ревью любят спорить часами
- 30 минут обсуждают название кнопки
Я сразу понял: это не мой формат и честно сказал об этом.
💡 Главные правила:
- Оставаться вежливым
- Четко объяснить причину
- Поблагодарить за время
- Дать конструктивную обратную связь HR
Помните: ваше время и комфорт так же важны, как и время компании.
Please open Telegram to view this post
VIEW IN TELEGRAM
⚡10❤3🔥3👻1
🚀 Cursor - Ускорение работы в 3 раза
👨💻 Когда вышел Copilot, было немного страшно, что ИИ может заменить программистов. После использования с реальной функциональностью стало понятно, что дописывать код он может не всегда корректно и часто требует доработки.
🎯 Сейчас вышел Cursor - редактор кода с встроенной нейросетью. Он помогает моментально дописывать и корректировать код. Если не знаешь как написать функцию, не нужно искать решение на StackOverflow или спрашивать у ChatGPT - ИИ-помощник уже встроен прямо в IDE.
⚡️ Мои впечатления в реальной работе: скорость работы выросла в 2-3 раза! Например, рефакторинг компонента теперь занимает 2 минуты вместо 20
Цена удовольствия: 20$/месяц или 200$/год
#programming #IDE #AI #coding #productivity
👨💻 Когда вышел Copilot, было немного страшно, что ИИ может заменить программистов. После использования с реальной функциональностью стало понятно, что дописывать код он может не всегда корректно и часто требует доработки.
🎯 Сейчас вышел Cursor - редактор кода с встроенной нейросетью. Он помогает моментально дописывать и корректировать код. Если не знаешь как написать функцию, не нужно искать решение на StackOverflow или спрашивать у ChatGPT - ИИ-помощник уже встроен прямо в IDE.
⚡️ Мои впечатления в реальной работе: скорость работы выросла в 2-3 раза! Например, рефакторинг компонента теперь занимает 2 минуты вместо 20
Цена удовольствия: 20$/месяц или 200$/год
#programming #IDE #AI #coding #productivity
❤5🔥5
🪑 Стол за 68к - инвестиция в здоровье и продуктивность
Мне уже не 18 лет и работать лежа на диване или на маленьком стало сложно.
Мой хороший знакомый посоветовал https://shapdesk.com/
Стол с регулируемой высотой с небольшим контроллером. Можно работать стоя выставляя нужную высоту, что очень приятно. Цвет и материал на заказ. Я выбрал светлый дуб. Уже работаю с ним полгода очень нравится.
Преимущества, которые подметил для себя:
✅ Пространство для нескольких ноутбуков (нескольких работ)
⚡️ Можно регулировать стол под ваш рост
🔄 Можно чередовать работу сидя/стоя
📈 Выше продуктивность
🎯 Комфортная рабочая поза = лучше концентрация
Конечно, покупка недешевая, но я планирую работать с ним как минимум 10-15 лет и воспринимаю как инвестицию в себя
Мне уже не 18 лет и работать лежа на диване или на маленьком стало сложно.
Мой хороший знакомый посоветовал https://shapdesk.com/
Стол с регулируемой высотой с небольшим контроллером. Можно работать стоя выставляя нужную высоту, что очень приятно. Цвет и материал на заказ. Я выбрал светлый дуб. Уже работаю с ним полгода очень нравится.
Преимущества, которые подметил для себя:
✅ Пространство для нескольких ноутбуков (нескольких работ)
⚡️ Можно регулировать стол под ваш рост
🔄 Можно чередовать работу сидя/стоя
📈 Выше продуктивность
🎯 Комфортная рабочая поза = лучше концентрация
Конечно, покупка недешевая, но я планирую работать с ним как минимум 10-15 лет и воспринимаю как инвестицию в себя
❤5⚡3🔥3👻1
Извини за ожидание, HR-NAME)
Я был бы рад с вами работать: вижу в потенциальных задачах челленджи для себя и понимаю какую большую пользу могу принести вам! Когда ты спрашивала про зарплатные ожидания на первом звонке, я сказал, что рассматриваю предложения от $10 000, а далее определяю цену, исходя из уровня ответственности, задач, условий, рисков и прочего. Соответственно, я хотел бы пересмотреть размер компенсации. Считаю, что мы можем найти точку, которая будет нас всех устраивать.
Я с субботы обдумывал оффер, посоветовался, взвесил всю доступную мне информацию, и подсчитал, что ожидаю оклад в $12 300 на этой позиции. Поэтому я хотел бы понять, готовы ли вы скорректировать предложение?
Отличный реальный пример переговоров и торговли. Паралелльно проходя собеседования, понимаешь, что твоя стоимость на рынке выше и нет ничего страшного сказать об этом и попросить о прибавке к офферу. Если ты понравился команде и у вас хорошая коммуникация, будет адекватная реакция, а также возможна прибавка к офферу.
Главное не стесняться говорить об этом!
P.S. К сожалению такие зп не у фронтов, а только у ML-инженеров
👍6🔥4😁2
👨🏫 🚀💰 Чем я могу помочь:
— Обучить с нуля фронтенд разработке (менторинг)
— Написать продающее резюме
— Провести мок собеседование
— Помочь найти первую работу
— Увеличить зарплату на x1.5-2-3
— Проконсультировать по дальнейшему развитию
📌 Подробное описание услуг и цены:
http://kostya-it.pro/
— Обучить с нуля фронтенд разработке (менторинг)
— Написать продающее резюме
— Провести мок собеседование
— Помочь найти первую работу
— Увеличить зарплату на x1.5-2-3
— Проконсультировать по дальнейшему развитию
📌 Подробное описание услуг и цены:
http://kostya-it.pro/
❤🔥13😍1👻1🆒1
Костя 8Бит | Fullstack AI pinned «👨🏫 🚀💰 Чем я могу помочь: — Обучить с нуля фронтенд разработке (менторинг) — Написать продающее резюме — Провести мок собеседование — Помочь найти первую работу — Увеличить зарплату на x1.5-2-3 — Проконсультировать по дальнейшему развитию 📌 Подробное…»
Интересная статья о разнице зарплат в айти
В статье обьясняется почему некоторые разработчики получают в 2-3 раза больше других на аналогичных позициях.
Есть 3 тира компаний:
1. Локальные
2. Амбициозные локальные и стартапы
3. Бигтех и хедж-фонды
Самые высокие зарплаты у третьего уровня. Компании готовые перевезти лучших сотрудников из другой страны (Microsoft, Apple, Google). x3-4-5 от рынка
Зарплаты выше среднего у лидеров локального рынка и стартапов, которые получили недавнее финансирование. x-1.5-2-3 от рынка
Зарплаты по "рынку" у локальных компаний.
Часто мы не видим и не знаем топовых зарплат, т.к. они непубличные и в общем доступе о них нет информации.
Под ЗП подразумевается общая компенсация: зп + бонусы + акции и тд.
В статье обьясняется почему некоторые разработчики получают в 2-3 раза больше других на аналогичных позициях.
Есть 3 тира компаний:
1. Локальные
2. Амбициозные локальные и стартапы
3. Бигтех и хедж-фонды
Самые высокие зарплаты у третьего уровня. Компании готовые перевезти лучших сотрудников из другой страны (Microsoft, Apple, Google). x3-4-5 от рынка
Зарплаты выше среднего у лидеров локального рынка и стартапов, которые получили недавнее финансирование. x-1.5-2-3 от рынка
Зарплаты по "рынку" у локальных компаний.
Часто мы не видим и не знаем топовых зарплат, т.к. они непубличные и в общем доступе о них нет информации.
Под ЗП подразумевается общая компенсация: зп + бонусы + акции и тд.
👻7❤🔥3😍2
🎯 Твои вопросы = успешное собеседование
Проходя собеседование, многие забывают о своих вопросах компании. После знакомства и технички у вас обязательно должны быть вопросы.
⚡️ Они показывают интерес к вакансии.
💭 Как думает интервьюер: вы ничего не спрашиваете → вам неинтересна позиция или компания → вероятно, так же вы будете относиться и к работе в этой компании.
📝 Какие вопросы задаю лично я:
👥 - Сколько человек в команде и из кого состоит?
🚶♂️ - Куда делись предыдущие разработчики?
🎯 - Какого человека ищут на эту позицию?
⚙️ - Как устроены у вас процессы?
⏰ - Случаются ли переработки и почему?
💡 Одна из фишечек, которую узнал у топовой эйчарки:
в конце собеса спросить у интервьювера почему ему нравится работать в этой компании или что его вдохновляет для работы?
✨ Это помогает добавить "послевкусие интервью", чтобы оно закончилось позитивно и нанимающий менеджер позитивно о вас отозвался.
Проходя собеседование, многие забывают о своих вопросах компании. После знакомства и технички у вас обязательно должны быть вопросы.
⚡️ Они показывают интерес к вакансии.
💭 Как думает интервьюер: вы ничего не спрашиваете → вам неинтересна позиция или компания → вероятно, так же вы будете относиться и к работе в этой компании.
📝 Какие вопросы задаю лично я:
👥 - Сколько человек в команде и из кого состоит?
🚶♂️ - Куда делись предыдущие разработчики?
🎯 - Какого человека ищут на эту позицию?
⚙️ - Как устроены у вас процессы?
⏰ - Случаются ли переработки и почему?
💡 Одна из фишечек, которую узнал у топовой эйчарки:
в конце собеса спросить у интервьювера почему ему нравится работать в этой компании или что его вдохновляет для работы?
✨ Это помогает добавить "послевкусие интервью", чтобы оно закончилось позитивно и нанимающий менеджер позитивно о вас отозвался.
👍11👻2⚡1