Archives For Engineering

Get a glimpse into the minds of our engineering team.

While thinking of fun, creative projects that would also WOW our customers, software engineer Carlos had the AMAZING idea of integrating Expensify with Silicon Valley’s newest darling, Yo.

The 411:

To set it up, go to Settings > Connections.  Continue Reading…

Drag, Drop and Wow!

cead22 —  July 16, 2014 — 2 Comments

WOW Fridays, internally referred to as “fWOWdays”, are an experiment we just started at Expensify, and the main idea behind it is to allow engineers to devote 20% of their time working on cool projects that improve our customers lives and WOW them at the same time.

You may have heard of other companies doing something similar, but none of them really do it the way we do expense reports, that is, in a way that doesn’t suck. By focusing the 20% time on “Don’t-break-things-Fridays” and shielding developers from support and other non-critical issues, they can stay in the zone and collaborate with other undistracted developers to build cool things.  Continue Reading…

When we launched the ScanAnywhere API in early 2012, the API and really, Expensify itself,  focused on scanning receipts. Soon after, we added mileage tracking capabilities to Expensify and now about 40% of our report submitters are submitting mileage expenses. At the request of many of our partners, we’ve updated the API to allow apps to pass mileage expenses into Expensify.  Continue Reading…

This month marks the sixth anniversary of Expensify. In may 2008, David Barrett got the idea of a world where expenses reports don’t have to suck. With this idea in mind he rallied the troops and founded Expensify, and for six years we’ve been experimenting with countless ideas on how to make expense reports not suck.  Continue Reading…

Expensify, just like all tech companies in the world, fights bugs on a daily basis. Most of them affect an insignificant part of our users (i.e. an app crash when resuming on a specific page). Some of them have an important impact on the main flow (i.e. taking a picture takes 10 seconds longer than usual).

But sometimes, one small line of code will produce a bug that critically affects 100% of our users.  Continue Reading…

Here’s a quick look at a few things we’ve done in the past few months to make sure Expensify runs faster than a <insert inappropriate joke here>.

Cache, Cache, Cache

Before (gray) and after (blue) chart of API Response Times

Before (dashed) and after (solid blue) chart of API response times – from New Relic

The biggest change we’ve made to speed up our API was introducing a global caching layer, aware of the relationships between the data we handle, and capable of prefetching resources in bulk when necessary. This has reduced the read load on our database server by around 25% (!), freeing resources to serve more customers at any time, especially at peak load. The API is used by all of our apps, including expensify.com – so the benefits of this can be perceived across all of our services.  Continue Reading…

DefibrillatorYou’ve likely already heard about the “Heartbleed” security vulnerability affecting thousands of websites and millions of servers worldwide.  I just wanted to share some quick notes here to address any questions you might have about how this affects Expensify:  Continue Reading…