Критерии для сотрудника
Хардскилы
Общие компетенции
- HTML/CSS/JS (react или Vue для фронта - достаточно обзорных знаний)
- PostgreSQL
- nginx / wsgi (Gunicorn) / gitlab / gitlab CI/CD / Docker
- 1+ года опыта работы
- Владение ЯП на должном уровне (написание web/ws-серверов, хорошее знание стандартной библиотеки, сильных и слабых сторон платформы)
- Умение быстро подстроиться под малоизвестный софт
- Понимание микросервисной архитектуры приложения
- Качественное ведение документации
- Своевременная актуализация документации
- Умение писать качественный и читаемый код
- Опыт работы с DevOps
Если node.js
- NodeJS
- NestJS
- orm(любая)
Если django
- JSON / WSS (django-channels)
- Django/Django REST Framework
- RabbitMQ/Redis
- Celery
- Общее знакомство с библиотекой Python (функционалка, ООП, не обязательно, но желательно - метапрогммирование)
Знания
-
Понятие алгоритмов и абстракции.
-
Системы счисления и хранение данных.
-
Принцип работы булевых операций на аппаратном уровне.
-
Триггеры и транзисторы: что это такое?
-
Работа и организация памяти: виды памяти.
-
Различия между жестким диском (HDD) и твердотельным накопителем (SSD).
-
Представление данных в двоичном коде.
-
Кодирование и отличия между звуком и текстом.
-
Хранение целых чисел и чисел с плавающей точкой в памяти.
-
Сжатие данных: разница между сжатием видео и аудио.
-
Обработка данных и взаимодействие с аппаратным обеспечением.
-
Основы компьютерной архитектуры: состав и взаимодействие с другими компонентами системы.
-
Принципы исполнения программ на аппаратном уровне.
-
Пайплайнинг или конвейерная обработка.
-
Многопроцессорная архитектура.
-
Машинный язык и его назначение.
-
Логические операции, побитовые сдвиги и арифметика.
-
Взаимодействие процессора, памяти, контроллеров и устройств.
-
Многопоточность, прерывания и шаги, выполняемые процессором во время прерывания.
-
Приоритетные процессы и их ускоренная работа.