Долгое время я работал в IT: начинал с верстки, а теперь руковожу отделом разработки. Знание JavaScript дало мне уверенность: «Если я умею писать на JS, значит, я могу быть фулстекером». Однако при работе над проектом я осознал, что различия между фронтендом и бэкендом гораздо глубже, чем просто место выполнения кода.
Когда сроки сжались, я решился разработать бэкенд на Strapi, использовав гибкость, которую предлагает Node.js. Я создал систему, где маркетологи могли сами компилировать страницы. Однако в день релиза сайт загрузился медленно, и это обернулось катастрофой. Причина: моя архитектура задействовала сложные рекурсивные запросы в MongoDB, что значительно замедлило работу.
С устранением проблемы мне помогло кэширование с Redis: первый пользователь ждал долго, но вторые пользователи получали данные почти мгновенно. Этот опыт научил, что знание кода недостаточно: важно понимать, как проектировать легкие и быстрые архитектуры. Трансформация в фулстекера требует не только технических навыков, но и смены мышления с декоратора на инженера.