I enjoyed working with Gaurav and his team and will likely have additional jobs for him in the future. The difference between a good and great developer, is that a great developer challenges the design and offers alternative solutions. This team often asked me questions that caused me to rethink my proposed solution. The team could improve by giving daily updates on progress, communicating any unanticipated delays or complexities more regularly. Overall, though, this only happened a couple times, and once I brought it up, the team quickly started giving regular updates. Moreover, whenever there was something urgent, AnavClouds Software had an incredible response time. Once, when I had an urgent production issue, they were able to get online and look into the issue at 1 a.m their time!