I've done professional development with Unity and here's what I think: Unity is awesome if you're creating a prototype or if your project is small. I would not recommend it for a team of more than 3-4 people.
Pros
It allows you to get started quickly and make very rapid progress in the beginning.
It makes it easy for a single artist, programmer and level designer to collaborate.
Cons
It encourages poor architecture.
Large teams will have to jump through hoops to coordinate without ruining each others work.
I'm sure this opinion will be unpopular, but these are the conclusions I came to while working with Unity.
Note: we worked in C# and attempted to use Object Oriented design wherever possible.