Смотря что Вы подразумеваете под "багами". Сегодня написать синтаксически-верный, структурированный и читаемый код большого труда не составит, здесь Вам поможет редактор кода + плагины, например Linter и Prettier.
Задача кода, если простыми словами, обеспечить корректное выполнение требуемых задач вашим (веб-)приложением, согласно описанию этих задач. И чем точнее описание - тем лучше, так как любое несоответствие результата выполнения кода с ожидаемым результатом, или при выявлении неописанного поведения программы на этапе тестирования и обозначат багом.
Другая сторона медали - это понимание того, как именно должны протекать те или иные процессы, сценарии работы программы. В случае с веб-приложениями (сайтами) обязательно нужно знать устройство браузера, например что такое window, localStorage или cookies и что из этого и в каком случае нужно использовать... и так далее.
Разработчики зачастую совершают ошибки в силу отсутствия каких-либо фундаментальных знаний, начитавшись статей таких же "профессионалов".