Программист Qt/C++/C

Дата размещения вакансии: 14.11.2024
Работодатель: НПО Стрела
Уровень зарплаты:
от 150000 до 220000 RUR
Город:
Санкт-Петербург
Нарвский проспект 22
Требуемый опыт работы:
От 3 до 6 лет

Обязанности:

  • Разработка пользовательских интерфейсов (UI):
    • Разработка и поддержка графических приложений на базе библиотеки Qt.
    • Использование Qt Widgets или Qt Quick (QML) для создания интерфейсов.
    • Настройка и использование событийной системы Qt (сигналы и слоты) для взаимодействия между компонентами.
  • Проектирование и реализация программной логики:
    • Разработка основного функционала приложения на C++ с использованием возможностей Qt.
  • Работа с различными модулями Qt:
    • Использование модулей Qt для работы с сетью (Qt Network), базами данных (Qt SQL), мультимедиа (Qt Multimedia) и др.
    • Интеграция с другими библиотеками и API через Qt.
  • Тестирование и отладка:
    • Написание юнит-тестов (использование фреймворков для тестирования в Qt, например, QTest).
    • Поиск и исправление багов, профилирование кода для повышения производительности.
  • Работа с версиями системы:
    • Использование систем контроля версий (Git, SVN, Mercurial HG) для ведения истории изменений и управления проектами.
  • Интеграция сторонних библиотек:
    • Работа с API, сторонними SDK и фреймворками для расширения функциональности приложения.
  • Поддержка и развитие существующих проектов:
    • Рефакторинг кода для улучшения его структуры и производительности.
    • Поддержка существующего кода .

Требования:

  • Знание C++( на уровне junior, middle ):
    • Опыт работы со стандартом C++ ( C++11, C++14 ).
    • Знание принципов объектно-ориентированного программирования (ООП).
    • Опыт работы с STL (Standard Template Library), стандартными контейнерами и алгоритмами.
    • Опыт работы с СУБД PostgreSQL.
  • Опыт работы с Qt:
    • Опыт работы с Qt Framework: разработка GUI (Qt Widgets или Qt Quick).
    • Знание основных компонентов Qt: сигналы и слоты, модели и представления (Model/View), система событий.
    • Знание и использование Qt модуля для работы с файлами, сетевыми соединениям, базами данных и другими.
  • Знание сборочных систем:
    • Умение работать с CMake, qmake или другими системами сборки.
  • Понимание работы операционных систем:
    • Опыт работы с операционными системами Linux ( AstraLinux ) .
  • Знание систем контроля версий:
    • Опыт работы с Git, SVN или другими системами версионного контроля.

Дополнительные навыки ( будет преимуществом ):

  • Опыт работы с сетевыми технологиями (TCP/IP, UDP, WebSocket).
  • Навыки работы с различными базами данных ( PostgreSQL ).
  • Опыт работы с CI/CD (например, Jenkins, GitFlic CI).
  • Опыт написания юнит-тестов, автотестов и использования TDD (Test-Driven Development).
  • Опыт работы с многопоточностью .
  • Знание основных проблем многопоточности: гонки данных, deadlock, синхронизация.
  • Git, SVN умение работать в распределенных командах, выполнять слияние и разрешение конфликтов.

Условия:

  • Работаем по ТК РФ, график 5/2, потребуется оформление допуска к ГТ.