If you make it an external file, then they have to download it once, which is slightly slower than including it in the page, because of the extra HTTP request. However, after that, it will be cached and they don't need to download it again.
In terms of the impact on SEO, that's the benefit - your site is quicker, which Google rewards greatly.
For code management, you are still best to develop with the code in an external file and then use a deployment script to grab the code and insert it for the production version of your code.
Finally, shared libraries like jQuery should always be external, because they will often already be cached in a visitor's browser from another site they visited.
There are two additional reasons for external JS files.