1. The Application Context
Yes, the language remains the same and the syntax as well, but once you know the common patterns and key concepts, you must be able to master the context and the frameworks you need to realize your product.
Desktop apps: using Electron
Hybrid mobile apps: using Ionic or others like OnsenUI
Web apps (front end): using jQuery, Vue, Angular, React, and more
Network services and daemons, Web apps (back end), Microservices, and almost anything: using NodeJS
Games: using Unity
Embedded apps: using dedicated tools
2. ECMAScript Versions and Frameworks
3. Use the Best IDE, Always
Anyway, my best advice is always to trust and enjoy the IDE that’s good for you and that you’re comfortable with, so feel free to choose any with a decent debugger, lint and syntax helpers, Git and versioning support, and visual tools. Remember, the IDE you choose to code with is your best friend, and the amount of time it could save countless time for you.
4. Organize Your Code and Handle Errors; You’re Not DOM-Scripting!
In addition to organizing code and correctly using design patterns, don’t forget to handle errors. I’ve experienced a lot of web pages where errors are just thrown and never handled, in most cases causing your jQuery logic to freeze and stop working. In a real and complex application, this kind of problem is way more serious. In a mobile app, it would make the app completely stop working unless your framework automatically provides a fallback. In a desktop application or a NodeJS application, it would have the same behavior, and you can’t allow your app or daemon to stop working for an unhandled error.