Pull to refresh
0
0
Роман Маркин @Gram

User

Send message

Что нужно знать, чтобы успешно пройти System Design Interview

Reading time16 min
Views29K

Для любого разработчика глубокое понимание основных принципов системного проектирования является необходимым условием для создания стабильных и масштабируемых программных систем, способных обеспечивать высокую производительность. Системное проектирование (System Design) включает разработку архитектуры и структуры программной системы, направленную на удовлетворение специфических требований и обеспечение требуемых показателей производительности.

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

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

Читать далее
Total votes 46: ↑44 and ↓2+51
Comments26

Развиваем продукт «без проблем»

Level of difficultyEasy
Reading time9 min
Views4.9K

В своей прошлой статье я рассказывал о том, как использовать метрики при разработке продуктов. Статья получилась довольно насыщенная, но теоретическая.

В этой статье я хочу рассказать о том, как на практике применять эти подходы при развитии продуктов. Можно ли опираться только на метрики для приоритизации задач. Что делать, когда у пользователей нет проблем с текущим продуктом. 

Как с помощью Jobs To be Done принимать продуктовые решения, и почему сейчас мы используем этот подход для работы над нашими продуктами.

Читать далее
Total votes 41: ↑40 and ↓1+44
Comments14

«А вы точно продакт?»

Reading time13 min
Views6.8K

Когда я в последний раз менял работу и проходил собеседования, конечно, основные вопросы были про навыки продакта и особенности продуктов, которыми я занимался. Вопросы касались метрик, экономики продукта и взаимодействия с пользователями. Поскольку мой опыт специфичен :), в какой-то момент у меня даже закралось сомнение, а точно ли я продакт? Начал размышлять, откуда родился такой вопрос — и понял.

Много статей написано про то, как развивать продукты и как быть их владельцем. Чаще всего в статьях рассказывают о приложениях для вызова такси, агрегаторах объявлений, маркетплейсах, социальных сетях или интернет-магазинах. В общем, это всегда рассказ о том, как сделать лучше жизнь сотен тысяч или даже миллионов пользователей. Такие статьи круто читать, и в них много не только интересных примеров, но и действительно полезных ходов и приёмов.

Но чаще всего авторы обходят стороной продукты, которые существуют для гораздо меньшего числа пользователей, и которыми пользуются те команды, которые делают большие, классные и успешные продукты. Я говорю о внутренних ИТ-продуктах компаний.

Меня зовут Денис Соловьев, и так получилось, что я работал и продолжаю работать как раз на таких внутренних ИТ-продуктах. Я хочу сравнить, какие из инструментов и подходов работают для них.

Читать далее
Total votes 34: ↑32 and ↓2+35
Comments8

Как я уронил прод на полтора часа (и при чем тут soft delete и partial index)

Reading time7 min
Views39K

В жизни любого разработчика наступает момент, когда он роняет прод. Представьте: полдень, в Skyeng час пик, тысячи запланированных онлайн-уроков, а наша платформа лежит… 

Все упало из-за ошибки в процессе деплоя, которая связана с тонкостью PostgreSQL. К сожалению, на этом моменте у нас прокололась не одна команда. И чтобы такое больше не произошло ни у нас, ни в другой компании — велкам под кат.

Читать далее
Total votes 146: ↑142 and ↓4+165
Comments174

Личный прокси для чайников: универсальный обход цензуры с помощью VPS, 3X-UI, Reality/CDN и Warp

Level of difficultyMedium
Reading time27 min
Views117K

> С 10 апреля 2024, 3 месяца спустя,
> данная статья заблокирована РКН на территории РФ,
> но доступна с IP других стран, а также через веб-архив.

На фоне прошлогоднего обострения цензуры в РФ, статьи автора MiraclePTR стали глотком свободы для многих русскоязычных айтишников. Я же хочу приоткрыть дверь к свободной информации чуть шире и пригласить «не‑технарей» («чайников»), желающих поднять личный прокси‑сервер для обхода цензуры, но дезориентированных обилием информации или остановленных непонятной технической ошибкой.

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

Статья рассчитана на «чайников», не знакомых с предметной областью. Однако и люди «в теме» могут найти нечто полезное (например, чуть более простую настройку проксирования через CloudFlare без необходимости поднимать nginx на VPS).

Если у вас ещё нет личного прокси для обхода цензуры — это знак.

Читать далее
Total votes 102: ↑100 and ↓2+109
Comments284

Ускорение загрузки сайта: туториал для джунов

Level of difficultyEasy
Reading time7 min
Views11K

7 месяцев назад я стала тимлидом. От своих разработчиков я собираю обратную связь раз в пару месяцев. Поняла, что главный запрос от новичков — полезные и емкие инструкции по типовым задачам. Решила начать с таска, который наши программисты выполняют чуть ли не каждый день — ускорение сайтов. Если вы искали сборник лайфхаков, который можно спокойно отправить своим джунам — эта статья для вас. И для джунов, конечно. Инструменты проверки, оптимизация изображений, блокировка рендеринга — о всех этапах ускорения без воды с кодом и скринами. 

В начале — пару слов о себе. Меня зовут Полина и я работаю «Rocket Business» уже несколько лет. Свой путь от джуна до тимлида прошла именно здесь. Поэтому своим мини-пособием решила делиться в корпоративном блоге: оставляю в помощь потомкам и аудитории Хабра. 

Читать далее
Total votes 24: ↑24 and ↓0+24
Comments18

Сказ о том, как два сервера изменили судьбу сетевой команды

Level of difficultyMedium
Reading time12 min
Views21K

Привет. Я Марат Сибгатулин — сетевик в Яндексе, работаю в команде Yandex Infrastructure. И сегодня я расскажу вам одну поучительную историю.

Жили были два сервера. Да и не сервера вовсе, а виртуальные машины. Жили не тужили, добро наживали, скриптами разными обрастали. Три года они трудились на славу облака да во имя автоматизации. Пока не наступили чёрные дни для RAID-массива на гипервизоре.

Это присказка, не сказка. Сказка впереди
Total votes 44: ↑43 and ↓1+56
Comments23

Любовь, люди и роботы: как создать чат-бота, за которого не стыдно

Reading time9 min
Views7.2K

Привет! Меня зовут Дима, и я почти два года работаю в Ozon. Я пришёл продакт-менеджером, а через год стал руководителем отдела, при этом продуктовая составляющая моей работы никуда не делась. Сейчас моя команда развивает платформу для создания чат-ботов, где наш флагман — это чат-бот клиентской поддержки внутри нашей WebCRM, где происходит вся магия общения с пользователями. 

Исторически сложилось, что в Ozon основной объём поддержки осуществляется через чат. В 2020 году бот закрывал 27% от общего числа обращений, а в 2022-м — уже 62%. Это сотни тысяч тикетов в день, при этом качество ответов не ухудшилось. Важность чат-бота выросла в разы.

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

Читать далее
Total votes 23: ↑18 and ↓5+17
Comments7

Тестируем современные емейл-фреймворки

Level of difficultyMedium
Reading time10 min
Views5.6K

Все, кто сталкивался с версткой писем, знают, что там по-прежнему используется табличная верстка, инлайновые стили, css хаки, устаревшие теги и т.д. И все это ради поддержки всех (или, вернее сказать, большинства) почтовых клиентов: различных версий Outlook, веб-интерфейсов почтовиков и мобильных почтовых клиентов.

Но индустрия не стоит на месте - все активнее для верстки писем применяются емейл-фреймворки. О них и пойдет речь дальше. Сравним 2 из них: MJML и Ampier framework (хотел добавить еще и Zurb Foundation for email, но они в последних публикациях уже не говорят о поддержке outlook, да и в принципе устарели).

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

Ampier - это мой емейл-фреймворк, который создавался на основе личного многолетнего опыта работы в сфере емейл-маркетинга. В нем я постарался учесть все те проблемы и сложности, с которыми сталкивается верстальщик писем. Идея была в том, чтобы не просто обеспечить “приемлемое отображение” в большинстве клиентов”, а дать свободу верстальщику, при этом не обременяя его вопросами совместимости с устаревшими почтовыми клиентами. Ну и, плюс ко всему, дать возможность заложить в единый код как html, так и AMP-версию письма. Но в этой статье речь пойдет пока что только о html.

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

Читать далее
Total votes 4: ↑3 and ↓1+5
Comments11

Дружим Sentry Self-Hosted и LDAP

Level of difficultyEasy
Reading time3 min
Views5.9K

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

Из этого появилась небольшая статья по установке Sentry Self-Hosted и подключения к LDAP.

Читать далее
Total votes 3: ↑3 and ↓0+3
Comments1

Английский, которому меня не учили

Reading time14 min
Views74K

Или максимы Английского языка, которые бы я хотел знать 20 лет назад.

Чем отличается хороший геймер от плохого? Хороший геймер сидит и изучает игру. Он знает каждый закуток. Он может без запинки назвать все характеристики всех юнитов в Star Craft. А самый крутой игрок знает все пропускные способности желтых, красных и синих конвейеров. А плохой игрок использует чит-коды или assistant apps. 

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

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

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

Okay, let's go...
Total votes 104: ↑102 and ↓2+131
Comments174

Дизайн-долг платежом красен: улучшаем таблицы в большом продукте

Reading time5 min
Views11K

Меня зовут Александра, я дизайнер из Ozon в SX — Seller Experience. Сегодня расскажу продуктовую историю о таблицах и дизайн-долге.

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

Так было и с нашим продуктом, который накопил много недочётов. Работа без компонентов усложняла внедрение нового как со стороны дизайна, так и со стороны фронтенда. От неконсистентности страдали и пользователи. Особенно плохи были дела с таблицами. Настолько, что пользователи вручную увеличивали страницу, чтобы найти горизонтальный скролл. Нагруженные таблицы — вечная боль, и ресурсов на возврат дизайн-долга и техдолга, как всегда, нет — новые фичи сами себя не спроектируют. Под катом наша история решения большой задачи с низким приоритетом. 

Как поступила команда
Total votes 27: ↑26 and ↓1+29
Comments13

Зуб мудрости, который перевернулся и растёт внутрь черепа

Reading time13 min
Views15K

Наглядная иллюстрация проблемы ретинированных зубов. Слева — ретенция восьмого, а справа — седьмого зуба.

Восьмые зубы, или зубы мудрости, считаются чуть ли не атавизмом. Вот тут мы это уже разбирали. В жевании они практически не участвуют, зато проблем доставляют больше других зубов. Одна из самых интересных проблем — ретенция, то есть затруднённое прорезывание. Это когда зуб вообще не появляется над десной вовремя, делает это частично или лезет боком. Частоту можно оценить вот по этому исследованию в Швеции: 72 % населения в 20–30 лет имеют хотя бы один непрорезавшийся моляр. Да, ретенция зависит от генотипа, а он связан с географией, но порядок примерно похож по всей планете.

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

В общем, отвечаю на вопросы.

  • Что из себя представляют сами восьмёрки и как они участвуют в работе челюстного аппарата.
  • Почему зубы мудрости не всегда растут так, как надо.
  • Что делать, если они не прорезались.
  • Как их лечат (на конкретных примерах), и стоит ли вообще это делать.

Ниже есть натуралистичные фотографии операций по удалению зубов (ничего страшного в сравнении с постом про флегмону). Если вы сейчас едите или слишком впечатлительны — заходите в пост с особой осторожностью.
Читать дальше →
Total votes 37: ↑32 and ↓5+34
Comments29

Бесплатный курс «Язык R для интернет маркетинга»

Reading time3 min
Views4.7K

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

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

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

Читать далее
Total votes 5: ↑5 and ↓0+5
Comments5

Водопровод в современной квартире

Reading time11 min
Views80K

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

Читать далее
Total votes 147: ↑130 and ↓17+156
Comments366

Как мотивировать команду? Про обещания руководителя, правильный фидбэк и выгорание сотрудников

Reading time11 min
Views6.1K


Обсуждаем мотивацию сотрудников в IT: чем компании привлекают и удерживают таланты в 2021 году, как предотвращать выгорания и почему мотивация не должна завязываться только на отношениях «руководитель-подчиненный».

  • После определенного уровня заработной платы, денежное вознаграждение теряет свою ценность.
  • Здоровая команда, с правильной внутренней и внешней коммуникацией, сама себя мотивирует.
  • Если компания / команда / проект в тяжелой ситуации, скажите сотрудникам об этом честно. Возможно в этой ситуации будет стратегически верно профакапить показатели, но решить проблемы, чтобы потом нормально двигаться дальше.
  • Демотивированный ≠ выгревший. Демотивированному сотруднику еще можно помочь.
  • Замена части своих рутинных задач на новые помогает вернуть мотивацию.

Читать дальше →
Total votes 15: ↑8 and ↓7+3
Comments7

Грейды: как оценивать уровень разработчиков?

Reading time13 min
Views21K


В новом выпуске подкаста «Релиз в пятницу» Миша Шпаков, Кира Айрапетова, Олег Филимошин обсудили грейды: когда, кому, зачем они нужны и как эффективно их использовать.

Если коротко, вот что я выделила для себя:

  • Грейд — структура, позволяющая привязать зарплаты в компании к навыкам и задачам сотрудников.
  • Грейды нужны не всем компаниям.
  • Грейды не только про hard-skills.
  • Грейды обоюдно удобны, если позволяют тем, кто больше вкладывает в развитие компании, получать больше.
  • Грейды могут быть вертикальные и горизонтальные.
  • Круто, когда человека сам решает, куда он хочет развиваться, и компания идет ему навстречу.

Под катом подробнее — текстом для тех, кому удобнее почитать, и ссылочка на видео для тех, кто предпочитает слушать.
Читать дальше →
Total votes 5: ↑3 and ↓2+2
Comments13

Выбор DNS-хостинга после 10 лет с Яндексом

Reading time5 min
Views44K

Что не так с DNS от Яндекса?
Какой DNS-хостинг у самых посещаемых сайтов в зоне .ru?
Как выбрать провайдера? Сравнительная таблица.

Узнать
Total votes 52: ↑52 and ↓0+52
Comments49

Как ИТ-специалисту развить навыки коммуникации. 20+ полезных материалов

Reading time10 min
Views23K


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

Конечно, можно не выступать вообще, тогда проблема будет «решена». Но если вы хотите повышать авторитет в команде, убедительно доказывать свою точку зрения и продвигать собственные идеи, придется прокачивать коммуникативные навыки, в которые по многим типологиям входит в том числе и презентационное мастерство. В этой статье максимально конкретно рассмотрим, как это сделать.
Читать дальше →
Total votes 18: ↑17 and ↓1+18
Comments3

Шпаргалка для кандидата: какие вопросы задать потенциальному работодателю на собеседовании

Reading time6 min
Views392K
У каждого кандидата в конце собеседованию рекрутер обычно спрашивает, есть ли вопросы. Часто люди теряются и не находят, что спросить. И лишь по прошествии некоторого времени (часто, когда человек уже работает в компании) сами собой всплывают вопросы, о которых нужно было поинтересоваться заранее, а не брать кота в мешке и удивляться «Как я сюда попал? Куда я смотрел? Почему я об этом не подумал?». Это так называемый «эффект лестницы». Я подготовил шпаргалку, что ты, %habrauser%, не растерялся.

Общее


1. Рабочий график и можно ли его двигать?
Я люблю поспать. Но на моей прошлой работе «рабочее утро» начиналось в 7:30. Мало того, что я довольно часто не мог прийти к этому времени, я еще пол дня занимался тем, что пытался привести себя в рабочую форму. Где то до 10:00. С 10:30 до 11:30 я усердно работал. Потом был обед. А потом мне хотелось спать, а не работать, т.к. я не высыпался еще с утра. Надо ли говорить, что вместо 8 часов, на которые меня нанял работодатель, я работал в «потоке» только часа 3-4. Так что для себя нужно решить вопрос – когда я наиболее трудоспособен? И обговорить рабочий график с руководством. И еще один нюанс. Попробуйте закрепить обговоренный график в трудовом договоре или контракте (далее ТД), если работодатель идет на персональный рабочий график для Вас. Никаких устных договоренностей. Иначе Вам начнут крутить руки уже в процессе работы (как это было со мной).
Читать дальше →
Total votes 29: ↑29 and ↓0+29
Comments30
1
23 ...

Information

Rating
Does not participate
Location
Нижний Новгород, Нижегородская обл., Россия
Registered
Activity