I firmly believe that successful teams have a robust, detailed set of best-practices from the very beginning. Making things up as we go is not enough. Figuring out the answers to problems as they happen is wasteful and reactive. A solid baseline, on the other hand, provides confidence and productivity to the team.
You only want to worry about problems that are truly unique to you and your product. I think one way to do that is to pick up an off the shelf reference and adapt it to your situation.
The recommendations are all based on real-life experience: these are the ones that worked well in multiple projects, with diverse teams and products. The ideas themselves are not new; what I've tried to do is to present them pragmatically, in the context of modern enterprise web app development.
- Code formatting
- Folder structure
- Testing: E2E, integration, unit tests
- Using Git
Hopefully, the synergy of the ideas leads you into the "Pit of Success": to be able to consistently deliver high-quality products, be productive and less frustrated in your day to day job.
You can read the GitBook at https://thekarel.gitbook.io/best-practices/
I have been working on this collection for some time and keep it up-to-date with the latest ideas, insights and remarks from the developer community. Please reach out if you have any comments: I'd appreciate your feedback. PRs are welcome on GitHub!