At Red Badger, we’re huge fans of the cloud and we try to persuade our clients to be too. Where possible, we base the products/services that we are developing on cloud infrastructure for its many obvious advantages. Birdsong, our popular Windows Phone 7 Twitter client is a Microsoft Reference Architecture for Azure and Official Case Study. Using Azure for Birdsong has brought us very obvious advantages in scalability and low maintenance and combining that with Microsoft’s great BizSpark programme for startups, what would have been a cost effective service is now super cost effective. Birdsong is currently processing over 3 million transactions a month through Azure, is growing fast and all for very little cost.
We are also promoting the cloud to our clients. Some of our larger clients that have a well established IT infrastructure (with large maintenance overheads!) can see the benefit of the cloud but some just aren’t quite ready for it yet. Some of the smaller clients we are speaking to seem to be more open to it as by the nature of their size, they are more flexible and can reap the benefits from the cloud much more quickly. With lower up-front costs, greater productivity, global reach and fast access (via CDNs), incremental scalability, agility, reliability, low maintenance costs and “pay as you go” cost models it seems like an obvious choice to allow smaller companies to punch above their weight with their IT infrastructure or cloud based products.
With it have come some fantastic Software as a Service (SaaS) products too. Really fantastic! Which slowly but surely brings me to the topic of this blog. Now I’m going to give you a few examples of SaaS products and other cloud based solutions that we use at Red Badger to perform key functions in our day to day running of the business. All bring flexible cost models, are innovative in nature and enable Red Badger to maintain our agile, mobile way of working without the need for our own IT infrastructure:
Accounting: FreeAgent is the cloud based accounting software of choice for Red Badger. It’s a superb product.
Our Accountant and all of our employees use FreeAgent for varying reasons. Our employees use it to quickly and easily add timesheets and expenses. It gives us Directors a slick dashboard overview of the health of our business, it manages our contacts, our projects (estimates, invoicing, bills etc..), integrates to our bank account, handles our overseas clients seamlessly (Fx can be tricky!), manages our taxes and provides all of the boring accounting functions that we let our accountant handle (P&L, Balance Sheets, Journals, Dividend Vouchers, Accruals etc..)!
It also integrates to Basecamp (amongst other 3rd party products/services), another excellent SaaS product from 37 Signals that we don’t currently use at this time.
FreeAgent has a very flexible pricing model providing different prices and functionality depending on whether your company is a Sole Trader, Partnership or Limited Company. They have a monthly (cancel anytime), pay as you go contract or an annual payment up-front for cheaper. They also have a referral scheme where you get a 10% discount for everyone you recommend.
FreeAgent makes the boring so easy! It’s not yet perfect but the product is being updated all the time, users can feedback and influence the product roadmap and the customer support is second to none.
Project Management: After doing lots of research for a good cloud based scrum tool, we decided on TinyPM and haven’t looked back. It’s a truly awesome collaborative agile project management tool.
So many of the best SaaS products are built by people who are trying to resolve their own problems. TinyPM is one of these – it is built by agile developers to manage their own agile projects.
TinyPM provides an easy to use interface to create releases, iterations, user stories, estimates, view product/sprint burndowns, dashboard overviews and all of the other bits of functionality you would expect from a tool like this. It also has an integrated wiki that we find particularly useful to store any project related documentation.
TinyPM is incredibly helpful in providing transparent access and collaboration to our clients. All of our clients can see what we are doing from day-to-day at any point and can easily manage the backlog for our projects from a remote location.
The customer support is excellent, the updates are frequent and the pricing is scalable to your needs. You don’t have to use TinyPM in a hosted solution as there is also an installed-on-site version but we have found the hosted version to be both reliable and perfect for our needs.
Project Hosting: All of the Red Badger developers cannot sing the praises of Github enough. Having used TFS for years, I am pretty sure they will never turn back now they are using Github. Github is a distributed version control system (DVCS) that allows collaboration, branching and version control of your code in a hosted project environment. The speed at which the developers can commit code and make changes is fast and the ease at which we can provide our client’s developers access to our repository is incredible. We have many remotely located developers, from the project team and from the client working on separate branches of the same code base at the same time. It has allowed us to easily integrate 3rd party widgets being developed by our client in Germany and it removes the dependency on being connected to a network.
Github Teams is also a really good feature providing a simple way to manage teams and their privileges. It’s a very effective way of administering teams and developers especially when you are managing lots of projects/teams.
Github provides a great social element to its UI (collaboration, issue tracking and code review), is intuitive and packed full of functionality.
Again, the pricing model is incredibly flexible with seven tiers depending on number of repositories and collaborators required. Open source projects are of course completely free and distributed through GitHub’s interface.
Diagramming:LucidChart is an incredibly useful collaborative diagramming tool that has replaced Visio for all of the PC users at Red Badger. It has all the standard
LucidChart is written in HTML5 and your charts are of course stored in the cloud, so you can pick up your work from any browser and any location. The little bits of attention to detail in the user interface makes it such a smooth experience to use. The best bit about it however is the real-time collaboration. You can share your charts and collaborate with others. As you update your chart, it automatically updates in real-time in any collaborators browser. The technical architects of Birdsong were simultaneously able to both work on the architectural design (Microsoft case study here) in the same chart from a remote location.
You can use LucidChart for free with limitations and then there are three pay as you go plans based on the users, collaborators, storage and premium features.
Once you use it you won’t look back.
Customer Support: We use ZenDesk as our cloud based help desk support system as well as using it to host release notes, allow customers to vote on feature requests for our products (much in the same way as UserVoice works), publish announcements and other user community activities such as forums and FAQs.
ZenDesk is easy to use but also has more advanced functionality such as macros to allow for automated replies to similar support tickets. This is particularly useful when responding to a large customer base. We use ZenDesk to support the 10’s of thousands of Birdsong for Windows Phone 7 users to great success.
We integrate links to the pages of ZenDesk into our Birdsong application so users can access the pages directly from the app. The pages are well formatted to support mobile so it creates a seamless experience.
There’s over 10,000 companies using ZenDesk. It’s definitely a best of breed SaaS product again with a flexible and affordable pricing model.
Hosted Exchange. All of our email is served as SaaS through Rackspace Cloud’s (more below) Hosted Exchange Service. You can get it for $10 per month per mailbox, it’s super quick to setup and seamless in it’s operation. A no brainer.
Not all products that we want to use are SaaS so a simple answer to this is to purchase hosted servers in the cloud and to install those products on the hosted servers. We currently use Rackspace Cloud to host a number of products that provide essential services to our business. The obvious one is our website (Our website will be getting a long overdue overhaul soon and migrated to Azure in the process).
Apart from our website, below are some of the other essential products we host in the Rackspace Cloud...
Continuous Integration and build management: You cannot go wrong with JetBrains products, we use them extensively. TeamCity is no exception. It is a continuous integration server which we use to build from Github several times a day.
Summed up from the JetBrains website: “Automate code analyzing, compiling, and testing processes, providing instant feedback on build progress, problems and test failures, all in simple, intuitive web-interface “ – TeamCity will verify that your changes work before committing, giving you immediate feedback if the build is broken, allowing you to fix it immediately. This results in you never committing broken code.
Each time a feature is developed, we build through TeamCity and if successful it will automatically commit, resulting in a continuous integration of many integrations per day. We then automate tests on the code using Selenium all contributing to a continuous delivery process.
Testing – Bug Tracking: Another brilliant JetBrains product, YouTrack is an incredibly fast, intuitive keyboard-centric bug tracking system. It is very flexible in its use with a configurable workflow, tagging system, prioritisation and notification.
We integrate YouTrack into our agile process in conjunction with AgileZen and TinyPM. It is so flexible that we also use it for project delivery when we go into an even more highly responsive, agile process than Scrum, such as stabilisation, bug fixing or usability testing phases of projects.
It’s free to use for the first 10 users. The next 4 pricing plans allow you to scale up your use of YouTrack as required.
The more we use YouTrack the more we find new features that provide real value, the more we love it.
Testing – Case Management: TestRail is an excellent test case management product that integrates directly into YouTrack.
TestRail is where our testers write their manual test cases (automated testing being written in Selenium), manage test runs and enter the results. A dashboard based progress and activity tracker is easy to use and export/share. Its integration to YouTrack allows you to easily push the defects into YouTrack to be picked up by the rest of the project team.
Another product that has a flexible pricing model based on the number of users required. Another great product that we host in the cloud.
To summarise, Red Badger would operate very differently if it were not for cloud based infrastructure. We’d have to buy and maintain our own IT Infrastructure (Servers etc..), hire the IT staff to perform the maintenance and most importantly the way in which we collaborate and interact with our clients and employees would be much less effective.
The Cloud may not be for everyone just yet but it’s certainly pivotal in how we run Red Badger.
One last note: From the screen dumps I have attached in this blog post, have you noticed how nicely all of the product’s interfaces seem to be designed? Providing a beautiful user experience and design is what makes cloud products, great cloud products. A great experience on the front-end combined with a scalable, robust architecture hosted in the cloud is a very powerful and valuable combination.