It's not possible to prevent Linguists from changing the job status to Completed.
There is an option in project settings that allows PMs to forbid the Linguists from changing the job status to Completed.
Some clients use their own external apps to interact with Memsource via API. For the workflow to go through properly and without errors, the job status updates have to be done solely via API/custom application. If the Linguists still can set the job to Completed in UI, this provides a chance for the human error to occur even though the Linguists are instructed on the usage.