Blog

Enable your organization to operate with less information

“Confronted with a task, and having less information available than is needed to perform that task, an organization may react in either of two ways. One is to increase its information-processing capacity, the other to design the organization, and indeed the task itself, in such a way as to enable it to operate on the… Read More

Resiliency at Yammer

Yammer is built on a service-oriented architecture. However, at a greater scale (many discrete services) we have found that when a new service is introduced or an existing one is extended it increases the complexity of the relationships between the incumbent services. These complex relationships can have many different effects when they fail. These failures… Read More

Deployments at Yammer

At Yammer, any developer can ship any service to any environment with a single click. Any developer can deploy changes to any of the services that power Yammer.com, without having to be an expert in that service. How? We built something called Deploymacy, the central hub for all deployment activities at Yammer. Our role as… Read More

A private NPM cache

TL;DR: We’ve built a lazy mirror to smooth over the official npm repository going down. When your continuous integration and deployment systems use npm to install modules, you need to take steps to make sure it’s available when you need it. And like everything on the internet, perfect uptime is not something you can guarantee…. Read More

I Am Not A Robot (And So Can You!)

  I am not a robot. If you are reading this, chances are, neither are you. (If you are a robot, please show yourself out. We do not serve your kind here.) You have eyes, fingers, a prefrontal cortex and, as a result, you have judgment. You, as a thinking person, have the benefit of… Read More

Zero Downtime Deploys with Rails

Last November our very own Matt Duncan gave a talk at RubyConf on how to perform live database changes to a Rails site without downtime. Every deploy introduces the risk of downtime because of changes which are not backwards compatible. At Yammer, we deploy our Rails codebase to hundreds of servers many times a week…. Read More

1 2 3 7