TDD (Test-Driven Development)
What does your current TDD look like?
Where TDD has shown a lot of value to me is when new developers join a project and begin refactoring the code, the tests really help to ensure that they are not breaking another part of an application. This results in an architecture that is modular, easy to understand as well as refactor and finally does not produce spaghetti code.
Some of the testings frameworks SYZYGY works with include Jest, Mocha, Chai, Istanbul, RSpec, xUnit.net and Moq
Quality Assurance
QA needs to be performed on the front-end, back-end and on all elements in some capacity before changes are rolled out into production. These changes are to be thoroughly tested on all core browsers and target view ports.
Scaling Your Data (Storage)
ORMs (Object Relational Mapping) / Key: These are libraries and references that allow developers to work with databases without having to worry about writing queries and creates an abstraction layer above the type of storage.
Security
Password Hashing/Salting: This is a very important security concern because you do not want people who have access to the databases to get the passwords so they must be hashes and salted when being stored.
JWT (JSON Web Token): This is standard that is used to allow secure communication between the client and the server. The server gives the client a JWT Token when signing in.
Cookies/Session Expiry: The JWT Token is often stored in the cookies with an expiry date, every subsequent request that is made to the server sends the cookie so that it can be verified that an authenticated user is making the request.
Some of the security related stuff SYZYGY works with include Acunetix, OAuth, Auth0, JWT, BCrypt
Common Performance Issue For Scaling
Insufficient bandwidth reserves
server to client as well as application to data pool AND bandwidth reserves for node media stream maintenance in some environments