Posts from December 2014

Who doesn’t love hackathons? Hootsuite Engineer Alex Palcuie participated in December’s 2014 EU Hackathon in Brussels, Belgium. Alex shares his experiences below (originally posted on Blogspot) about making a difference, new friends, and 2nd place.

logo

This month I participated in the EUHackathon 2014 in Brussels. Our challenge was to build tools that increased transparency and participation in the European Union.

My team built a site that helps the public understand the meeting timetable – with who, at what time, and where – of EU commissioners. We won second place, and had lots of fun.

second place
Team Commission Today

Read More …

A codebase with many active contributors grows and evolves like an organism. File systems that store code are shaped like trees, and all of the changes that happen over time are akin to organic growth and decay.

On the sixth anniversary of the Hootsuite’s codebase, Specialist Engineer Bill Monkman spent a weekend building a beautiful visual artifact that conveys those organic qualities and much more. Using Gource, Andrew Caudwell’s amazing code repository visualization tool, Bill has given us a macroscopic, time-lapsed view of every change, big or small, that has gone into making our product what it is today.

For those of us who have been fortunate enough to be a part of the team that builds Hootsuite products, being able to see our codebase grow up from its humble beginnings is a moving experience. Now with over 10m users, Hootsuite engineers get to work under the hood of a codebase that runs on hundreds of Amazon instances, and processes millions of social messages every day.

Read More …

Collective action is a wonderful thing. Meetups and open source projects are two examples of people getting together to have a conversation about the things they care about, with the aim to do something positive for themselves and their community. How can this collective action happen inside your organization? At Hootsuite, the answer is Guilds.

Guilds are a self-organizing group of people with common interests. It is a natural forum for social interactions that build relationships that, in turn, promote cooperation, cohesion, and productivity. [1]

Guilds provide a horizontal communication layer across our Product Engineering teams. Our engineers, testers, and other staff use them to set their own missions, to establish technical roadmaps, to take on joint tasks for their grassroots initiatives, and to promote education through experiential learning. This collective action benefits their members, their craft, and our organization.

guilds-at-hootsuite

Read More …

Sometimes a wonderful tool comes along that makes a kludgy process radically better. Packer (thanks again Hashicorp!) and ServerSpec are great examples. The 1-2 punch of Packer + ServerSpec combined with the automation abilities of Jenkins made a significant impact on our automated server image creation. This combination reduced our time-to-deploy, took our visibility from ‘translucent’ to ‘transparent’, improved our traceability, and generally made our Ops Engineers much, much happier. Read on to find out how these tools can make you happy too.

PSSJ

Read More …

When writing Android code, there are many situations in where you’ll need to make network calls. There are several different ways of performing these network calls, and after reviewing them all, we’ve determined some are good, some are bad, and one in particular is just plain ugly. We’ve compared and contrasted several methods, and along with some code examples, will provide some basic insight into using what we think is the best method of making network calls in an Android application.

Android_logo

Read More …

Ow.ly is our URL shortening and click analytics service, and a critical part of Hootsuite because it handles several billion clicks a month. We love Ow.ly, and we’re delighted that our customers feel the same way – but the booming popularity of Ow.ly introduced scaling issues for our Engineering Team. We could have mitigated these issues by keeping with our current infrastructure and code framework, but it turns out that’s a lot of effort and not cost-effective. Instead, we searched for a solution that would allow us to scale Ow.ly, keep our AWS costs in check, and allow us to build new functionality … all while maintaining 100% uptime. Easy, right? Kinda :).

We turned to Typesafe’s Play Framework to refactor and scale Ow.ly’s services. Today, 100% of Ow.ly’s API, the web UI, and the URL redirect services are all running off the Scala-based framework.

After our successful relaunch, our friends at Typesafe produced a case study on our work, our research, and how we decided the Play Framework was the best solution to our scaling issues. Check out the case study to learn more, and visit the Typesafe blog for more innovative technology solutions.

scala_hootsuite_04