Опишите ваш опыт работы над проектами (домены и ключевые технологии).

Ответ

Имею коммерческий опыт разработки под iOS в различных доменах:

1. FinTech (Мобильный банк):

  • Безопасность: Интеграция биометрической аутентификации (Face ID/Touch ID) и Keychain Services.
  • Платежи: Реализация Apple Pay, работа с платежными шлюзами.
  • Архитектура: Применение VIPER/Clean Swift для модульности и тестируемости.

2. E-Commerce (Маркетплейс):

  • Производительность: Lazy loading изображений, пагинация списков товаров, оптимизация использования памяти.
  • Оффлайн-режим: Кэширование данных и корзины с использованием Core Data.
  • Анимации: Кастомные переходы между экранами и интерактивные жесты.

3. Медиа (Стриминговый сервис):

  • Воспроизведение: Работа с AVPlayer, управление аудиосессиями, фоновое воспроизведение.
  • Синхронизация: Offline-доступ к контенту, управление загрузками.

Общие практики: Работа в командах по Agile/Scrum, проведение code review, написание модульных (Unit) и UI-тестов (XCTest).

Ответ 18+ 🔞

Да ты посмотри, какой у меня послужной список нарисовался, просто блядь коллекция! Сижу, смотрю, и самому смешно — в каких только конторах не пришлось мозги разгружать.

1. FinTech (Мобильный банк): Тут, блядь, главное — чтобы ни одна сука чужой дядя в твой кошелёк не залез. Пришлось безопасность выстраивать так, что сам чёрт ногу сломит. Интеграция этой биометрии — Face ID, Touch ID. Пользователь тыкает пальцем, а у меня там под капотом уже Keychain Services всё шифрует, как сумасшедший. Платежи — это отдельный цирк с Apple Pay. Сделал так, чтобы деньги улетали быстрее, чем клиент успевает понять, что он только что купил пятую ненужную хуйню. А архитектура... О, ёпта! Чтобы через полгода не пришлось всё переписывать, заюзал VIPER. Модульно, тестируемо, и когда новый разработчик приходит, он не охуевает с первого дня, а только со второго.

2. E-Commerce (Маркетплейс): Тут, блядь, производительность — святое. Каталог товаров, который длиннее, чем список грехов у среднего человека. Картинки грузятся лениво (lazy loading), списки листаются с пагинацией, память подчищаю, чтобы приложение не сдохло, как муха на стекле, после просмотра сотни диванов. Сделал оффлайн-режим — пользователь может сложить корзину в метро, а оплатить дома. Всё летит в Core Data, будто в бункер. Ну и анимации подкрутил, чтобы глазу было приятно — переходы между экранами, жесты всякие. Не просто тык-тык, а с изяществом, блядь.

3. Медиа (Стриминговый сервис): А вот это, сука, было интересно. Воспроизведение музыки/видео через AVPlayer. Сделал так, чтобы можно было свернуть приложение, а трек дальше идёт. Чтобы звонок входящий не прерывал, а приглушал. Синхронизация — скачай подкаст в самолёт и слушай, пока не надоест. Управление этими загрузками — отдельная песня, чтобы пользователь не запутался, что у него уже есть на телефоне.

А вообще, что там общее? Работал в командах, где все бегают по этим Agile/Scrum, как угорелые, на ежедневных планерках отчитываешься, что вчера сделал. Code review провожу так, что у некоторых коллег волосы дыбом встают — я ж, блядь, за качество. И да, тесты писал. И модульные (Unit), и UI-тесты через XCTest. Чтобы когда что-то ломалось, это было видно сразу, а не когда пользователи уже начали писать в поддержку, что у них всё ебнулось. В общем, опыт, как говорится, разноплановый, ёпта.