Kotlin QA Engineer | OTUS

Курсы

Программирование
Выбор профессии в IT
-99%
Python Developer. Basic Специализация Python Developer Python Developer. Professional Golang Developer. Professional Базы данных iOS Developer. Basic Computer Science Android Developer. Professional Team Lead Android Developer. Basic Специализация Android-разработчик Vue.js разработчик Groovy Developer JavaScript Developer. Basic Специализация Java-разработчик C++ Developer. Basic Специализация Fullstack developer Unity Game Developer. Basic PHP Developer. Professional Agile Project Manager PostgreSQL для администраторов баз данных и разработчиков MS SQL Server Developer Unreal Engine Game Developer. Professional Web-разработчик на Python Cloud Solution Architecture Flutter Mobile Developer PHP Developer. Basic Специализация PHP Developer Rust Developer Буткемп Java Unity VR/AR Developer
Специализации Курсы в разработке Подготовительные курсы Подписка
+7 499 938-92-02
Kotlin QA Engineer

Автоматизация тестирования на Kotlin

Знания и опыт разработки тестов для всех платформ, где используется Kotlin

Длительность обучения:

4 месяца

4 ак. часа в нед.

Начало занятий:

16 апреля 2023 года

Что даст вам этот курс
Знания и практический опыт разработки тестов и рефакторинга кроссплатформенных приложений на языке Kotlin для мобильных, веб-платформ, систем Enterprise-уровня и решений для встраиваемых систем.

Мы рассмотрим на примерах реальных проектов основные идеи и сложные практические вопросы при проектировании и разработке автоматических тестов пользовательского интерфейса, бизнес-логики и API, оценки производительности, проверки стиля кода и наличия уязвимостей.

Объединяющей идеей курса является всесторонняя автоматизация и использование тестов в системах непрерывной интеграции.


На кого ориентирован курс?

Курс рассчитан на разработчиков на любом ООП-языке программирования с опытом работы от 1 года, желающих улучшить свои навыки в автоматизации тестирования и создании CI/CD, либо тестировщиков с опытом работы от 1 года, которые хотели бы научиться создавать автоматические тесты для всех уровней приложения (включая интеграционные тесты).

Какие навыки получат студенты на курсе?

Использование актуальных возможностей Kotlin для создания максимально полного покрытия тестами сложных многокомпонентных приложений (в том числе с графическим интерфейсом).
 
Создание тестовых данных и использование инъекции зависимостей для подмены объектов при выполнении тестирования.
 
Уверенное понимание и применение механизмов синхронизации при тестировании асинхронных компонентов и распределенных систем.
 
Выполнение нагрузочного тестирования, автоматических тестов на наличие уязвимостей, проверки соответствия стиля кода принятым правилам.
 
Владение основными системами сборки приложений и встраивания автоматизированного тестирования в конвейер сборки в наиболее востребованных системах непрерывной интеграции.


Ключевые особенности курса:

  • Тестирование интерфейсов на Jetpack Compose с инъекцией зависимостей через Hilt;
  • Полное встраивание тестов в конвейер непрерывной интеграции;
  • Автоматическая проверка домашних заданий на статическом анализаторе.

Преподаватели

Дмитрий Золотов
Flutter Developer, Yandex
Дмитрий Терехов
Бэкенд-разработчик на Kotlin
Дмитрий Синицын
Максим Рогожников
Ведущий инженер по производительности, Тинькофф
Дмитрий Свиридов
Анна Добросердова
СберЕаптека
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководил отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Программировать начал с 2014 года под встраиваемые системы на языках С/С++. Писал ПО для оборонки, программировал микроконтроллеры. Осознав, что делает в своей жизни что-то не то, начал искать себя - писал под мобилки (iOS, Android), изучил фронтенд, а после стал искать работу на JVM-стеке. Устроившись Java-разработчиком, понял, что нашёл свое предназначение. Мир бэкенда открыл для него достаточно много интересных направлений и технологий.

Любит автоматизацию, консоль, девопс, писать код и помогать людям. В свободное время пишет скрипты на Python для автоматизации своей работы.

4 года в тестировании и автоматизации.
Начинал с разработки на Java, перешел на Kotlin в 2019 году.
Разрабатывает автотесты и фреймворки для автотестов для Api и Ui тестов. Также пишет вспомогательные приложения для нужд тестирования.
Работал в таких компаниях, как Тинькофф Банк, Сбербанк, Киви Банк.

Team lead команды нагрузочного тестирования. В тестировании производительности более 5 лет, в IT более 10 лет. Спикер конференций QA и LT.
Занимался организацией и проведением тестированием производительности в топ банках РФ, телкоме, ритейле, госуслугах и зарубежных проектах.
Работал с инструментами: Apache JMeter, Яндекс.Танк, Gatling, HP (Microfocus) Loadrunner, Performance center, k6; анализа производительности БД Oracle, PosgresSQL, MongoDB; инструменты CI/CD, управления/настройки мониторинга и тестовых стендов.

В 2016 году окончил магистратуру ИТМО по специальности "Физика низких температур". Работы для инженера-криогенщика было не густо, в связи с чем решил вспомнить школьное увлечение программированием и связать профессиональную деятельность с IT. Изначально нравились мобильные приложения, поэтому в начале 2018 года пришел сначала в ручное тестирование нативных и кросплатформенных приложений, затем разобрался с их автоматизацией. Постоянно изучая новые области, перешел в разработку автотестов для серверных приложений, чем преимущественно и занимается последние 1,5 года. За все время приходилось пощупать множество технологий: Kotlin, Swift, PHP, JS, Python.

Больше 5-ти лет в тестировании. Опыт развития от ручного тестировщика до автоматизатора.

Были проекты, на которых автоматизацию вводила с нуля - были и те, где поддерживала тесты.

Дмитрий
Золотов
Дмитрий
Терехов
Дмитрий
Синицын
Максим
Рогожников
Дмитрий
Свиридов
Анна
Добросердова

Преподаватели

Дмитрий Золотов
Flutter Developer, Yandex
DevOps, FullStack разработчик (Flutter/Python/Kotlin/GoLang/C++), системный администратор, приглашенный преподаватель в ИТМО, исследователь технологий электронного обучения.
Опыт работы - 23 года.


Руководил межфакультетской лабораторией перспективных информационных технологий в РГПУ им. А. И. Герцена, участвовал в создании и масштабировании ресурсов для электронного обучения (в т.ч. проект "Российская электронная школа"), проектировал и разрабатывал высоконагруженные веб-приложения и системы автоматизации. Контрибьютор в проект ReOpenLdap. Разрабатывал архитектуру отказоустойчивых конфигураций гибридного облака на основе Consul и Kubernetes, сервисных сетей, интеграционных платформ с использованием AMQP. Также являюсь преподавателем по компьютерным сетям, DevOps, операционным системам, мультимедиа-технологиям. Руководил отделом автоматизации процессов в финансовой организации, в которой был консультантом и DevOps по миграции систем с использованием облачных технологий, а также разработчиком для Android/iOS.

Закончил Российский Государственный Педагогический Университет, 2002, учитель физики. Автор серии вебинаров по Kubernetes и кроссплатформенной разработке: https://www.youtube.com/channel/UCs_AMB-HbhHzMhE0VdBZByg

Дмитрий Терехов
Бэкенд-разработчик на Kotlin
Программировать начал с 2014 года под встраиваемые системы на языках С/С++. Писал ПО для оборонки, программировал микроконтроллеры. Осознав, что делает в своей жизни что-то не то, начал искать себя - писал под мобилки (iOS, Android), изучил фронтенд, а после стал искать работу на JVM-стеке. Устроившись Java-разработчиком, понял, что нашёл свое предназначение. Мир бэкенда открыл для него достаточно много интересных направлений и технологий.

Любит автоматизацию, консоль, девопс, писать код и помогать людям. В свободное время пишет скрипты на Python для автоматизации своей работы.

Дмитрий Синицын
4 года в тестировании и автоматизации.
Начинал с разработки на Java, перешел на Kotlin в 2019 году.
Разрабатывает автотесты и фреймворки для автотестов для Api и Ui тестов. Также пишет вспомогательные приложения для нужд тестирования.
Работал в таких компаниях, как Тинькофф Банк, Сбербанк, Киви Банк.

Максим Рогожников
Ведущий инженер по производительности, Тинькофф
Team lead команды нагрузочного тестирования. В тестировании производительности более 5 лет, в IT более 10 лет. Спикер конференций QA и LT.
Занимался организацией и проведением тестированием производительности в топ банках РФ, телкоме, ритейле, госуслугах и зарубежных проектах.
Работал с инструментами: Apache JMeter, Яндекс.Танк, Gatling, HP (Microfocus) Loadrunner, Performance center, k6; анализа производительности БД Oracle, PosgresSQL, MongoDB; инструменты CI/CD, управления/настройки мониторинга и тестовых стендов.

Дмитрий Свиридов
В 2016 году окончил магистратуру ИТМО по специальности "Физика низких температур". Работы для инженера-криогенщика было не густо, в связи с чем решил вспомнить школьное увлечение программированием и связать профессиональную деятельность с IT. Изначально нравились мобильные приложения, поэтому в начале 2018 года пришел сначала в ручное тестирование нативных и кросплатформенных приложений, затем разобрался с их автоматизацией. Постоянно изучая новые области, перешел в разработку автотестов для серверных приложений, чем преимущественно и занимается последние 1,5 года. За все время приходилось пощупать множество технологий: Kotlin, Swift, PHP, JS, Python.

Анна Добросердова
СберЕаптека
Больше 5-ти лет в тестировании. Опыт развития от ручного тестировщика до автоматизатора.

Были проекты, на которых автоматизацию вводила с нуля - были и те, где поддерживала тесты.

Отзывы

Андрей
Прежде всего, огромное спасибо всем преподавателям и организаторам данного Курса. Затронуты именно злободневные темы. В результате очень расширил свой кругозор. Да, были некоторые методические недочеты. Но они не помешали учиться. Спасибо, спасибо, спасибо!!!
Читать целиком
Андрей
Прежде всего, огромное спасибо всем преподавателям и организаторам данного Курса. Затронуты именно злободневные темы. В результате очень расширил свой кругозор. Да, были некоторые методические недочеты. Но они не помешали учиться. Спасибо, спасибо, спасибо!!!
Читать целиком

Необходимые знания

- знать любой ООП-язык программирования
- понимать виды тестирования и методы подготовки тестовых значений
- знать основы архитектуры распределенных сетевых приложений и REST API
- распределенные системы контроля версий (git)
- основы реляционных баз данных и языка SQL
Корпоративное обучение для ваших сотрудников
>
Программа обучения
В процессе обучения вы получите комплексные знания и навыки.
Тема 1. Kotlin в сравнении с Java и другими ООП-языками
Тема 2. Коллекции, generic-типы и лямбда-выражения
Тема 3. Функции-расширения, делегаты, DSL
Тема 4. Настройка тестирования в сборке Gradle
Тема 5. Взаимодействие с СУБД для заполнения тестовых данных
Тема 6. Подготовка (генерация) и хранение тестовых данных
Тема 7. Выбор тестовых данных
Тема 8. Модульные тесты
Тема 9. BDD-тестирование
Тема 10. Статический анализ кода и уязвимостей
Тема 11. Тестирование производительности и профилирование
Тема 12. Тестирование приложение на Spring Framework
Тема 13. Практика
C 19 декабря
Тема 14. Инъекция зависимостей и создание моков
Тема 15. Корутины и тестирование асинхронного кода на примере SQL-запросов к базе данных
Тема 16. Тестирование Flow и изменяемых состояний
Тема 17. Тестирование асинхронных распределенных систем (очереди сообщений)
C 9 января
Тема 18. Основы Android-приложений, обнаружение элементов на Espresso
Тема 19. Тестовые фреймворки Kakao, Kaspresso, расширение Hamcrest
Тема 20. Тестирование приложений на Jetpack Compose
Тема 21. Тестирование сетевого слоя
Тема 22. Тестирование Accessibility
Тема 23. Практика по тестированию реального приложения
C 30 января
Тема 24. Kotlin for Backend, автоматизация тестирования API (RestAssured, Postman)
Тема 25. KotlinJS разработка для web
Тема 26. Разработка нативного кода в KotlinNative
Тема 27. Нагрузочное тестирование (Gatling)
Тема 28. Практика
C 16 февраля
Тема 29. Настройка Jenkins для запуска тестов
Тема 30. Использование Docker для создания тестовых данных
Тема 31. Интеграция тестов в Gitlab, Github, Bitbucket
Тема 32. Практика
C 6 марта
Тема 33. Консультация по проектам и домашним заданиям
Тема 34. Защита проектных работ
Скачать подробную программу
Выпускной проект
Вам будут предложено несколько тем проектов, но вы можете выбрать любую распределенную систему с мобильным приложений (включая свой пет-проект или любой доступный open source-проект). Домашние работы направлены на выработку навыков создания тестов, для них будет использоваться два предварительно разработанных приложения.

Дополнительно на курсе вы:
1. Сможете под руководством опытных преподавателей разработать и разместить в своём портфолио полноценный набор тестов для реальных приложений
2. Узнаете, как можно реализовать в тестах сложные сценарии, которые обычно называют как ""это невозможно автоматизировать""
3. Увеличите свой потенциал разработчика, архитектора и DevOps

Процесс обучения

Обучение проходит онлайн: вебинары, общение с преподавателями и вашей группой в слаке курса, домашние задания и получение обратной связи. Вебинары идут два раза в неделю 1,5 часа, сохраняются в записи в личном кабинете. Домашнее задание занимает 3-5 часов. В обучении будут анализировать реальные кейсы неочевидных ошибок реализации и обсуждаться возможные подходы к их тестированию и выявлению. Возникающие вопросы по материалам лекций, домашним заданиям и по выпускному проекту вы сможете задавать преподавателю в слаке или во время вебинаров. Выполнение проектной работы помогает усвоению практических навыков.
Получить консультацию
Наш специалист свяжется с вами в ближайшее время. Если у вас возникли трудности в выборе курса или проблемы технического плана, то мы с радостью поможем вам.
Спасибо!
Мы получили Вашу заявку, в ближайшее время с Вами свяжется наш менеджер.

После обучения вы

1. Повысите свой профессиональный уровень в области автоматизированного тестирования, расширите свои рабочие компетенции и увеличить востребованность на рынке труда
2. Научитесь создавать автоматические тесты для всех компонентов сложных приложений в рабочих или личных проектах
3. Сможете использовать и приносить в рабочую команду философию и подходы DevOps к созданию надежных приложений

На какие вакансии можно претендовать:
Разработчик приложений на Kotlin, инженер DevOps, архитектор распределенных систем

Где, в каких проектах требуются такие специалисты?
SaaS-проекты с мобильными клиентами, Enterprise-системы на Kotlin, встраиваемые решения
Дата выдачи сертификата: 13 сентября 2023 года
Ваш сертификат

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Kotlin QA Engineer»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.

онлайн-образование

Сертификат №0001

Константин Константинопольский

Успешно закончил курс «Kotlin QA Engineer»
Выполнено практических заданий: 16 из 16

Общество с ограниченной ответственностью “Отус Онлайн-Образование”

Город:
Москва

Директор департамента образования
ООО “Отус Онлайн-Образование”
Анна Фирсова

Лицензия на осуществление образовательной деятельности
№ 039825 от 28 декабря 2018 года.
Прошедшие открытые вебинары
Открытый вебинар — это настоящее занятие в режиме он-лайн с преподавателем курса, которое позволяет посмотреть, как проходит процесс обучения. В ходе занятия слушатели имеют возможность задать вопросы и получить знания по реальным практическим кейсам.
Рефлексия Kotlin для автоматизации тестирования
Дмитрий Синицын
День открытых дверей
5 октября 2021 года в 20:00
Оставьте заявку, чтобы получить доступ к записям прошедших мероприятий. Записи всех мероприятий появятся в этом блоке