Ключевая задача QA-инженеров — обеспечивать высокое качество продуктов Авито.
«При отборе мы также проверяем уровень хард-скиллов — без них работать не получится. Стажерам важно на базовом уровне разбираться в методах и подходах тестирования: использовать техники тест-дизайна, правильно оформлять баг-репорты и приоритезировать баги. Также нужно понимать один из языков программирования и уметь писать на нём тесты для UI или API. Для выполнения задач пригодится знание процессов разработки ПО, сетей, SQL, API-тестирования (Postman, REST, gRPC) и основ автоматизированного тестирования».
Frontend-разработчики делают видимую часть сервиса — интерфейс, таким образом помогая привлекать новых пользователей и удерживать постоянных.
«Помимо софт-скиллов важны и технические навыки. Стажёры должны уметь работать с React, знать основы DOM API, протоколы HTTP, Git и JavaScript. Также необходимо знание алгоритмов, чтобы писать код с большой производительностью и выбирать для решения задач лучшие схемы. Обязательно понимать микросервисную архитектуру и взаимодействие между компонентами Frontend и Backend».
Backend-разработчики отвечают за всё, что есть внутри сервисов и продуктов Авито: безопасное хранение данных, интеграцию с другими внутренними и внешними сервисами, скорость обработки большого количества запросов.
«Чтобы пройти отбор на стажировку и выполнять эти задачи, нужно писать на Golang или быть готовыми перейти на него с другого языка программирования. Также важно понимать нюансы асинхронной работы, паттерны и организацию кода в проекте. Стажёры должны знать PostgreSQL или быстро осваивать сложные запросы, оптимизацию под большую нагрузку, масштабирование и шардирование. Будет здорово, если вы изучаете чужой код, читаете статьи или смотрите видео о Backend-разработке».
iOS-разработчики занимаются мобильным приложением Авито для устройств Apple: развивают существующие сервисы и создают новые возможности для пользователей.
«На этапе отбора обязательно проверяются и хард-скиллы кандидатов. Стажёрам нужно писать читаемый код на Swift, понимать базовые концепции платформы iOS и принципы клиент-серверного взаимодействия. Также будут полезны базовые навыки проектирования и знания основных архитектурных подходов, которые применяются для построения мобильных приложений».
Android-разработчики занимаются приложением Авито для телефонов и планшетов на одноимённой системе. Они создают новые экраны, поддерживают уже существующие и предоставляют экраны для других команд — например, для выделения блоков и баннеров.
«В отборе мы смотрим и на хард-скиллы. У стажёров должно быть первичное представление об Android SDK и понимание принципов клиент-серверного взаимодействия. Для работы пригодится знание базовых конструкций: списков, структуры данных — это также входит в список требований на этапе отбора. Вам предстоит работать в команде, так что важно писать понятный для других код и осознавать, на что влияют его компоненты».