Close
Edit

themes for middle

Собеседования

postfix

источники:
Собеседование Python. Разбор вопросов
Почти Senior или ...? / Техсобес на позицию Middle Python Developer / Mock interview

ключи: #hr #middle
Ключи: #3d, #bash, #css, #english, #git, #html, #js, #mail, #mysql, #postgresql, #python, #scss, #sql, #tool

Содержание >>

только важные выдержки


themes_for_middle
Тезисы

темы для изучения

брокер сообщений
kafka

доставка кода
Ansible

мониторинг

зависит от того, как задеплоил

если в кубернитосе, промисиус и графана
и плюс нот экспортер
если эксибл на берметал сервера, зэбикс агенты и забик сервер для мониторинга
если в клауд, клаудные системы мониторинга
если в амазон (ес2 виртуалка, лямбды и т.д., кластер кубернитес)
амазоновский clowd wotch, и другие сервисы клауда
9 лучших программ для мониторинга вашего веб-приложения (автономные и облачное)

балансировщик

липкие сессии

базы

уровни изоляции транзакций
транзакции в алхимии
serialisable
reeduncomitted грязное чтение
не согласованное состояние inconsisted state

relateddb
postgresql
mysql

nosql
redis mongodb

QA

пирамида тестирования
нагрузочное end to end
функциональные тест функционала изолировано, вне процессных сущностей
интеграционные корректность интеграции внешних модулей, баз, апи
модульное unit

базы данных -- вне процессные сущности

архитектура

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

много поточность, мульти процессность, асинхронность
не паралелизм: конкурентность.
многопроцессность -- если ядра позволяют


итераторы, генераторы

орм сонтракт
пайдентик
сериализация, валидация

паттерн
конечный автомат

ООП

инкапсуляция
наследование
полиморфизм

банда четырёх

нормальные формы
не нормальная, 1 2 3
нормальной форме Бойса-Кодда
4 5
доменно ключевая
6
в процессе нормализации базы данных
Вы должны руководствоваться здравым смыслом

абстракция
мониторинг
безопастность

оптимизация
чистый код

контекстный менеджер
with

import time

class Timer:
    def __enter__(self):
        self.start_time = time.time()
        return self

    def __exit__(self, exc_type, exc_val, exc_tb):
        elapsed_time = time.time() - self.start_time
        print(f"Elapsed time: {elapsed_time} seconds")

# Пример использования контекстного менеджера
with Timer() as timer:
    # Ваш блок кода
    time.sleep(2)

асинхронный контекстный менеджер

import asyncio

class AsyncTimer:
    def __enter__(self):
        self.start_time = asyncio.get_event_loop().time()
        return self

    def __aexit__(self, exc_type, exc_val, exc_tb):
        elapsed_time = asyncio.get_event_loop().time() - self.start_time
        print(f"Elapsed time: {elapsed_time} seconds")

# Пример использования асинхронного контекстного менеджера
async def example():
    async with AsyncTimer() as timer:
        # Ваш асинхронный блок кода
        await asyncio.sleep(2)

# Запуск асинхронной функции
asyncio.run(example())

Перед собесом, ответь себе на следующие вопросы:
Зачем ты пришёл на собес в эту компанию?
Правда хочешь у них работать? Почему?
Как скоро ты хочешь уйти от них?
А почему ты ушёл с прошлого места работы?

После каждого вопроса, нужно знать:
Зачем задали этот вопрос, какой ответ ожидают?
Если задали, значит нужен.

SOLID

definition:

.

Стек для изучения

---.

--- ?

----+
Требования:

Будет плюсом:

Технологический стек:

Требования:

Будет преимуществом:

Ctrl + S : Update