Even with websites like Wix, Squarespace or WordPress that have tools that allow you to build your own website, it's still not easy to build a website that looks professional. With so many things to consider such as how to organize navigation, what images tell the best story, how to affectively use white space, making sure spacing is consistently proportional and testing the website layout on multiple devices, it's easy to get it wrong.
There are a few things professional website designers know before they write their first line of code such as the smallest width of the devices that will view the website (it's 320 pixels) and the most common width of the devices that will view the website (it's 375 pixels). Some designers will even design for the smallest width first and work their way up. I still design for a wide-screen monitor first and then work my way down just because that feels familiar, but I'm still very careful to include everything on the smaller screens.
One of the biggest mistakes that I see amateurs make is they use too many animations. The best practice is simple, you should use animations very seldom and then only for a good reason. Don't get me wrong, I've seen animations used very affectively. Apple uses just a hint of animation on their secondary pages to bring attention to their secondary navigation and it looks great.
Besides the 20+ years of experience designing websites, I use an arsenal of tools such as Illustrator, Photoshop, Atom, Meteor, iTerm2, Premiere, Chrome DevTools, Google Analytics, Google Search Console, Google My Business and Dreamweaver along with modern technologies and frameworks like Sass, Bourbon, Git, GitHub, React, Bootstrap, Foundation, BEM, CSS3 and HTML5. The most important tool that I use is attention to detail.