- Занимаюсь развитием бесконтактной оплаты на транспорте
- более 5 лет
- по мере прохождения курса стал активно продвигать это
- мониторинг был, но курс позволил улучшить его
- в старых проектах очень много работы по оптимизации, как минимум обновить версию руби
- руководитель группы разработки, проектом занимаюсь 2 года, оптимизация и развитие проектов
Моя работа заключается в разработке бэкенда. Информация явялется конфиденциальной, поэтому не могу многого рассказать, но проекты очень полезные, высоконагруженные и интересные.
На старте работы я понял, что невозможно вести такие проекты без мониторинга и профилировщиков, поэтому начал активно изучать performance и использовать в работе.
Я знал, что мне достанется задача по оптимизации очень старого сервиса и примерно за пару дней до старта, увидел ваш курс. Все сложилось идеально, он мне очень помог.
Первая половина курса была более полезна: работа с профилировщиками, памятью и низкоуровневыми моментами языка.
Rack-mini-profiler, NewRelic и PgHero стали неотъемлемой частью моей работы. Благодаря PgHero ушли долгие запросы к бд, а RMP и NewRelic помогли оптимизировать внутреннюю работу сервисов.
Оптимизация индексов и запросов дали прирост скорости x10. Оптимизация работы с памятью и обновление руби с 2.4 на 2.7.3 улучшили работу сервиса.
При работе над высоконагруденным проектом столккнулся с проблемой, что стейдж/дев работал очень быстро, но на проде запросы могли выполняться час. После прохождения курса я смог оптимизировать большую часть узких мест. Построение анализа асимтотики, устранение утечек/разбухания памяти, оптимизация бэкенда и использование бест практикс поспособствовали значительному улучшению работы приложения.