Как стать автором
Обновить
-8
Some Name @sswwsswwread⁠-⁠only

Middle Python Backend Developer

Отправить сообщение

Можно ли реализовать инкапсуляцию средствами ООП?

Время на прочтение6 мин
Количество просмотров5.7K

Если на Силикатной улице (это в Мытищах) остановить тысячу случайных прохожих и спросить их, на каких трёх слонах покоится ООП, каждый второй назовёт инкапсуляцию. В коридорах МИФИ, или на собеседовании в Яндексе — процент будет даже выше. Даже LLM способна на шести пальцах объяснить, почему.

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

Минус поставил, готов ознакомиться

Никогда не читайте перед обедом книг по специальности

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров13K

Книги делятся на две категории: fiction и non-fiction. Технические книги — внезапно — не исключение, и поддаются точно такой же классификации. Между учебником по научной дисциплине, начинающегося с аксиоматики и продолжающегося доказательствами теорем, — и практически любой современной литературой по «Computer Science» — лежит пропасть. Что происходит, когда люди долгое время оказываются рабами одной-единственной книги (с продолжениями), нам хорошо известно из истории. Возникает религия.

99% процентов литературы по ООП — это талмуд. Вероятность того, что вам подойдет «паттерн» — примерно 50%. Как встретить динозавра на Невском. Знание паттернов полезно в той же степени, что и теология, — и примерно тем же по специальности людям. Всегда полезно уметь отличать по запаху Пана от простого фавна, но практических применений такой эрудиции — не существует.

Несколько примеров и торжественный вывод

KRR — ваш личный советник по ресурсам в Kubernetes

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров6.4K

KRR (Kubernetes Resource Recommender) — это CLI-инструмент для оптимизации использования ресурсов в Kubernetes. Он анализирует метрики Pod'ов, собираемые в Prometheus, и предлагает оптимальные настройки requests и limits для CPU и памяти. Это помогает снизить расходы на облачные ресурсы и повысить производительность приложений. В этом посте будет рассмотрен периодический запуск krr в kubernetes с сохранением в html формат для удобного отображения через браузер как web-сайт.

Читать далее

Как мы зарегистрировали компанию в Вайоминге для работы с App Store

Время на прочтение7 мин
Количество просмотров4.1K

Привет, Хабр! После предыдущего поста о запуске платного приложения в App Store из России я получил множество реакций и вопросов. В этом посте я постараюсь подробно рассказать, как мы зарегистрировали юрлицо в США онлайн, не покидая Москвы, какие нюансы о работе в Штатах узнали во время получения услуги, какие документы понадобились и с какими сложностями столкнулись. Удивительно, но процесс оказался гораздо проще, чем мы ожидали.

Открыть бизнес в США можно двумя путями…

Читать далее

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

Время на прочтение4 мин
Количество просмотров37K
Любая система, работающая с платежами, должна быть надежной и отказоустойчивой.

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

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

Arnis: как перенести реальный мир в Minecraft за пару кликов

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров19K


На днях энтузиасты с GitHub выпустили Arnis — утилиту, которая переворачивает представление о строительстве в Minecraft. Теперь, опираясь на реальные данные из OpenStreetMap, за считаные минуты можно создать масштабную копию существующего города.

Тем, кто годами возводил здания и улицы вручную, такая автоматизация может показаться настоящей магией. Достаточно пары кликов вместо часов кропотливой работы: выбираете локацию на карте — и Arnis тут же генерирует виртуальную копию. Но так ли все идеально? Давайте разберемся, как работает Arnis, чем он хорош, есть ли ограничения и какие открываются перспективы при использовании этой технологии. Все подробности — под катом.
Читать дальше →

Я устал возиться с кучей VPN и поставил Xray на роутер

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров139K

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

Я долгое время жил в этом хаосе. Сначала я ставил VPN на телефон, потом на ноутбук, потом на телевизор... В какой-то момент их стало столько, что я уже не знал, какой включен, какой отключен, где подписка закончилась, а где опять надо искать новый сервер. Рабочий VPN переставал работать в самый неподходящий момент – например, когда я пытался оплатить что-то онлайн или посмотреть видео.

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

Читать далее

История эволюции веб-сервиса: от примера из доки до космолета

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров1.2K

5k RPS, 5ms Latency и 100 экспериментов одновременно. История о том, как наша команда перестраивала веб-сервис для сплитования трафика в высокопроизводительную систему. С какими ограничениями Cpython и Gil столкнулись на пути, как обходили "узкие места" и оптимизировали сервис до микросекунд. В общем, всё о том, как мы построили "космолет" на Python и взлетели! Ну и, конечно же, ответ на вопрос: "Почему не Go? ".

Читать далее

Парсинг с помощью LLM: зачем, как и сколько стоит?

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров18K

Во всю идет 2025 год, и нейросети перестают быть чем‑то фантастическим. Они уже повсюду в нашей жизни: от умных колонок в квартирах до сложнейших систем, управляющих логистикой и финансами. Вместе с ними стремительно меняется подход к работе с данными. В этой статье мы поговорим о том, как современные LLM помогают автоматизировать сбор данных с веб‑сайтов и сводят к минимуму рутинную настройку и «подкручивание» парсеров.

Что еще вы найдете в этой статье?

Читать далее

Боремся с токсичными комментариями с помощью ИИ, FastAPI и React

Время на прочтение12 мин
Количество просмотров1.7K

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

Мы воспользуемся FastAPI для бэкенда, React для фронтенда, заставим их между собой общаться через RESTful API, а бизнес-логику реализуем путём обращения к ИИ через gRPC.

Читать далее

Model Context Protocol. Революция в интеграции AI с данными? Смотрим на новый стандарт от Anthropic

Уровень сложностиСредний
Время на прочтение5 мин
Количество просмотров4.3K

Model Context Protocol — это новый протокол от Anthropic, созданный для общения между AI интерфейсом и реальным сервером. Позволяет AI понимать и управлять сервисами аля Google Drive, PostgreSQL, Todoist и многими другими без ручного программирования и затрат на интеграцию

Как TCP/IP, USB и REST — MCP создаёт единый стандарт, который:
🟢 Дает универсальный способ подключения инструментов к AI.
🟢 Позволяет AI самостоятельно находить и использовать нужные функции.
🟢 Намного упрощает разработку — теперь сервисы просто "подключаются", а не интегрируются вручную.

Читать про Model Context Protocol 🫡

Комплексное руководство по конфигурации сервера для LLM

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров5K

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

Читать далее

6 принципов архитектуры ПО для старта проекта

Уровень сложностиСредний
Время на прочтение13 мин
Количество просмотров18K

Как определить, насколько глубоко на старте проекта надо продумывать его архитектуру? И на чем стоит сфокусироваться сразу, чтобы ее пришлось переделывать в процессе? В своё время, вдохновленный книгой «Принципы» Рэя Далио, я попробовал вывести основные подходы к IT-архитектуре, которые теперь сам активно применяю в работе на старте проектов. О них сегодня и расскажу, чтобы помочь начинающим архитекторам ПО.

Читать далее

Вжух и идеальный кандидат найден: как мы сделали ИИ-сервис для рекрутеров

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.9K

Привет, Хабр! Меня зовут Алексей, я развиваю направление искусственного интеллекта и машинного обучения в ГК Юзтех. В этой статье я расскажу о полезном инструменте для рекрутеров, который реализовала наша ML-команда. Теперь наши HR-специалисты не тратят кучу времени на поиск по фильтрам, а доверяют сервису, который за секунды выполняет поиск по базе из 300 000 кандидатов.

Про исследования и проблемы найма

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

По данным Хантфлоу скрининг резюме опытным рекрутером составляет около 5–10 секунд. Рекрутеру с меньшей осведомленностью понадобится около минуты. Несложно подсчитать, что, если на вакансию получено около 100 резюме, время на первичный отбор занимает от 15 минут до 100 минут. Однако, если рассматривать нестандартные вакансии по разработке узкоспециализированных систем, HR тратит около 10 минут на изучение, а это почти 17 часов на 100 резюме.

Немного о задаче

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

Читать далее

Конспект по архитектуре ПО и System Design

Уровень сложностиСредний
Время на прочтение1 мин
Количество просмотров36K

Это компиляция основных знаний по проектированию архитектуры ПО, которые мне удалось собрать. Конспект доступен по ссылке на Miro-доску.

Можно сказать, что это взгляд на System Design с точки зрения фронтенд-разработчика, который пытается разобраться в теме.

Читать статью целиком

Внедряем AI Code Review на GIthub: сомнительно, но окэй…

Уровень сложностиПростой
Время на прочтение5 мин
Количество просмотров4.6K

Код-ревью — важная часть жизненного цикла разработки продукта, но давайте честно: никто не любит просматривать чужой код. Часто, разработчики делают ревью спустя рукава, но даже если это не так -- человеческий фактор может сыграть злую шутку и уязвимость в коде может быть упущена. Пропущенные ошибки, уязвимости и нестабильный код могут привести к задержкам в релизе и росту технического долга. Более того, зачастую, компании имеют свои гайдлайны по оформлению code review, которые также необходимо проверять вручную.

Что если эту рутинную задачу можно ускорить с помощью ИИ?

Читать далее

Почему observability — это не только Grafana и Prometheus

Время на прочтение11 мин
Количество просмотров18K

Вы видите красивые графики в Grafana, алерты настроены, метрики собираются — значит, все под контролем? На самом деле, нет. Когда в продакшене что-то пойдет не так, Prometheus покажет скачок latency, но не объяснит, почему это произошло. Логи могут не содержать нужных данных. Трейсов нет. Итог — часы расследования, хаотичные гипотезы, поиски иголки в стоге сена.

Observability — одно из тех модных слов, которые часто понимают неправильно. Для многих оно сводится к связке Grafana + Prometheus, не более. Однако в реальных системах наблюдаемость (observaбыстроbility) — это больше, чем просто красивые дашборды с метриками. В этой статье разберемся, почему классический стек не покрывает все задачи, какие альтернативы есть на рынке и как построить современный observability-стек.
Читать дальше →

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

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров21K

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

Управляем компьютером жестами: создаем систему бесконтактного взаимодействия с ПК

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров2.9K

В основе проекта лежит компьютерное зрение и машинное обучение. Система использует веб-камеру для захвата изображения рук пользователя в реальном времени. Затем специально обученная нейронная сеть распознает конкретные жесты и преобразует их в команды управления компьютером. Проект полностью открыт и доступен на GitHub. Установка достаточно простая — нужен только Python 3 и несколько библиотек, которые устанавливаются через pip. Вся настройка сводится к выполнению пары команд в терминале.

Читать далее

Вебсокеты на FastAPI: Реализация простого чата с комнатами за 20 минут

Время на прочтение18 мин
Количество просмотров20K

Хотите освоить WebSocket и создать собственный чат с комнатами? В этой статье мы разберем:

В чем разница между WebSocket и классическим HTTP

Как реализовать сервер на FastAPI с поддержкой WebSocket

Как создать простой FullStack-чат для мгновенного обмена сообщениями

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

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

Читать далее

Информация

В рейтинге
Не участвует
Откуда
Cascade Station, None, Австралия
Дата рождения
Зарегистрирован
Активность

Специализация

Бэкенд разработчик
Средний
От 250 000 ₽
Python
PostgreSQL
FastAPI
Google Cloud Platform
Kubernetes
CI/CD
Docker