Eclipse is the Integrated Development Environment used for most projects compared to NetBeans and IntelliJ, but NetBeans has been used for Grails development.
The Jenkins build server is tied in directly with our version control system so that a new runtime application version is generated and staged every-time code is checked in.
Early adopter of Maven has proven to be an excellent choice for keeping project dependencies up to date and adding new artifacts as needed.
Regardless of the tool used, a code versioning system is essential a repeatable software development process with concurrent development.
Thrift is a descriptive format that describes a service with all the inputs/outputs. The real strength is the ability to then generate language stubs for a variety of languages and have different applications communicate each-other.