Привет! Мы - digital-агентство «Первая IT-компания». Делаем продукты, которые делают бизнес эффективнее: промо-сайты с розыгрышами и проверкой чеков, каталоги, лендинги, системы автоматизации, интеграции, парсеры и телеграм-боты. Проектов много, они разные, компания растет - ищем начинающего разработчика в команду. Почти каждый наш проект - это сайт целиком: бэкенд на Django, шаблоны, верстка, JS, деплой в докере. Поэтому нам важно, чтобы разработчик уверенно работал и с бэкендом, и с фронтендом.
fullstack-разработчик веб-сервисов
подготовься к отклику
ai-инструментыЧтобы адаптировать резюме под вакансию или составить сопроводительное письмо, загрузи резюме
описание
задачи
- Делать сайты и веб-сервисы на Python/Django целиком: от моделей до верстки.
- Интеграции: прием и проверка чеков, госсервисы, CRM, ЭДО, телеграм-боты.
- Поддерживать и дорабатывать существующие проекты - их у нас много.
- Разворачивать и обновлять все это на наших серверах: docker compose, nginx.
требования
- Позиция для junior: важнее не годы опыта, а понимание основ, аккуратность и умение довести задачу до результата, который работает на проде. Делали пет-проекты на Django и уверенно ориентируетесь в списке ниже - откликайтесь, даже если коммерческого опыта немного.
- Свободно читаете и пишете код. Понимаете, что происходит с данными: где изменяемый тип, а где нет, что вернет срез, почему вылетело исключение и на каком уровне его ловить.
- Умеете спроектировать модели под задачу, а не подогнать задачу под знакомый пример. Миграции, ORM со связями, разница между filter и get, понимание, почему запрос в цикле - плохо. Views, маршруты, формы, шаблоны.
- Понимаете, когда он нужен, а когда достаточно обычной формы. Умеете написать эндпоинт, выбрать метод и статус-код, принять и отдать JSON.
- Знать SOLID наизусть не требуем. Требуем понимать, зачем нужны классы и наследование, и уметь объяснить, почему код разложен именно так, а не одним файлом на восемьсот строк.
- Пишете простые запросы руками, понимаете таблицы, ключи и связи. Представляете, что случится со списком на сто тысяч строк без индекса.
- Поднимали проект в контейнере и понимаете, что при этом происходит: образ, контейнер, тома, docker compose.
- Работаете ветками и пул-реквестами, умеете разрулить конфликт и не боитесь истории коммитов.
- Зайти по ssh, посмотреть логи, перезапустить сервис, разобраться, почему на диске кончилось место.
- HTML/CSS: сверстать страницу по макету из Figma, сделать адаптив под мобильные.
- JavaScript без фреймворка: события, работа с DOM, fetch, валидация формы.
- Понимание, как фронт живет внутри Django: шаблоны, статика, формы.
- Поставить задачу модели так, чтобы получить рабочий результат, а не «почти рабочий».
- Прочитать то, что она выдала: увидеть выдуманный метод, лишние триста строк, запрос в цикле, миграцию, которая снесет данные.
- Отвечать за код, который принес. Если не можешь объяснить, почему тут именно так и что сломается на десяти тысячах записей - это не твой код, и в прод он не поедет.
- Не подойдет тот, кто вставляет ответ модели целиком, не запустив и не прочитав.
- Самостоятельность. Мы готовы помогать и быть наставниками, но простые вопросы быстрее нагуглить, чем написать в чат.
- Умение задавать вопросы. Чем точнее вопрос, тем быстрее решение. Худший сценарий - молча пропасть на три дня с задачей, которая не идет.
- Аккуратность на проде. У нас живые проекты с реальными пользователями и реальными деньгами.
- Инициативность. Не бойся предлагать, как сделать код лучше или задачу быстрее - мы открыты к обсуждениям.
- Будет плюсом: React + Vite (часть наших продуктов на этом), Bootstrap или Tailwind; Коммерческий опыт с Django REST Framework; Опыт интеграций со сторонними API: платежные системы, CRM, госсервисы. Читать чужую документацию - половина нашей работы; Опыт работы в чужом уже написанном коде; Знакомство с трекерами (Weeek / Jira / ClickUp) на уровне «умею вести задачи»
условия
- Формат: полностью удаленно, график 5/2.
- Команда работает по времени Владивостока (MSK+7). Часовой пояс должен быть не более 3 часов от Владивостока.
- Зарплата: 60 000 - 80 000 ₽ на руки, выплаты дважды в месяц без задержек. Итоговая сумма - по результатам собеседования. Через 3 месяца пересматриваем вилку по результатам работы.
- Оплачиваем подписку на Claude - работать с ИИ у нас норма, а не партизанщина.
- Карьерный рост по мере результата.
- Опыт и живые проекты в портфолио.
навыки
Если просят выйти из iCloud, прислать код из SMS, запустить или установить что-то, перевести деньги — не соглашайся: это мошенничество.