When a business grows very quickly, the rapid rate of expansion can put its working practices under strain.
A case in point is LogicSpot, a London-based web design agency. The company was founded back in 1991 but has seen a sharp uptick in business in recent years.
“Two and a half years ago there were two people in the business, and now there are 18 of us,” says LogicSpot CEO Mark Haller. “As a result, our processes have had to become much clearer and more formal.”
One of the main issues that emerged as the company grew was its ability to track support issues raised by customers. Developers relied on a system of spreadsheets to record issues and support requests, but this sometimes led to disagreements with customers. "There's nothing worse than a heated debate about somebody not tracking support tickets," says Haller.
"We tried [hosted spreadsheet] Google Docs for a short while, giving the client access so that they could help us prioritise issues," he says. "That worked OK but there was still something missing."
In March 2011, LogicSpot went on the hunt for a solution that would make issue tracking transparent and usable for both developers and clients.
"It needed to allow us to report to clients easily, track our own teams and see where projects were stuck, plus it needed to look great," says Haller. “We found a few applications that were good at one thing but not good at another.”
LogicSpot eventually selected JIRA, a web-based project management tool from collaboration software vendor Atlassian. The system works by raising a ticket for any job or support issue, and allows those tickets to be tracked over time and closed when the task is complete.
"We use it for ticketing every task on every project or support request," he says. "Whatever it is, it all goes through JIRA."
LogicSpot hosts JIRA on an internal Linux server and uses a web portal to grant access to the external developers that it hires for software testing.
To improve communication with clients, LogicSpot integrates JIRA with Zendesk, a cloud-hosted customer service platform. Zendesk provides an online support portal for customers, as well as automated email functionality. This means that when a customer raises an issue on the portal, LogicSpot's support staff are emailed instantly.
Another useful feature of JIRA is called Issue Collector, an add-on that helps LogicSpot identify issues during testing. Inserting a line of code into a website's footer includes a feedback box on the page. This allows testers to provide feedback as soon as it occurs to them, and feed directly into the stream of tickets.
"It lets the tester raise anything, whether it's an enhancement, an idea, a thought going through their head or a bug that's stopping the system going live," Haller says.
"Issue Collector is coded in HTML and Javascript, which is perfect for us as everything we deliver goes out to the web," he adds. "It doesn't matter what language it's being written in."
Using JIRA has cut development time and increased transparency during testing, Haller reports. "JIRA allows us to be more relaxed when we come to testing, as we're not worried about whether we're keeping track of everything,” he says.
Another significant change at LogicSpot has been moving version control from Subversion (SVN) to Git. With SVN, it was one specific developer's responsibility to merge new code with the main codebase. With Git, each developer can merge their own work.
This, says Haller, means that developers are more aware of their responsibility to write code that does not break the existing codebase.
"Pulling all the code together was a nightmare with SVN," says Haller. "Git has upped the ante for our developers, making them more responsible for their own code and how it impacts on the rest of the team."