Context: After developing a web app (search engine) for the past 6 weeks, we're ready to go live. I've tried to integrate as much forward-thinking and softeng principles as possible - even though we provide public data, I'm very keen on security and making sure everything's as maintainable as possible.
Still, I haven't ever formally studied any kind of software development course, so what I've picked up is just from experience. Is there anything experienced devs would advise getting into earlier rather than later?
- Version control
- Commenting your code clearly
- Ensuring that you're using the right data types for the right kind of data (still learning this...)
- CI/CD (I still have barely any idea what this is)
- Unit tests (no idea what this is as well)
- DevOps (all I know about this is that the smart people do it, and it's a process/culture not a job)
Alternatively, a guide to common mistakes when launching a web service would be good as well:
- Creating a giant monolith codebase that's insanely coupled
- Not commenting
- Using inconsistent variables
- Not allowing for errors
- Giving away unneccessary user data to public-facing JS functions
I'm keen to know whether it's worth the effort to learn C# for a web app too, or is sufficient Node.js experience OK?
Thanks a lot in advance...