The Hunt for Engineers: Expensify and the surprisingly difficult challenge of finding the right people

expensifymeg —  March 18, 2011 — 33 Comments

As many of our regular readers have probably noticed, we’ve been mentioning here and there for quite some time that we are in the market for new employees. And as we’ve said before, we’re taking a drastically slower route toward hiring than many startups do. But we’re being extra picky about who we hire, because we’re trying to preserve two things that are very important to us:

  • the integrity of our product, and
  • the corporate culture we’ve very carefully crafted

In other words, not just any Computer Science major will do. In fact, we don’t even care if you have a college degree. We don’t care if you’re a U.S. citizen.

What we do care about?

  • a great work ethic, almost to the point that some of your friends might call you masochistic. We work long, hard hours doing what we love, and if you’re the kind of person who wants to clock out at 5:00 or spend half the day surfing LOLCats, this isn’t the place for you.
  • a great character: fair, honest, with a decent sense of humor, and absolutely zero drama. Please, we get enough drama from watching Dexter.
  • talented and fast at picking new things up: you should be technologically multilingual, with the kind of intellectual flexibility that would make Neo’s bullet-avoiding backbend in The Matrix look like your grandma doing the limbo on a geriatric cruise. This doesn’t just apply to programming, though we demand a high level of talent and capability in that arena, for sure: what else are you good at? Can you speak in front of a group? Explain multiple step processes to your luddite relatives? Make a mean seven-layer dip? In essence, what else are you bringing to the table?
  • ambition: you’ve got to have it. We don’t want Expensify to be your final resting place; that’s just not how this industry works. We want people who are mobile, constantly looking for a next great project, working on side projects of their own, and with big plans for the future. And we want to help you get there, too.

Generally, we’ve found that our best applicants also have the following in common:

  • programming experience from way before their college years
  • a zest for adventure – everyone on staff is a world traveler, and have what one of our engineers referred to as a “willingness to get into trouble”
  • curriculum vitae that extend far beyond the classroom and the office: your most impressive work was probably done for the fun of it, anywhere from a junior high school bedroom to an exotic beach somewhere (our preferred location)

The point we’re trying to make is: the expectations are high, but the rewards are higher, and if you think you’ve got what it takes, we’d love to hear from you. We’ll sponsor a visa, buy your lunches, and propel your career to the next level – if you’re the right fit.



Marketing Associate at

33 responses to The Hunt for Engineers: Expensify and the surprisingly difficult challenge of finding the right people


    The bit about pre-college programming takes me back …

    I wanted to learn programming in High School so bad but I was in Kansas. The Gifted Studies teacher barely knew how to turn a computer on.

    So she faked it. She went to the local college, photo-copied lesson chapters out of a book on C and gave them to me to study.

    The problem was, she didn’t know what a compiler was. Nor did I at that time ( this was pre-internet and there was no tech community in small town Kansas so hush now ). And the chapters she photocopied didn’t mention it.

    So I had all these programs written in text files that *she graded* and no idea how to make them run. I assumed she was running them in order to grade them and it drove me nutty that she kept dodging my simple question of *how she was doing it*.

    Eventually she convinced me that the Apples at school couldn’t run C programs but that her computer at home could which is why I could never see them go. The only other computer I had access to was my Dad’s apple IIe at home.

    This maddening quarter led to me Giving Up On Programming and turning to physics instead which always made sense. A resolution that lasted till my second year in college when I decided to take another stab at coding and about blew my top when the compiler was explained in class.

    So much time lost!



    I understand what you’re looking for, however, I think you should not expect long, masochistic hours as a pre-requisite but rather something that you have to inspire.

    I work over-hours for 2 reasons
    1) When the going gets tough, you are paid to step up (but not everyday)
    2) The work is so good, and I feel so excited by my personal input that I really want to do all this extra stuff

    If you keep on insisting on #1, as a matter of group-pressure to be your version of ‘awesome’… then I don’t feel like #2, and I leave.


    I think a major problem with software startups is the lack of understanding of the Agency Dilemma. You simply cannot expect employees to behave the same was as owners. Any expectation (working long, hard hours etc) otherwise is naive. Maybe you compensate your employees well, and maybe not, it doesn’t matter. The sooner you realize this the better.

    The other factor is that really good software people like to be treated like people and not like factory robots. Long work days don’t improve productivity, they add technical debt in the form of coding mistakes and poor planning. Maybe there are a few exceptions to this rule, but they are already working at places like Google and Apple, have PhDs and make in the high 6 figures. Or, they run their own shop where hard work and hours spent directly translate into increased revenue and success of their own company.

    What it sounds like you are really after is people strait out of school who don’t know any better and who will allow themselves to be overworked to the point of burning out. Once they burn out, you push them out and start over with someone new. Sure it might help build their resume but it certainly isn’t the right way to treat people. More likely you’ll end up taking an enthusiastic and brilliant young person and turning them into a bitter, jaded and miserable automaton.


    Are you trying to attract people to your company or encourage them to give you the widest berth possible?

    I cringed at nearly every sentence.


    As a general rule, if you’re going to ask people to work hard, you have to give them money. If you want them to work really hard, and they have skills you need, you have to pay them a lot of money. After all, you wouldn’t work without being paid, right Mr CEO? Right? The site is called “Expensify” right?

    At some point the pixi-dust and wonderful culture and “stop making soda and help me change the world” has to lead to dollars, you might look there for an explanation instead of trying to bamboozle a bunch of recent college grads into working for free.


    Rodney – Great comment. I see a lot of attention is on the long-hours part of the original post, but that’s actually only a small part of it. The challenge is one person’s “full days’ work” is another person’s “masochistic burn-out rate”, so it’s not an easy thing to generalize. But to clarify, as I see that’s where everyone’s attention is at, by “long hours” we actually mean “50 *real* hours a week” — so it’s not particularly long by startup standards, and explicitly intended to set a steady pace *below* the burnout threshold. If you can’t pull 50 real hours of work a week, then it’s true, we’re probably not a good fit.


    Anon – I’m not sure what’s “bamboozling” about the post; it seems to be pretty clear that we’re asking for a lot. Maybe what it doesn’t make equally clear is that we give a lot, too. I realize everybody says “We give extremely competitive salaries and more equity than most”, but well, we give extremely competitive salaries and more equity than most.

    It’s true, we’re looking for a different sort of person. One who works hard by choice, and who wants an opportunity to do great things. It’s not for everyone, I’ll admit. But if you’re reading this and thinking “My company doesn’t realize my potential; I want to do so much more” then I’d invite you to contact us.


    50 hours of “real” work a week? You’re asking for at least 3 times what most people can be expected to deliver from a full-time job. Why do I have the strangest suspicion you won’t be prepared to pay 3 times the market rate?

    Look, you’re a startup, you want people you can exploit and discard. That’s pretty much par for the course, and you should be admired for at least coming out and saying so, albeit indirectly. What’s less admirable is the way you seek to portray it as “because we’re just that good”. Nobody is THAT good, and only your friendly neighbourhood sociopath believes they are.

    And I’m sorry, but “sociopath” is not the attribute most people go out of their way to look for in their employers.


    This post about the job and your selection criteria makes me wonder if anybody is applying.

    When I hear a company wants you to be there at 5:00, I think about sweat shops.

    And when I see that they want somebody who is adverturous, I fear a chaotic development project.


    Is there a company rock-climbing trip? Is it mandatory? Do poor performers have “accidents”? OK, maybe I’m going a bit too far but really! Enough with this “company culture” business. You’re missing out on the potential 40 yo fat guy who lives with his parents and can duplicate the effort of 10 of your guys with 100 lines of Lisp in 2 hours. And then of course, there’s this little thing called “diminishing return” and “sustainable”. Hint. 50+ hour weeks are not sustainable. Been there. Done that. Oh, and as a potential customer I want to link you into my credit transactions… NOT!


    Just out of curiosity, what do you pay your developers? You can provide a high-low range or maybe a range based on what experience level gets what salary if you’d rather not give hard numbers.

    I only ask because to get people who work 50+ hours a week means you’re asking them to give up their social and maybe even family lives.

    Even the greatest programmer would want to leave at a decent hour if they have kids at home that need to be raised (and you don’t strike me as the “it’s OK to work from home” type).

    I can see how one can succeed at your company though – complete your projects, hang around until after the boss leaves, wear your favorite thinkgeek T-shirt to work, badmouth microsoft at every turn (sorry, that’s m$), be an “anarchist”.


    Dang it!! I didn’t read that very last sentence… “We’ll sponsor a visa…”

    I can see it now. A kid out of school works the 50 hours for a year or two and finds that it just doesn’t allow him/her to be the “world travelling adventurer” they used to be. They either want more money or they’re out.

    Expensify “sponsors a visa”, let’s the kid go.

    Problem solved, I guess, huh?


    Hah. Good luck finding someone without offering them partnership + over market wages + one crazy benefits package which includes a company car. 😉 No amount of wage slavery could have me get to the point where my friends call me “masochistic”.


    To be honest, it comes across that you are looking to hire H1B slave workers that are willing to work 12 hr days because you cats can’t get your shit together.

    If I ran my company that way, I would have been bleeding talent years ago. I do not advise that those wishing to have successful ventures adopt such tactics of low pay coupled with long hours. It’s simply not necessary. Pay a bit more rather than trolling the third world looking for desperate hires and get people that are 30x more productive. In 5 hours, that person does the equivalent of 150 hrs worth of work done by one of your desperate guys from overseas without a degree who will do anything to come to america.


    Jon – We do all that except for the company car. After all, it’s San Francisco. Who wants to bother with a car?

    But yes, I agree: it would be crazy to ask for so much without giving even more in return.


    Scott – With respect, the US doesn’t have a monopoly on talent. Furthermore, I’m not sure where this “low pay, long hours” statement comes from: it’s pretty clear we’re looking for 50 hours, and pay generously — irrespective of what country you’re from.


    I liked your post, and read a couple of more. I also read one that said you didn’t want .NET developers. And that’s just fine. I am not *just* a .NET developer.

    I can help you in more than one way. If you are interested, please get in touch with me via email.


    Interesting post. Hiring good engineers is a challenge.

    My own background is network engineering: routers, switches, wide area transport, data centers, etc. I am amazed at people that get their CCNA or go through Cisco Academy in high school or college and think they can do network engineering.

    There are server admins that swear up and down at the network engineers because the network doesn’t work the way the server admin wants. Apps programmers are even worse; they seem to lack any understanding of networking. Their apps make inefficient use of the network: Why can’t the network broadcast server updates from LA to NY? What do you mean that Access databases don’t work well across a network?

    I’ve done network engineering in one form or another for almost 25 years. Experience has taught me to expect the unexpected; solve problems with simple (not sexy) solutions; and focus on learning and understanding the basics. When you think you fully understand the network it will kick you. Some elegant yet complex solution horribly breaks when the CEO really needs something. People get too focused on GUIs and fancy “solution” drawings while not knowing how packets are formed and forwarded.

    Yes, good engineers are hard to find and harder to keep.


    David – also with respect, when you hire an American worker (or one authorized to work here), you can push the 50 hour work week and pretty much MUST give them something in return. When you hire your H1B workers, you can pretty much make them work whatever hours since you’ll be dangling the visa carrot in front of them.

    Now, to give you the benefit of the doubt, you might not do that intentionally but the H1B worker will always say YES to long hours no matter what since if he or she would be too afraid of being sent packing if they don’t comply. This now give you the incentive to NOT hire Americans since they can effectively “talk back” whereas the H1B worker cannot.

    You’ll eventually (probably already have) just wind up with H1B workers and justify it as “the US doesn’t have a talent monopoly”.

    Interestingly enough, Microsoft does this, too so I guess you’re in good company

    I’m curious – what does a typical coder make at Expensify (and is it the same for H1 and American workers)?


    TheRizal – I know it’s hard to believe, but we don’t alter salaries based on where a person comes from, or what their background is — it’s purely performance based. As for this insinuated exploitation of H1B workers, that just wouldn’t fly: great people have tons of options regardless of their visa status. And I assure you, they talk back as much as anybody, and we wouldn’t have it any other way. I understand you’re looking hard for something here to sustain your biases, but sometimes people actually are genuine. If you’re reading this and wondering if we’re for real, why not contact us and find out? I look forward to it!


    Wow, you sound like a real gem to work for. The kind of people you are looking for already work for someone else… THEMSELVES.
    Get real. Provide a good work/life balance and maybe you’ll hire and retain good talent.
    Lastly, if you can’t find good talent here in the US maybe you should rethink your strategy because you are obviously doing something wrong. Try checking your attitude at the door and quit being a pretentious asshat. The only person creating drama is you.
    Do your country a kindness and keep it local. Unless, of course, you get off on being a part of our countries demise.
    Go ahead and don’t post this. I know you won’t. Control freak.


    It’s pretty obvious why you don’t care if they have a CS degree: No one with a degree and any idea of how much their talents are worth would throw down 50 “long, hard hours” a week (apparently at minimum) for $???.

    Personally, I’d rather throw down 40 “regular” hours (30 “real” hours) for a 15% pay decrease and a 100% enjoyability increase. You say 50 real hours of work per week is below the burnout threshold, but what happens when the ship date comes up? Is that now 60 or 70 “real” hours of work? I’m assuming these “real” hours of work don’t including me chatting with my coworkers or taking a shit, so are we now really up to 80 hours a week sometimes (and 55-60 hours minimum)?

    If you answered “Well, maybe…” to my questions above, you may be starting to get a general idea of why the responses to this thread take the tone that they do.

    I can see why your hiring process takes so long. You are essentially waiting for someone with all the ability and technical skills to create a functioning startup from scratch with just a bit too little imagination to do it themselves.


    Hi Brandon, I understand what you mean by a lot of companies having “crunch time”. We don’t. The point of setting a good pace is you don’t need to have the regular boom/bust cycle, or the eternal “death march”. I’ve been in those companies too, and I hated it as much as anyone — I’m determined to make sure that doesn’t happen here.

    Also, you’re right: we’re looking for people who *could* start their own startups, and who probably will, but haven’t yet. Typically there’s some reason: lack of confidence, experience, contacts, capital — etc. But you’re right, it’s definitely not for lack of skill or enthusiasm.


    Wow, this post made me think my ex-boss was hiring… 50 *real* hours a week, at a constant rate… Are you kidding? This is not anymore ‘private-life-goodbye’ pace, this is ‘physical-and-mental-health-goodbye’. You are, of course, aware that 50 real hours of work implies at least 55-60 hours of ‘unreal’ work.

    So it’s either 12 hrs/day or 6 working days/week, full-steam-ahead… Yeah, sounds like my idea of the American Dream. Sorry to disappoint you, but I have that here already, in a God forsaken 3rd world country you’ve probably never heard of. Furthermore, for quite a hefty ransom too (waaay above avg wage). My guess, to your further disappointment, is that the amount of talent-effort combo you’re looking for is fairly rewarded in almost any place on the planet. At least fair enough to such extent, that the employee with such capabilities isn’t merely driven by the shear will to survive, to be willing to change one slave-driver for another.

    For the type of person you’re trying to find, you will either have to raise the stakes (although you haven’t been explicit in what you are offering, from the tone you’re using I’m guessing it’s not that different from any other self-proclaimed ‘life-opportunity’ start-ups; had it been different, I’m sure you’d have no problems in explicitly defining that high six figure reward you offer) or lower the expectations bar a bit. People are still people, or better yet human. With friends, families and all other things that make their lives what they are. Work-rest tool that you’re looking for will hardly be found among humans. Personally, I have no problem in adding some extra boost every now and then, but if it was expected from me to work constantly under that sort of pace, I’d see no purpose in such way of life.

    My point is, chill with the expectations, solid 50 hrs weekly, week by week, year by year (unless you don’t expect anyone to stick with you for longer then a year?), working for salary rather than for own company, is something no one will put out. Chances are, you’ll probably miss out on some potentially great candidates.


    Since you are deleting the posts, I will make sure to put them on twitter, fcbk, linkedInd and any social network or blog I know.


    Wow, I really don’t get the responses here. I spent several years working 70+ hours a week, and nobody was holding a gun to my head. I did it because I *loved* what I was doing. If nobody paid me to do the type of work I do, I would still do it. I’ve been at it since I was 4 years old. If you’re the right sort of person, writing code is like a drug. You lose track of time and you forget to eat. It’s an amazing rush to build something useful, something that no one before you has done, and that feeling really becomes the most important thing to you, to the exclusion of virtually everything else. I would absolutely still be doing this today if I didn’t have any kids. What exactly is wrong with looking for people who want to *voluntarily* do this in exchange for money? Exploitation has nothing to do with this – these guys don’t want to work with someone who’s in it for the money. They don’t want to work with someone who took the job because they needed one. They want to work with the guy who would feel like someone ripped out his soul if he was kept away from his work. Is that uncommon? Absolutely. Posting things like this that offend people who don’t share their values sure makes finding that needle in the haystack a heck of a lot easier, though. Good luck in your search. One wife and two kids ago, I would have offered to work for you for free.


    “We want you to work 50 hours a week and damn well enjoy it”. OK, well, good luck with that.

    I’ve bookmarked your blog by the way, tagged under “Jokes, Humor and Miscellaneous Hilarity”. Looking forward to your next post!


    The problem with your finding good engineers is that you’ve already gone off target. You’re looking for a particular type of person, not a good engineer. And that person is really more of a set of stereotypes than something that actually exists. Keep working at it, and stop “working” so much! Good luck.

Trackbacks and Pingbacks:

  1. RealTime - Questions: "Is computer science major hard?" - March 18, 2011

    […] […]

  2. complicated words | difficult words | hangman words | unusual words | words for hangman - March 18, 2011

    […] Make sure to also read:… On this subject see: […]

  3. CEO Friday: Why we don’t hire .NET programmers « Expensify Blog | (Liwyatan) francesc genové - March 27, 2011

    […] Posted in Announcements, Job « The Hunt for Engineers: Expensify and the surprisingly difficult challenge of finding the right&nbsp… […]

  4. CEO Friday: Is 50 hours/wk a Masochistic Workload? « Expensify Blog - March 31, 2011

    […] think the most interesting discussion actually occurred in the comments to the previous blog post, The Hunt for Engineers: Expensify and the surprisingly difficult challenge of finding the right pe….  I think the controversial statement in the previous blog was that we look for people with […]

Have something to say? Share your thoughts with us!

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s