Archives For November 30, 1999

At Expensify, everything we do is a balance. As a startup, we can’t build every feature we and our users want, or install as many servers as we can imagine. Sometimes though, we see a change we can make that won’t cost much (in time or money) and will benefit for our users. Here’s the story of one of those times that didn’t work out as well as we hoped.

Most of our website is written in PHP. While there is some healthy debate among our engineering staff, most of us like PHP for its rapid development and ease of deployment. Our web servers use the Alternative PHP Cache (APC) to cache compiled code and speed up requests for our users. A few months ago we updated our web server configuration to use less memory for each PHP process.  Continue Reading…

Do you want to work more with cloud computing? Great– we don’t! When dealing with financial data, knowing where the data lives is important (and “on someone else’s service” is a poor answer), so we’re leaving the cloud. We have three datacenters in active/active/active configuration, and we’re transitioning ancillary services out of “the cloud.”

A perfectly normal monitor in peak operating condition

 

We’re a Linux shop– currently a Ubuntu/CentOS hybrid environment, transitioning to a full CentOS stack, all managed with Salt (www.saltstack.org). Our site is largely written in PHP and Javascript, but important parts are in Java, C++, plus a smattering of Python holding some rusty parts in place.
Our network stack is built on a Juniper switching fabric, and a pf-based firewalling solution.

 

We would like you to:

  • Build infrastructure! Every system is configuration managed, so ideally you build a web server once, not a hundred times.
  • Support developers! Our developers are as smart as you ideally are– they need help provisioning development environments, not printing Excel spreadsheets.
  • Participate in a one-week-in-four on-call rotation! The world is beautiful at 3AM– but for better or worse you’ll rarely get to see it, as “the environment is melting” is the exception rather than the rule.
  • Read and debug code! You need not be a developer yourself (though it wouldn’t hurt), but tracking down a bad PHP function call based on log messages shouldn’t scare you.
  • Make big trouble for moose and squirrel! Oh wait, the KGB shut down years ago…
  • Work in San Francisco! Don’t live here? No problem, we can change that.

If you are interested in applying, please send your resume to jobs@expensify.com with a letter explaining why you are awesome and how you found us.