Zendesk Infrastructure: Proactive Planning for the Future

Last March, I wrote about how fortunate we are in operations (ops) to go unnoticed because of our consistently high uptime. Since then, we’ve continued to fly under the radar by maintaining more than 99.9% uptime, even celebrating four 100% months (with copious amounts of whiskey, mind you) while growing considerably. So what’s our secret [...]

Read More

A Closer Look at the API Designed To Make Ticket Sharing a Piece of Cake

Moving stuff around is easy, right? I can move files on my computer into different folders just by dragging them around. In my favorite calendar application I can move events to different dates. I can move the events from my work calendar to my home calendar, or even a shared calendar. It’s all pretty easy [...]

Read More

DHTML5: Not Quite There Yet

Meet ME and MBMS. They both want to be really excited about the possibility of using HTMl5 in Javascript frameworks. But there are still some issues that need to be worked out, such as HTML5′s dislike for certain containers and a few complications with Javascript libraries. But we think they can work it out. We [...]

Read More

Stop the Dreaded HTTP 405 Errors on IE 9

The Zendesk application uses the TinyMCE editor with the ts_advimage plugin for image uploading. The combination has served us well for quite some time. Recently, though we’ve been getting lots of complaints from users who are getting HTTP 405 errors on IE9. After some digging, I found that the problem was how the ts_advimage plugin [...]

Read More

Javascript Loves CI

Jenkins + Jasmine + PhantomJS + JSHint We write a great deal of Javascript here at Zendesk, and we use a few great tools to help us make sure we’re committing solid code. First, we run it through JSHint, a slightly-more-friendly port of JSLint. Second, we use Jasmine to test the code. These tools work [...]

Read More

Ever Wonder What Your Team of Engineers Can Do in One Measly Day? A Lot.

We recently hosted our first-ever Zengineering Challenge, an intense daylong event that put our immensely talented help desk software engineers to the test. The premise of the challenge was for engineering to come up with a series of one-day projects that could all be accomplished within a day’s work, by a team of three to [...]

Read More

Watch our real-time support map

With more than 70 million users registered in Zendesk, we see a daily volume of more than 1 million ticket updates from around the world.

Read More

Managing Explosive Growth at Zendesk Ops

You haven’t heard much from us at Zengineering over the past few months. But that’s not to say we haven’t been busy. In fact, we’ve been extremely busy dealing with the explosive growth of Zendesk and Zendesk’s customer base. I don’t think the scale of Zendesk has got that much attention. Frankly, in the infrastructure [...]

Read More

Keep Javascript Libraries From Colliding

Namespacing Summary (TL;DR) Javascript libraries can often be used in ways the authors did not foresee. Global variables present many opportunities for conflict among Javascript libraries. Authors should use namespacing techniques and JSLint to avoid polluting the global namespace and thus avoid collisions with other libraries. 1. The problem People who run Zendesk help desks like [...]

Read More

Calling All Rubyists for Hack Night and New Orleans Meetup

We will be hosting a few Ruby-related events over the next month. On Wednesday, November 3rd, we will host a hack night at our headquarters on 410 Townsend in San Francisco. We will provide food, drinks, seats and network and look forward to seeing you. Please register here. On Thursday, November 11th, we will be [...]

Read More