Приглашая на стажировку или принимая инженера с небольшим опытом работы, мы ожидаем, что будем сотрудничать с человеком более года, и чем дольше, тем лучше. На старте готовы дать 1-2 месяца для повышения своего уровня, работая над учебными проектами под руководством наставника, чья роль:
  • Постановка задач, консультации о способах их решения, проверка результата, выдача рекомендаций для корректировки
  • Формирование индивидуального плана развития кандидата и отслеживание его успешного выполнения
  • Принятие решения о продолжении сотрудничества после 1-2 месяцев работы

Мы гибко подходим к вопросу организации сотрудничества. Но нам важно, чтобы Вы учились в вузе или уже успешно его окончили по профильному направлению: программирование, системотехника, бизнес-информатика и т.п..
Для вуза стажировка может быть оформлена в виде практики/курсового/ВКР.

Обычный сценарий развития событий такой:
  • 1-3 недели тестовый период, затем
  • 1-2 месяца стажировка с выплатой ЗП и далее,
  • трудоустройство на постоянную работу.
Возможны другие варианты, с каждым кандидатом мы договариваемся индивидуально.

Как начать:
  • Выберете интересующее Вас направление стажировки из нашего списка
  • Проверьте свои знания по приведенному чек-листу для выбранного направления, и если считаете что они ему соответствуют, то:
  • Присылайте описание Ваших знаний и навыков по этому списку, приложите к письму резюме (ФИО, вуз и специальность на которой обучаетесь или когда закончили, опыт работы, примеры исходного кода, написанного Вами, и все что посчитаете важным), и если все окажется на высоте, то:
  • Мы проведем собеседование, выделим наставника, приступим к выполнению задачи. Если задача будет учебной, то все сделанное Вами в процессе ее выполнения, Вы сможете использовать по своему усмотрению т.к. учебный код будет свободен от коммерческой тайны. Если же задача будет реальной, то будете получать за нее зарплату по трудовому договору.

WEB development (PHP, MySQL)


Desktop application development (C++/Qt)

  • Структура файлов в C++ (заголовочные файлы, директивы препроцессора #ifdef/#ifndef/#pragma, единица трансляции)
  • Примитивные и составные типы (структуры, массивы, и т.п.), перечисления (enum и enum class)
  • Ветвления (if/switch), циклы (for/do/while)
  • Низкоуровневая работа с динамической памятью (операторы new/delete/delete[])
  • Указатели и ссылки (отличия/инициализация/передача как параметр функции/получение возвращаемого значения из функции/константность)
  • Умные указатели (std::unique_ptr/std::shared_ptr), RAII
  • Базовое знание STL контейнеров (std::vector, std::list, std::map), уметь применять нужный в зависимости от задачи
  • Базовое знание потокового ввода/вывода (iostream), работа со строками (std::string)
  • Namespace - понимание как этого ключевого слова, так и понятия пространства имен в программировании в целом
  • Классы, конструктор, деструктор, оператор присваивания, наследование, виртуальные методы, виртуальный деструктор, модификаторы доступа public/private/protected, абстрактный класс
  • Исключения и принципы их обработки
  • Qt Signals & Slots - https://doc.qt.io/qt-5/signalsandslots.html
  • Qt Widgets - https://doc.qt.io/qt-5/qtwidgets-index.html

    Материалы для обучения и самопроверки:

  • Основы в серии роликов (на английском с субтитрами)
  • Выучить язык: Части I-III книги "Язык программирования C++. Базовый курс.", Стенли Б. Липпман, Жози Лажойе, Барбара Э. Му
  • Освежить знания/уточнить ответы на вопросы: CPP FAQ https://isocpp.org/faq
  • Официальная документация по Qt https://resources.qt.io или книга "Qt 5.10. Профессиональное программирование на C++ ", Шлее Макс
  • Книга "Эффективное использование С++. 55 верных способов улучшить структуру и код ваших программ", Мейерс Скотт, или более свежие книги этого автора
  • Для дальнейшего развития: "Совершенный код", Макконнелл Стив; "Паттерны объектно-ориентированного проектирования", Гамма Эрих, Хелм Ричард; "Чистая архитектура. Искусство разработки программного обеспечения", Мартин Роберт

Cross-platform network/services programming (C++/Golang, Win/Linux)

  • Знание C++14 и выше, STL, Boost (основные контейнеры, умные указатели), Sockets, Protobuf
  • Хорошее понимание ООП
  • Навыки работы с системой контроля версий Git, интегрированной средой gitlab/github
  • Опыт разработки под OC Linux
  • Знания основ IP-сетей, навыки работы с сетевыми протоколами низкого уровня (TCP/UDP и прочее)
  • Опыт работы с SQL СУБД

Android application development

  • Хорошие знания Kotlin, Java
  • Хорошее понимание ООП
  • Опыт работы с Android SDK
  • Желательно наличие знаний и навыков работы с Material Design Components
  • Желательно наличие знаний и навыков работы с HTTP запросами

iOS application development

  • хорошее знание SWIFT
  • навыки работы с iOS SDK
  • хорошее понимание ООП
  • понимание ARC, желательно GCD
  • навыки работы с CocoaPods
  • желательно знание и понимание принципов SOLID