Hello and welcome to the forum 🙂
To your question: No, it´s not a good idea. While it is technically possible, entities (relations, attributes, forms, fields, collections, ...) are so strongly intertwined that any change from one user can invalidate changes from the other. That is why the system must reload/overwrite the current schema (ie. the app structure) when changes are recognized.
The only valid way to work in parallel is if the app is not 1 app, but separated into modules that build on each other. While it is still possible to break things, working in separate apps is much safer / more stable.
The best practice is to 'check-out' a version of an app, while a person works on it. Only if they are done with their work, they generate a new version and check it back in. Then someone else can check-out and continue working. But please never do this in the same r3 instance. Export the app version, import it into your local development instance, make your changes, and then import it into your test or production system when done. This way you have a history of working app versions and anyone can validate their changes against them.