Enterra has completed two projects for me very successfully. The first was a VB6 app on Windows front-end to a PostGreSQL on Linux back-end labeling and serialization program. Though this application was not very complex, there were some very specific requirements regarding fault-tolerance that could have been problematic for less quality-minded development teams. The second was a JSP/Tomcat/PostGreSQL/Linux application server for generating tests of reading decoding, and recording and analyzing those tests. Despite its complex requirements, Enterra did a fabulous job maintaining a good design and quality. Neither project was for a startup or for a startup-like endeavor. The first is used in multi-site manufacturing enterprise, and the second is a product that is being distributed through an established channel. Frankly, I am not sure you would want a recommendation from a startup group who used Enterra because they would have no basis of comparison. I can say, having managed development teams myself in the US and having used several overseas development firms that Enterra is the best value of any group I have ever worked with. In terms of customer service, I've never had any problems. I should note that I dealt more or less exclusively with Dmitry Starostenkov through the quotation phase and an assigned project manager through the development phase. In terms of technical proficiency, I can attest that Enterra shows competency in: Java, JSP, Visual Basic 6, PostGreSQL (and SQL in general), the Windows API, Linux and Linux scripting, XML, various Java frameworks, Tomcat tuning, and ODBC. Unless you have an application that relies on optimizing a mathematical algorithm or something similar, technical proficiency is probably the least of your concerns. What sets Enterra apart from other overseas development firms with which I have worked is their attention to quality and testing issues. For this reason I would use them again for basically any IT project. I'm not sure how much development experience you've had. If its significant, ignore the following; if not, here is a little advice about moving forward: 1. Try to set aside some percentage of the development budget for a contingency fee toward work you may not have anticipated. For example, if you set on a project price of $30K, make sure you can spend an additional $3 - $5 just in case you need it. 2. I know that agile methods are in vogue, but unless you are using in-house development, do as much planning and prototyping as you can up front. Write specific requirements, draw up interfaces, etc. 3. There is almost always a trade-off between schedules and quality. If you must adhere to a certain schedule, make sure that Enterra is aware of it up front. Personally, I have never tried to develop anything but the simplest software on deadline. 4. Be aware that you will need to provide all English text strings to Enterra. This really isn't a big deal because, because unless your application relies on some feature of the American economy or society, you should plan for globalization up front.
On Time, On Point, On Budget!