Could you share any statistics or metrics from this engagement?
We managed the two projects a little bit differently. One had a very fixed budget and scope, and the other one was a little bit more open-ended. They were good about staying focused on the task that we had set up for them. There wasn't any room in our budget to rework anything; it was important that it be done correct upfront. One of the nice things about working with them was that they strongly embraced agile as a philosophy, and specifically they embraced Scrum as a project management approach, which is exactly how we like to work as well.
By setting up that structure in place, they fell into it naturally because they were comfortable with it. Even though they were a long way away from us, it felt like we were on top of and in complete control of the project at all times. There was never any, "So, what have you been working on?" type of questions during the projects with them.
They were able to integrate themselves with our team quickly on both projects, in a way that allowed them to get up and running, productive, and contribute on the schedule that we absolutely needed to have in order to be successful, on both projects. For me, that was crucial. We just didn't have time to spend cycles figuring out how we would work together. We said, "Hey, how about we work together this way?" They were like, "Perfect" and we just clicked.
How did UruIT perform from a project management standpoint?
We used Bitbucket and GitHub for all of our source code control, between all the developers. We had developers in three different locations working together: the customer's location, our location, and theirs. The company behind Bitbucket has an offering called JIRA, which is a well-known solution, and they have templates specifically designed for Scrum, and we leveraged those. We were all kind of new to JIRA, and specifically Scrum on JIRA, so it took us a little bit to sort of figure out how to leverage it the right way, but that's the tool we used to manage the project.
The Scrum methodology is a great way to make sure that you're on top of what they're doing, and they're getting that all-important feedback on a daily basis. They were smart enough to be aware of this, too. I think it was good to have that kind of structure in place to make sure that all the different remote teams were in sync.
We also leveraged Skype's chat feature, and that was nice. We were in IM [instant messaging] contact with each other all day long, in addition to our daily stand-ups and the Scrum board. I think that really made all the difference in the success of the projects for us. I would be reluctant to set up any kind of nearshore relationship without that in place.
What distinguishes UruIT from other providers?
I haven't worked with a lot of other nearshore companies. I've worked with a couple out of Costa Rica, and I had good luck with them, too. I wish nearshore arrangements were a little bit of a better-kept secret because sometimes it's hard to get a hold of them. They get very busy. I think what's unique about these guys, in particular, compared to some other nearshore companies I've worked with, is that they're pretty good about making sure that their people are on top of things.
Even though we haven't done business with them for a little while, I stay in touch with them regularly. It's interesting that every time we get into a new technology, like node.js, or Angular.js, or whatever it is, I'll find out that they're dabbling with it, too. UruIT's company culture is very conducive for learning, for them to stay on top of new technologies. I think that that helps because, that way, they're ready, willing, and able to hit the ground running on new projects.
Is there anything UruIT could have improved or done differently?
My honest answer is that I would use them again in a heartbeat, and definitely pitch them to our clients to this day. I was pleased with the quality of the people on their project, especially the technical leaders, who were sharp. I was impressed by the caliber of the technical talent, number one.
Number two, and some of this might be cultural, but compared to offshoring, where you run into the estimation problem time and time again, if they didn't understand something, they would put on the brakes and say, "I don't get it, please explain this to me, so that I don't do it wrong." That was just hugely valuable to us because it meant that the overall quality coming from them was high to begin with before we got into all the testing and system acceptance.
We had one incident where we had one developer who wasn't performing very well. We voiced our concerns with them, and he was replaced with somebody we were pleased with. Honestly, I can't really level any overall criticisms for them.