Python Backend | YeaHub – Telegram
Python Backend | YeaHub
1.82K subscribers
257 photos
63 videos
7 files
413 links
Теория, подготовка к интервью и курсы для Python разработчиков

YeaHub — это платформа для IT-специалистов, объединяющая обучение, карьерный рост, развитие и сообщество единомышленников.

Платформа: https://yeahub.ru

Для связи: @ruslan_kuyanets
Download Telegram
#Собес #solid #fastapi #sql

🤔 Middle Python Backend-разработчик в компанию Дивергент

Техническое собеседование, весна 2025. Вилка: 150-180к. Проект: HR-бот.
Опыт в резюме: 2.5 года. Вопросы не совсем базовые, ближе к mid-уровню.

💬 Вопросы:

- Расскажи про Celery: что это, как работает?

- Как реализовать двухфакторную аутентификацию?

- Что ты знаешь про Keycloak? Как он используется?

- Что такое паттерн Стратегия (Strategy)?

- Какие паттерны программирования знаешь?

👉 Все вопросы из этого собеседования (11)

📣 Хочешь больше собесов?
Подпишись на наш главный канал
2
Photoshop не нужен: Python удаляет фон с 1000+ фото за несколько минут

Мы можем заменить часы ручной работы двумя строчками кода на Python с помощью библиотеки rembg. Она использует нейросети для точного "вырезания" объектов и хорошо подходит для быстрой обработки большого количества фотографий

Нам понадобится сама библиотека и Pillow для работы с графическими объектами:

pip install rembg pillow


Импортируем

from rembg import remove
from PIL import Image


Определяем входной и выходной файл 👇

input_file = 'source_photo.jpg'
output_file = 'result_transparent.png'

input_image = Image.open(input_file)



🟡 Вся суть процесса здесь. Функция remove() автоматически обрабатывает изображение и возвращает его с прозрачным фоном. Сохраняем результат обязательно в PNG, чтобы сохранить прозрачность

output_image = remove(input_image)

output_image.save(output_file)


Готово =) Можно использовать его для автоматизации вырезания картинок для маркетплейсов, подготовки контента или наполнения своих пет-проектов ⚡️

🚀 Пост Guru Python: @sergey_filichkin_blog
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥2
#Собес #vacuum #dead_tuple #performance
🤔 Что такое VACUUM в PostgreSQL

💬 Кратко:

VACUUM — это команда в PostgreSQL, которая удаляет ненужные данные, освобождает место и предотвращает разрастание базы данных. Регулярное выполнение VACUUM помогает поддерживать производительность базы.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
1
#course #ии
📚 Эндрю Ын запускает бесплатный курс по ИИ-агентам

Всё реализуется на чистом Python. Эндрю подчёркивает, что создание ИИ-агентов — один из самых востребованных навыков на рынке.

Перейти к материалу

👉 База вопросов 👉 Новости
#Собес #gil #io-bound #blocking
🤔 Почему IO-bound задачи не блокируют поток из-за GIL?

💬 Кратко:

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

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
🎙Python может озвучивать текст без сторонних сервисов

Если тебе нужен простой способ быстро озвучить текст для бота, презентации или видео, можно это сделать довольно просто: хватит одной компактной библиотеки Python — gTTS (Google Text-to-Speech)

🔵 Начинаем с установки ключевого инструмента:
pip install gTTS


🔵 Подключаем необходимые модули
import os

from gtts import gTTS


Весь процесс укладывается в три шага:

1️⃣ Задаем текст, который должен быть озвучен.
thesis = "Системный подход в программировании экономит время."    


2️⃣ Создаем объект gTTS, обязательно указывая локализацию (ru)
# Указываем русский язык (ru)
tts_audio = gTTS(text=thesis, lang="ru")


3️⃣ Сохраняем результат в MP3 и запускаем воспроизведение
output_filename = "system_voice_message.mp3"
tts_audio.save(output_filename)

# Проверка (выбираем команду под твою ОС)
# os.system("start " + output_filename) # Windows
# os.system("open " + output_filename) # macOS


Этот инструмент идеально подойдет для создания голосовых уведомлений в твоих скриптах, озвучки контента или еще каких-то интересных штук =)

Ставь реакцию, если было полезно 💙

🚀 Пост Guru Python: @sergey_filichkin_blog
Please open Telegram to view this post
VIEW IN TELEGRAM
11
#Собес #gil #orm #asyncio

🤔 Senior Python Backend-разработчик в BullGlobal

Техническое собеседование. Конец 2025. Вилка 5000$+. Был простой System Design

💬 Вопросы:

- Какие виды авторизации существуют в веб-приложениях?

- Как можно обрабатывать тяжёлые операции (например, работу с изображениями или файлами) вне основного потока приложения?

- Опишите общий подход к выполнению новой задачи от организации работы до реализации.

- Какие ограничения и проблемы существуют у asyncio?

- Объясните, как работает asyncio в Python.

👉 Все вопросы из этого собеседования (23)

📣 Хочешь больше собесов?
Подпишись на наш главный канал
1
#Собес #hash_index #unique #btree
🤔 Можно ли сделать хэш-индекс уникальным?

💬 Кратко:

В PostgreSQL хэш-индексы не поддерживают уникальность: нельзя объявить CREATE UNIQUE INDEX с USING HASH. Хэш-индексы служат лишь для ускорения точных поисков, а уникальность обеспечивается только B-tree-индексами.

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
❤‍🔥1💘1
#roadmap #roadmap #начинающие
📚 Самый полный Роадмеп бэкенд-разработчика на Python с нуля 2025

Этот материал представляет собой подробную дорожную карту для начинающих бэкенд-разработчиков на Python, составленную Еленой Морозовой и командой опытных разработчиков. Он систематизирует весь необходимый стек технологий — от основ Python, ООП и алгоритмов до работы с базами данных, микросервисной архитектурой, облачными технологиями и DevOps-инструментами. Статья служит техническим документом без лишней мотивации, предлагая четкую структуру, пояснения и ссылки на актуальные учебные материалы, которые авторы рекомендуют на практике

Перейти к материалу

👉 База вопросов 👉 Новости
🔥1
#Собес #advantages #disadvantages #fast_api
🤔 Какие главные плюсы использования FastAPI на проекте и какие у этого инструмента есть потенциальные недостатки?

💬 Кратко:

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

📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору

📣 Хочешь получать больше таких разборов?
Подпишись на наш главный канал
Удаляем дубликаты в списке, сохраняя порядок 👩‍💻

Когда мы обрабатываем входящие потоки данных — будь то список email-адресов, ID или URL-ссылок, перед нами встает задача: нужно избавиться от повторяющихся записей, но при этом сохранить исходный порядок

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

К счастью, Python предлагает эффективное решение, используя особенности работы со словарями (dict)

📌 С версии Python 3.7 (а фактически и с 3.6 в CPython) словари гарантированно сохраняют порядок вставки ключей

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


Смотри, как это выглядит:


# Исходный список с повторяющимися данными
items = ["a", "b", "a", "c", "b"]

# Используем dict.fromkeys() и сразу преобразуем обратно в список
unique_ordered = list(dict.fromkeys(items))

# Результат: ['a', 'b', 'c'] — уникальные элементы с сохраненным порядком



▫️ Для удобства можно обернуть в функцию:

def get_unique_items_with_order(items):
"""Возвращает список уникальных элементов, сохраняя порядок их первого появления"""
return list(dict.fromkeys(items))


Дальше просто применяем

emails = ["a@mail.com", "b@mail.com", "a@mail.com"]
print(get_unique_items_with_order(emails))
# Вывод: ['a@mail.com', 'b@mail.com']


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


🚀 Пост Guru Python: @sergey_filichkin_blog
Please open Telegram to view this post
VIEW IN TELEGRAM
4