Пример багов:
- после добавления картинки к карточке задачи (attach image), ее превью не отображалось на экране задачи, хотя во фронтенде была видна. Это было связано с ошибкой синхронизации и поддержкой оффлайн мода. Логика приложения не перезагружала UI даже после завершения загрузки картинки. Пришлось добавить пару коллбеков, сделать collectionView.reloadData(), все заработало
- кнопка "retry upload", которая показывалась после ошибки загрузки, ничего не делала. Связано с хуевым реактивным кодом, который после ошибки завершал подписку и больше нажатия кнопки не слушал. Починил исправив код, сама логика повторной попытки загрузки уже была написана.
- выделение метки на чертеже спадает через секунду после нажатия. Связано с дублирующимися событиями, которые летят из js ядра, на котором написан фреймворк для просмотра чертежей. Пришлось погрузиться в javascript, записать логи, отослать их человеку, который отвечал за ядро, и попросить его починить. Задачу с меня сняли, решили или нет не знаю по сей день.
Новые фичи тоже надо делать, но очень редко. Продукт в целом устраивает пользователей, менять его уже особо не надо, так, изредка вносить изменения под видом улучшения и доработки. Фичи делать весело, потому что не надо ни с кем общаться, дизайн есть, требования есть, API с данными готово. Знай программируй! Дальше все так же, pull request, code review, тестирование, done.
Примеры фичей:
- Добавить на экран "Скачивания и Загрузки" информацию о текущем состоянии загрузки картинок/видео. Они типа могут грузиться в бэкграунд моде приложения, поэтому пользователю надо видеть, что у него приложение делает, загрузилось уже или нет. Делалось через Realm, заняло около 500 строк кода и 4 рабочих дня. Все оч просто, через completionHandler в URLSessionDataTask в Realm писался статус загрузки объектов. Экран "Скачивания и Загрузки" подсчитывал эти объекты и писал 3 загружено/5 загружается
- Миграция на новую версию API. Несколько запросов объединили в один, другие разбили, чуть поменяли формат данных в JSON. Скурпулезная рутина, где главное не поломать то, что уже работает. Делал около недели, основное время ушло на выяснения деталей нового API, потому что документации как обычно не было.
Я считал свой рабочий день законченным, когда проверял все задачи и убеждался, что везде я что-то написал/спросил и мне есть, что рассказать завтра. Работал только когда все детали были у меня, иначе забивал до завтра. Уходило от двух до пяти часов. Хорошая работа.
ПРЕДЛОЖКА ДЛЯ ВАШИХ ИСТОРИЙ: @one_IT_day_bot
Post #6
5.65K
- 🔥 93
- 👍 22
- 👌 3
- 🍌 3
- ❤ 2