Archives For December 2010

I saw this interesting tweet from @Twilio:

3 Twilio-powered startups made @scobleizer startups to watch list in 2010! cc: @expensify @cloudkick #twilio2010

And I couldn’t help but wonder how we did. Lo and behold, we did amazingly well! A full 9 of Scoble’s 25 Hot Startups to Watch in 2010 use Expensify.  For the math challenged, that’s a whopping 36%!  I guess I shouldn’t be surprised — things are really taking off here and Silicon Valley is our home turf. But still. It feels nice.

Expensify Festivus 2010

David Barrett —  December 23, 2010 — Leave a comment

Ahh, another year down, another grand holiday celebration. This year we dined at Incanto, by the same geniuses who brought you Boccalone — whose motto is “Tasty Salted Pig Parts”. And tasty they are! There was an enormous amount of wine and even more roasted pig. And no Festivus would be complete without feats of strength, though I think the food-induced coma somewhat thinned the field of champions. I’d love to write up the full story, but alas, no time to recount the tale. Needless to say: it was a delicious experience.

Hooray! We’ve just released an update to the Expensify iPhone & iPad app- it includes many great improvements, so if you’re an avid Expensifyer, be sure to grab the update today! It’s available in the App Store now; so to update, just:

Click here on your iPhone/iPad

or, tap the App Store on your device, tap the ‘Updates’ tab, tap ‘Expensify’, and then tap ‘Free’.

Here’s what’s included in the 2.60 app update:

  • It now has 100+ extra currencies
  • The issue where receipts occasionally got stuck when uploading has been fixed
  • A progress bar for uploads has been added
  • Receipts continue to upload even after you close the app, and you get a notification when they’re done
  • iPhone 4 retina display graphics have been added
  • The style & graphics have been updated
  • You can now tap an offline queued receipt to upload it
  • And many more small fixes, speedups, and improvements have been made


Hello technical recruiter! (Or anybody else interested in Expensify hiring.) The challenge of running a startup with too few people is it’s hard to find the time to hire more.  That said, it’s absolutely crucial that we do, as soon as possible.  With this in mind, I’ve tried to capture some of the most common questions into one place.  I have no doubt you’ll have many more, and I am more than willing to make the time to answer them, but can you please do me the great favor of reading these first:

What roles are you trying to fill?

Junior engineers.  We only hire generalists that can do everything, but you might consider any of the following job titles to get into the right ballpark:

  • Junior software engineer
  • Mobile app developer
  • Junior web developer
  • Web designer
  • Usability designer

How many people are you trying to hire?

We would like to continuously hire as fast as we possibly can for the foreseeable future, potentially 1-2 a month for the next year or more.  That might sound slow — lots of companies suck up employees by the hundreds — but it’s fast for us.

Why have you hired so slow?

For better or worse, we’re very, very picky — we’re looking for a very certain sort of very unusual person, and we’re willing to wait as long as it takes to find them.  I know everybody says that, but we actually mean it.  So we’ve had a process that has been slowly pulling in very high quality candidates, but just too slowly.

What hasn’t been working that you want to change?

I feel the overall message we have is a good one — the company is the leader in its space, we have an incredibly solid team, a great working environment, etc.  But that message isn’t getting out to enough people, or the right people.  For example, we’d previously relied heavily upon Craigslist, only to learn from our more recent hires that they don’t even look there (and in fact view it as a place to get scammed), and it was only through sheer luck that they stumbled into one of our job posts.  Accordingly, we need you to carry the Expensify banner to the far reaches of the earth and make sure everybody who wants to work at an awesome startup considers us as an option.

What do you want me to do?

How exactly you do that is up to you — after all, you’re the expert.  I’m more or less open to any crazy ideas you have on how to find candidates: the “input” is up to you.  However, I need you to act as a strict filter such that I’m not overwhelmed with unqualified leads.  The best filter we’ve found is our application questions. Accordingly, when you find a candidate you think might be a good match, I suggest:

  1. Email with their resume (if you have it) or just say “I’m contacting person X” — this gets your representation of the client “on record” in case they contact us direct.
  2. Ask them to fill out these questions and either send them to us directly, or send them to you (and you forward to us).

What’s up with these crazy questions?

The people we look for are very unusual, and we’ve found that the resume format is almost never informative: they’re formulaic, riddled with bulleted lists, and like boiling down a fine steak into hard leather.  The people we hire have incredibly complex and interesting stories, and a resume just isn’t the right format to capture that.  Indeed, many of our candidates have actively applied precisely because we didn’t ask for a resume.  They don’t like them, we don’t like them, so we’ve just cut them out of our process entirely.  Instead, we ask candidates who are interested in Expensify to just tell their real story, in their own words.  This has a variety of effects.

  • It actively discourages people who aren’t interested (or interesting) from applying.  This is a good thing — it saves them time, saves us time, and everybody wins.
  • It lets us evaluate actual writing and programming skills from the very first contact.
  • It gives us a detailed picture of their full skillset, history, hopes, and dreams.

But most importantly:

  • It actually attracts the best candidates.  Everybody we’ve hired *liked* the questions.  They weren’t a burden to fill out, they were a relief: they showed that Expensify actually cared enough about them to look past their resume and learn the true story.  And (again, for the right person) they’re actually fun to fill out.

They’re unorthodox; most people don’t reply.  But those who do are the tiny, tiny subset we *want* to reply, and that’s all that matters.

There’s no way people really like these questions

I understand it’s hard to believe.  But here are some recent comments:

Get back in touch if you want to get back in touch, and thanks — and I do mean this sincerely, not in an ass-kissy way — thanks for putting together such an enjoyable application process!

I like the way you posted the job position; it gives me great flexibility on providing a response.

I found your posting on Craigslist yesterday — aside from the fact you started out by saying the job was perfect for new college grads, which I am, I found the questions interesting, so I decided to take a crack at answering them.

I’ve filled out the questions found on your website. It was rather enjoyable to fill out, I hope I’m what you are looking for.

And so on.  It’s crazy, but works.

What are non-salary perks and benefits?

The main perk is that we truly value our employees (as evidenced by how hard we work to get them).  And we’re not really a “perk heavy” company, instead favoring just better salaries.  But additional perks include:

  • Health
  • Dental
  • Matching IRA (retirement account)
  • Free lunch (at whatever restaurant you want, not crappy takeout or cafeteria)
  • Annual trip overseas to work from a remote beach (on their own dime,  unfortunately)

Will you sponsor a visa?  Relocate?

Yep.  For the right candidate we’ll bend over backwards.

What sort of candidates are you looking for?

Junior engineers with better skills than senior engineers.  They’re out there; we already have several.  They’re just really hard to find.

How can I identify a good candidate?

Some hallmarks of a good candidate are: (These are just examples; not all will fit.)

  • Probably not from the Bay Area
  • Started programming in elementary or middle school
  • Wants to eventually start their own startup
  • Has a really interesting life outside work
  • Has done a lot of travelling
  • Dabbled with 3D graphics or video games at some point
  • Went to school but was incredibly bored and disappointed
  • Worked their way through school
  • Has bounced between a lot of jobs
  • Hasn’t worked for anybody you’ve ever heard of
  • Wants an opportunity that appreciates and exercises their full talents

Why junior; don’t you want senior people?

The sort of person we like has such a fast career trajectory that our only option is to get them while junior; after a few years they’ll be so successful we could never afford them — they’ll be starting their own startup and thus unobtainable.  There are always exceptions to this rule (especially people who are just looking around for a better opportunity, or people whose previous startups didn’t pan out), but in general unemployed senior people who need to actively look for a job are almost implicitly unqualified.

Why self-taught; why not PhD’s?

There’s nothing about programming you can’t learn with a cheap laptop in your parents’ basement.  The sort of person we like goes to school because they felt obligated to, or has been misled into thinking it’s somehow required for a good job.  But they typically realize this mistake well before finishing any sort of PhD program — often well before graduating with any degree at all.  People who go through the full program without realizing that they’re wasting time and paying money to be *less* employable are typically not the people we’re looking for, though there are always exceptions.

Why generalists; why not super awesome specialists?

Programming isn’t hard.  Anybody who says it is just isn’t very good.  Granted, there are some extremely esoteric things that are genuinely hard or for which specialization is useful or required — supercomputers, device drivers, advanced artificial intelligence, computer vision, etc.  We don’t do any of those.  We want people who can do pretty much any non-specialized programming task, ranging from C++ networking, SQL queries, PHP web development, HTML layout, AJAX interaction, jQuery manipulation, etc.  Contrary to popular belief, technology isn’t the hard part.  It’s the process of deploying technology in an effective way to solve a meaningful problem — *that’s* hard.  And generalists in effect specialize in that.

How do I pitch Expensify to a candidate?

Though Expensify is the leader in its space, has won lots of awards, is growing fast, and so on — it’s still not a household name.  We’re not looking for people who want to work for Google, but for the *next* Google, before anybody heard of it.  Expensify’s biggest single advantage is genuine and immediate empowerment: you don’t need to “prove yourself” before getting to the good stuff.  You start the good stuff right away.  Accordingly, you never work “for” Expensify. You work for yourself, furthering your own passions and career (and wealth), side by side with the rest of us.

Is a Master’s degree a showstopper?

No. It’s a demerit, but not a showstopper. (A PhD almost is, however.) The question is: why did they go back to school after graduating with a Bachelor’s degree? Did they go back because of some really amazing opportunity, or because they couldn’t find a real job and were afraid of the real world? There are no hard and fast rules — find the story behind the facts. If that story is compelling and shows the person is really awesome, that’s what matters.

Recognizing that nothing is a showstopper, what are some flags?

Here are some things to be wary of:

  • Graduated before 2005. What have they been doing for the past 5 years that still caused them to be interested in a junior programmer role?
  • Uses a lot of Microsoft technologies (, C#, Windows Server, etc). Nobody good uses the Microsoft stack without an amazingly compelling reason, though I honestly can’t think of any.
  • Has a bunch of certifications. Those certifications are meaningless; good people don’t want or get them.
  • Has worked for a large company (>1000 employees) for a long time. It’s good to work for a boring company for a short time — that teaches people what they want to avoid. But anybody who sticks with it for too long must not really care about their career.
  • Doesn’t have a website. Not everybody has one, and certainly nobody *needs* one. But good people have them anyway to experiment with and host personal projects.
  • Sounds boring. If you sound boring in email, you probably are boring. That’s not always true — I originally rejected one of my employees due to sounding boring, and boy was I wrong. But though there are exceptions, most people aren’t exceptional.

Where can I read more information?

We’ve got a bunch of information online.  We’re adjusting it all the time (before it was too terse, currently it’s a bit too verbose), but you can read it here:

Or, just send me an email at  Thanks for reading all this, I really appreciate your  help!

Doing business in places others haven’t heard of? While we may not know where you are either, rest assured that we’ve got your expense needs covered – your purchases can now be recorded in any of 159 currencies.

Any expense in a foreign currency will automatically be converted to your home currency once added to a report. We use Oanda, the touchstone foreign exchange rate calculator used by corporations, tax authorities, auditing firms, and financial institutions worldwide, to do the currency conversion based on the day’s exchange rate when the expense was incurred. Check out the full list of supported foreign currencies on our currency conversion help page.