kamyshev.code
1.94K subscribers
40 photos
565 links
Архитектура, код, софт-скиллы и всё остальное. Вопросы, пожелания, комментарии — @igorkamyshev

https://kamyshev.me
Download Telegram
Набраны 👌
Продолжим историю про цели фронтенд-департамента Авиасейлс 🤗

Четвёртая цель ближе всего к людям — мы хотим использовать классные современные технологии.

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

> Например, один проект мы собираем через Gulp и вроде все хорошо, но gulp-sass не поддерживает кастомные имплементации sass. А node-sass умер и хотелось бы заменить его на dart-sass. Это причина, почему нам придётся отказаться от Gulp, хоть он и решает все наши задачи отлично.

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

#кейс
Четыре месяца у меня получалось делать ежемесячный подкаст 😞

А в этом месяце не получилось — сначала я долго не мог найти подходящего гостя, потом первая запись провалилась из-за моей технической глупости, вторая попытка мне не понравилась (получилось не натурально, потому что говорили по второму кругу), а потом оказалось что она все равно снова провалилась технически и смонтировать ее я не могу.

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

С Новым годом 🎊
Я часто делаю маленькие статические сайтики и мне надоело каждый раз настраивать для них сборку. Поэтому я сделал темплейт — https://github.com/igorkamyshev/land-lord

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

Ставьте звездочки, пользуйтесь с удовольствием, приносите фидбеки 💙
Валя из Авиасейлс (мы работаем в одной команде) ведет замечательный канал — @valya_reads_issue

Там много интересных и полезных заметок 🤗
Я часто пишу как замечательно работать в Авиасейлс, но никогда не рассказывал как мы решаем, кто подходит на эту работу мечты. Пришло время это пофиксить!
Forwarded from MoscowJS (Alёna Siprikova)
Всем привет 🙋‍♂️ 🙋‍♀️

В ближайший четверг, 28.01.2021, в 19:00 пройдёт наша вторая онлайн-встреча:

MoscowJS Online, Круглый стол: собеседования глазами компаний.

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

Все эти вопросы мы будем обсуждать с нашими приглашёнными экспертами:
- Никита Шуклин, Head of JavaScript Development, Альфа-Банк
- Андрей Ситник, ответственный за найм фронтендеров в Злых марсианах
- Игорь Камышев, инженер в Авиасейлс
- Ольга Шпунтенко, HR директор в MGCom, ex-Angular Moscow Organizer
- Сергей Бережной, руководитель управления, Яндекс

Следите за нашими анонсами в
telegram, twitter, instagram, vkontakte, facebook

Ждём вас 28.01.2021 в 19:00: https://www.youtube.com/watch?v=ll3aCbLMLqI

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

Найти такую аналитику оказалось не просто, но в итоге я остановился на https://plausible.io/

Во-первых, они удовлетворяют всем моим требованиям.

Во-вторых, у них есть ряд приятных бонусов, о которых я даже не думал: возможность не ставить GDPR-баннер для Европы, классные имейл-дайджесты и сорцы на Elixir.

А в-третих, меня дико вдохновила история — это стартап из двух людей, которые делают заебись и зарабатывают на этом деньги. Недавно они достигли ревенью в 10 тысяч долларов в месяц.

Если вам понадобится простая и классная аналитика — возьмите эту.

#рекомендации
Субботний мини-анонс! Мы с Лешей Войцеховским (@crazymidnight) запустили твиттер-аккаунт с новостями фронтенда. Есть один нюанс — все твиты написаны нейросетью 🌚

Подписывайтесь, ставьте лайки, кекайте с удовольствием — https://twitter.com/neurofront
Из-за декабрьского факапа с подкастом у меня совсем пропало желание его дальше делать.

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

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

+ Как Netflix ведет разработку продукта. Обзор на книжку, обзор хороший, книжку не читал.

+ System Design для самых маленьких. Хорошая вводная статья, там в блоге есть еще небольшие заметки по более узким темам, тоже классные.

+ Introducing Zero-Bundle-Size React Server Components. Некоторые говорят, что это будушее фронтенд-разработки, почитайте пост в блоге.

+ Очарованные циферками. Интересные мысли про дата-дривен-что-угодно.

Наслаждайтесь!

#дайджест
Больше года назад мы в Самокате сделали прекрасную систему передачи параметров во фронтенд приложение во время деплоя. Я тогда написал черновик статьи про это, а потом целый год не мог его довести до нормальной статьи.

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

https://habr.com/ru/post/541314/

#фронтенд #удобство_разработки
JetBrains Academy ищет автора статей про Unix Shell (Bash)

Ребята ищут человека, который возьмёт на себя раздел Bash. Это классная парт-тайм ремоут работка, с большой творческой свободой и классной командой.

👉 Подробности
Масштабируемость

Готовность приложения к решению проблем возникающих при росте нагрузки.

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

После описания нагрузки, нужно выяснить: как повлияет на систему увеличение нагрузки? насколько нужно увеличить аппаратные мощности чтобы справиться с нагрузкой?

Для веб-сервисов самые важные метрики производительности — время ожидания и время отклика. Часто смотрят на медиану, 95-й перцентиль, 99-перцентиль и 99.9-й перцентиль.

> Измерять время отклика внутри приложения не стоит, это даёт недостоверные результаты. Лучше замерять на клиенте.

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

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

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

#dia
Удобство сопровождения

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

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

+ удобство эксплуатации (мониторинг, автоматизация, документация, разумные дефолты, возможность самовосстановления, принцип наименьшего удивления, независимость от среды исполнения);

+ простота понимания (хорошие абстракции, явные зависимости, низкое сцепление модулей);

+ возможность развития на уровне всей системы.

#dia
Сегодня в 18 МСК буду в Клабхаусе, залейтайте.

https://www.joinclubhouse.com/event/P9g8oRjA
Мы в эфире, заходите 🤗