Pull to refresh
38
0
Maxim Firsov @FirsofMaxim

Mobile developer, Golang backend developer

Send message

Как запустить сервер для Counter-Strike 1.6: инструкция для новичков

Level of difficultyEasy
Reading time12 min
Views21K

Counter-Strike 1.6 — культовая игра, которая дает возможность создать свой сервер для игры с друзьями или публичных матчей. Если вы хотите настроить его, но не знаете, с чего начать, эта статья вам поможет. Под катом подробно рассмотрим, какие есть способы создания сервера, как выполнить установку, настройку, защиту от DDoS-атак и пригласить других игроков.
Читать дальше →

Подробная инструкция, что нужно сделать, чтобы РКН вас не оштрафовал

Level of difficultyEasy
Reading time8 min
Views3.5K

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

Делюсь с вами этим бесплатно. Просто пойдите и сделайте как написано.

Читать далее

Ты решаешь LeetCode неправильно. Как пройти любое собеседование в BigTech?

Level of difficultyEasy
Reading time6 min
Views49K

Привет! Я ex. Разработчик из VK, сейчас принял оффер от Ozon'a, и за последний месяц я прошел собеседования в 4х бигтех компаниях: Ozon, Avito, Wildberries и T-Bank и везде дошел до финалов/офферов. Пообщавшись во многих группах, посвященных Go-разработке, я понял, что много умных ребят готовясь к собесам не имеют четкой системы подготовки, и из-за этого заваливают технические собесы в компании. Не претендуя на истину в последней инстанции, предлагаю свою методику подготовки к собесам, которая помогла мне и моим знакомым подготовиться к техническим собесам во все популярные ру-бигтехи.

Читать далее

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

Reading time4 min
Views37K
Любая система, работающая с платежами, должна быть надежной и отказоустойчивой.

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

Сейчас покажу, как это сделать.
Читать дальше →

Как пройти алгоритмическое собеседование: полный гид по алгоритмам, сложностям и стратегиям

Reading time31 min
Views43K

Не тратьте время на задачи – сначала разберитесь в основах. В статье:

1. Как проходят собеседования (ВАЖНО!)
2. Big O, оценка сложности алгоритмов
3. Популярные техники: два указателя, DFS, динамическое программирование и другие
4. Какие задачи решать, чтобы пройти в Яндекс

Читаем, практикуемся, получаем оффер!

Читать далее

Постмортем: 4 мои ошибки во время отражения DDOS атаки (спойлер — выкуп в $250 мы все-таки не заплатили)

Level of difficultyMedium
Reading time7 min
Views21K

Мой обеденный кофе прервался. Начали приходить уведомления от мониторинга, что сайт и API не отвечают, а CloudFlare отдаёт 521-ю ошибку на все запросы. Спустя пять минут ко мне в личку пришли пользователи с жалобами на неработающие приложения. А ещё спустя пять позвонил сооснователь проекта и сказал, что от нас требуют $250 за остановку DDOS'a.

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

Читать далее

Современные подходы к управлению UI: low-сode & Backend-Driven UI

Level of difficultyEasy
Reading time9 min
Views26K

Привет, меня зовут Михаил Шевченко. В Авито я проектирую и разрабатываю backend low-code платформы Bricks. В этой статье рассказываю о том, почему в Авито было принято решение развивать собственные low-code-решения и Backend-Driven UI, объясняю их устройство и делюсь достигнутыми результатами.

Читать далее

Как отличаются СДВГ люди от обычных людей? И зумеры — это СДВГшники или просто ленивые инфантилы?

Level of difficultyEasy
Reading time20 min
Views92K

Последнее время происходит какая-то невообразимая атака на сам термин СДВГ, на СДВГ людей, поэтому в статье я постарался описать и (!главное) визуально показать отличие СДВГ людей от обычных (нейротипичных). И попытался проанализировать и также визуально показать, действительно ли много СДВГшников среди поколения зумеров.

Предупреждение: Данная статья написана не квалифицированным врачом-психиатром, а пациентом с СДВГ. И есть основания полагать, что понимаю я в этой теме больше, чем многие психиатры на территории бывшего СССР.

Читать далее

Обойдемся без VPN: связка из 2 прокси для хождения в Интернет

Level of difficultyMedium
Reading time17 min
Views95K

На Хабре есть уже десятки статей о том, как поднять свой VPN. Но, кроме VPN, существует еще и прокси. Для браузера его более, чем достаточно.

Практика показывает, что РКН на данный момент не ломает даже прозрачные HTTP прокси (МГТС, Москва). Надеяться на это, впрочем, не приходится, поэтому мы поднимем еще и HTTPS прокси с помощью Squid.

Данный прокси работает тупо по адресу и паре логин:пароль безо всяких PAC файлов и прочих костылей на стороне клиента (костылей на стороне сервера будет предостаточно). Позволяет гонять через себя весь трафик не интересуясь, что там уже заблокировано, а что еще нет. Кроме того, его хорошо понимают скрипты и программы Linux, потому что он совместим с переменными HTTP_PROXY и HTTPS_PROXY.

Читать далее

Такие разные Android AppLinks, WebLinks, DeepLinks. Разбираемся и пытаемся сломать

Reading time7 min
Views5K

Всем привет! На связи Юрий Шабалин и Веселина Зацепина, эксперты по безопасности мобильных приложений в компании Стингрей. С каждым годом мобильные приложения становятся всё более сложными и взаимосвязанными, предлагая пользователям бесшовный опыт взаимодействия. Одной из ключевых частей этого опыта являются ссылки, которые могут направить пользователя прямо на определённый экран приложения или на конкретный контент. Однако многие (как и мы до того, как написать эту статью) путают такие термины, как Deep Links, Web Links и App Links, что может привести к ошибкам в реализации и уязвимостям.

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

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

Читать далее

Моя петиция EB-1A на грин-карту талантов, одобренная с первой попытки

Level of difficultyMedium
Reading time43 min
Views24K

Моя полная петиция на грин-карту по программе талантов EB-1A. 557 страниц, 7 критериев, одобрена с первой попытки без RFE. Все мои рассуждения по выбору критериев, подготовке и описанию доказательств, переводам, оформлению и отправке.

Читать далее

Как перестать бояться Proguard и начать жить

Reading time12 min
Views64K


Здравствуйте, я Android разработчик и я больше не боюсь ProGuard...


Обычно, об этой утилите вспоминают, когда сталкиваются с dalvik dex-limit issue или с требованием улучшить безопасность приложения. К сожалению, правильно настроить Proguard удается далеко не с первого раза. Я часто наблюдал, как многие, сломав проект, выключают Proguard и включают поддержку Mulditex и каждый раз немножечко грустил по этому поводу, ведь Proguard помогает как сократить размер приложения, так и повысить его производительность.


В итоге, я решил написать статью, в которую смогу поместить всю полезную информацию, которую я узнал за несколько лет работы с Proguard и которая могла бы помочь как совсем новичкам, так и тем, кто уже что-то знает.

Читать дальше →

Как зажечь на конфе, даже если ты не зажигательный

Reading time7 min
Views1.2K

Однажды наступает такой момент, когда твой руководитель подходит к тебе во время обеда, кладёт руку на плечо и, глядя добрыми глазами, говорит: «Сынок, ты уже совсем большой, поэтому можешь поехать на крупную конфу — рассказать там про наш продукт и какая мы классная компания. Давай! Наш менеджер по контенту уже договорился, наплёл, что ты классный мегаспикер, тебе напишет мужик с конфы, договоритесь».

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

Делюсь.

Читать далее

Кондиционер в жарком климате. Как  получить комфортную прохладу в доме и не покрыться плесенью от сырости

Reading time10 min
Views9.1K

Курортная жизнь под кондиционером.

Я езжу на пляжно-морской отдых в осенний бархатный сезон: в первой половине сентября в Турцию или в первой половине октября в Египет.

Такой выбор времени связан с двумя факторами:

1. Меньше людей, так как кончились летние каникулы  у детей и прошёл  сезон августовских отпусков в Европе у взрослых.

2. Жара сильно уменьшилась, так что жить в номере можно даже и без кондиционера.

Предыдущие 5-6 поездок я действительно в эти периоды практически не включал кондиционер, особенно ночью. Шум от сильно изношенного кондиционера в ночной тишине вообще как-то не очень приятен.

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

Так как моя текущая работа- это проектирование систем ОВиК (отопления, вентиляция и кондиционирование), то наблюдение за  климатом в помещении  в зависимости от работы  кондиционера при разных внешних условиях стало для меня неким интеллектуальным развлечением на всю неделю отдыха.

Читать далее

Как жить и работать при нарушениях внимания?

Level of difficultyMedium
Reading time11 min
Views37K

▍ Предисловие. Флейта хулуси


Щёлк — я обнаруживаю себя за просмотром ролика на YouTube, в котором музыкант рассказывает, как ухаживать за флейтой из сушёной тыквы. Как я оказался здесь?! Зачем? На мгновение я пугаюсь того, что не могу вспомнить, каким образом попал на этот ролик. Я ведь не планировал узнавать про эти флейты и вообще сел работать. Холодок пробегает по коже.

Пытаюсь размотать предысторию, пройти путь своих блужданий обратно. Листаю историю браузера и вижу, что это уже третий по счёту ролик, а до этого я был на вкладке с «Авито». И тут понимаю, как это произошло. Я сел работать и на мгновение решил заглянуть на сайт по продаже вещей, посмотреть, есть ли сообщения, и там залип на странице с предложенными товарами, среди которых была эта самая флейта. Мне стало интересно, я полез сначала на Википедию, потом на YouTube. Ну нужно же послушать, как она звучит… Вот небольшой пример того, как живётся людям с неустойчивым вниманием.


▍ Дисклеймер


Я ожидаю справедливого негодования от тех, кого раздражает использование психологических проблем для оправдания нытья, бездействия и как аргумента для просьбы о снисхождении к себе. Давайте сразу проведём чёткую границу между теми, кто ведёт себя инфантильно, сваливая ответственность на психологические расстройства. Таких людей я не одобряю и их незрелое поведение порицаю. По другую сторону этой черты будут те, кому осознание своих проблем помогает стать более адаптивными, спокойными и обрести опору в понимании происходящего с ними.
Читать дальше →

«Каждый имеет право быть похожим на себя». Расстройство аутистического спектра и карьера в IT: личный опыт

Reading time15 min
Views27K

«Я офигеваю от нелогичности окружающих, а они — от того, что я робот». Эта фраза идеально описывает особенности моего взаимодействия с окружающим миром. Я такой же робот. Или инопланетянин. Я могу только догадываться, каким я кажусь со стороны. Но теперь я знаю, что другие считают меня по меньшей мере странным. Это взаимно. Многие поступки окружающих людей кажутся мне совершенно нелогичными и иррациональными.

Долгое время это ставило меня в тупик. Я не понимал, в чём дело, и считал себя глубоким интровертом, замкнутым мрачным типом, совсем не понимающим людей. Всё гадал, что же со мной не так...

Читать далее

Собеседование по System Design: как запроектировать и не потеряться

Level of difficultyMedium
Reading time8 min
Views20K

Привет! Меня зовут Дмитрий. Я архитектор решений в крупной российской компании, более 15 лет проектирую, пишу код и руковожу командами. Сотрудничаю с Практикумом как ревьюер курса по Java и как автор курса «Архитектура программного обеспечения» в Яндекс Практикуме.

Предположим, вы решили развлечься дизайном систем (System design), пусть даже и не добровольно, на собеседовании. Если компания поленилась поделиться рабочим контекстом, то задача может быть в формате «запроектируй Твиттер». Более кандидатоориентированная компания N может попросить «спроектируй поиск на сервисе N».

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

Читать далее

Почему мы решили перейти с JUnit4 на JUnit5

Level of difficultyEasy
Reading time8 min
Views2.4K

Меня зовут Александр Чекунков, я — Android‑разработчик в СБЕРе. Занимаюсь разработкой CSI‑опросов в мобильном приложении «СберБанк Онлайн». Я несу ответственность за функциональность, которую используют бизнес‑команды для оценки удовлетворённости клиентов.

Не так давно, в нашем проекте мы приняли решение перейти с JUnit4 на JUnit5. Эта статья поможет разобраться в причинах выбора JUnit5 в качестве целевого решения для написания unit‑тестов. Я постараюсь ответить на ключевые вопросы: что делает JUnit5 предпочтительным выбором для современных проектов, и какие конкретные улучшения и нововведения он предлагает?

Читать далее

Как веб-специалисту начать пентест API мобильного приложения и не сломать макбук

Level of difficultyMedium
Reading time11 min
Views3.3K

Я активный участник программ Bug Bounty и достаточно часто смотрю не только веб‑приложения, но и мобильные приложения, чтобы определить все конечные точки API сервиса и попробовать найти баг в функционале до которого не всегда просто добраться. А почему непросто? Потому что в мобильных приложениях часто встречается SSL Pinning, который не дает перехватывать трафик, а поэтому анализ API приложения становится более сложным. В этой статье я изложу:

1. Как отключить SSL Pinning и получить возможность внедряться в процессы iOS приложений.

2. Как отключить SSL Pinning и внедриться в Android приложение без наличия смартфона на одноименной ОС.

Читать далее

Git. Скачем между ветками как древесные лягушки

Level of difficultyEasy
Reading time6 min
Views33K

Статей на тему много, но, видимо, недостаточно. Последние 10 лет в 4-х разных компаниях время от времени слышу от коллег:

— Не могу пошарить экран с кодом, у меня другая ветка сейчас.

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

— Стаскивать ветку для просмотра ПР? Это же неудобно, надо "стэшить" изменения, ветку переключать.

Читать далее
1
23 ...

Information

Rating
1,841-st
Location
Снежинск (Челябинская обл.), Челябинская обл., Россия
Date of birth
Registered
Activity