I want to be able to configure placement constraints based on different node types (i.e. FrontEnd, BackEnd). Can I do this per-environment, so that in my test/local cluster
Yes, you can! The official docs describe a way to do this via code, but you can also do so with the service manifest files directly to get default & per-environment configuration. There is a blog post you can follow (found it in this answer).