How to get a Ruby project done fast
At Highgroove, we aim to be fast. When we jump on a project, we work with the client to understand their goals and begin delivering functionality on the first day. As the project progresses, we strive to increase the velocity of work on the project with each passing iteration.
Our ability to deliver high-quality work at an ever-increasing rate depends heavily on our process—specifically, the three things we do on every project.
Three things that get a project done fast
Test coverage: Full browser integration and unit testing is imperative to allow developers to spend time working on new features instead of fixing development bugs. Being able to trust your test suite gives you the freedom to make sweeping changes to a system quickly, without the fear of introducing error. It may take five extra minutes for us to write a spec before we jump into your feature, but the benefits of better design and fewer bugs save us hours in the long run.
Leverage the open-source community: By now, it should be obvious that if you are reinventing the wheel instead of using open source technologies, you are throwing development money down the toilet. What may not be as obvious is that you are also wasting time if you are not also contributing to the open source community. By releasing code that is not specific to your app, you gain the support of not only your developers at Highgroove, but also of everyone using your code. This can give you huge returns in code quality and maintainability throughout the life of the app, and it speeds up development.
Constant delivery and feedback: As we work on your project, you won’t sit and wonder what’s being built for months, weeks or even days. For most projects, the time between delivery of new features is on the order of hours. Because we embrace the agile method, you are able to play an active role throughout the process and make adjustments to your project as they are needed. With a commitment on your end to constant feedback, you are able to iterate on the requirements of the project without a large amount of rework.
Using these three methods, we deliver solid products that make our clients happy. What are the methods you use to meet client needs?
Image credit: Kroiz