Sunday, June 26, 2011

Equitable Equity: Fairness & Transparency in Equity Compensation

Let's face it, while equity compensation is quite common in the technology and new media industries, from the employee's point of view it is confusing and lacks the basic transparency that enables rational decision making. I posted about this some time ago (May of 2009) but took that post down because it had some issues that I wanted to fix up.  Well, now it is back and I've put some more work into thinking it through as well as getting feedback from a buncha folks.

The meat of it is this...

When considering an offer, particularly at a small startup, where equity is said to be a significant part of the compensation, the present ways of granting equity give the employee almost no way to value the equity granted as compensation. This is bad for the employee, but it is also bad for the company since many employees treat what may be a quite valuable part of the compensation package as "funny money" or valueless during their consideration of offers.

So, I packaged up my thoughts; threw in some of the feedback I have received from talking to everyone from lawyers who advise startups, to founders, to angel investors, and even a VC who lent a friendly ear and took my ideas about transparent and fair equity compensation to an audience. I gave this presentation on equity compensation from the employee's point of view this weekend at BarCamp Seattle. Here are the slides...



These slides can also be found here.

Startup Pay and Equity

Having worked at a couple of startups in my time, and currently looking at an opportunity to join another or start my own, I've been thinking about compensation. I'm gonna try to lay out those thoughts.

First off let's figure out what your rate should be. That is, how many dollars per year you are worth. I'll haul out that old economists' maxim, "The value of something is how much someone is willing to pay for it." So let's take your most recent job. How much did you make last year in total? Count salary, bonus, and equity (more on that in a minute).

That total number is your rate. I'm going to use it to figure out what your compensation should be at that startup you're thinking of joining.

But let's tackle that equity thing first.

If you were at a publicly traded company then your equity compensation is easy to value since the shares or options have a well defined value. But what if you were at a private company or another startup? In that case, if you have equity you need to see the capitalization sheet (shorthand for a listing of all of the outstanding shares, who is holding them, when they got them, and what they paid for them) to determine what your equity stake is worth.

You ask why?

Well, suppose your rate is $100k/year and I offer you $50k/year plus options on 100,000 shares. Is that a good deal? What about $50k/year and options on 1,000,000 shares? Look good now?

What if I tell you that in the most recent funding round the company sold an investor 5 million shares for $50k? That million shares of your represents $10k of value. A million shares sounds like a lot, but without seeing the cap sheet you have no way of knowing.

The formula is this; take the value of the total compensation being offered (salary + bonus + equity value determined from cap sheet) and compare it to your rate. They should be about the same.

There are reasons other than pay to go work at a startup. The fun, the excitement, the team, the lack of rules prohibiting bringing your dog to the office, the awesome late night jam sessions, the overwhelming stress of not knowing if the boss is really going to manage to close this next round of funding because he started the company to design software not spend all of his time fundraising and if he doesn't then all that equity you're holding is completely worthless and you need to start freshening up that resume and looking for another bland gray corporate job again. But I digress...

Now, here are some things to look for:
  1. Equity is "a large part of your compensation" but they won't show you the cap table.
    This almost always means that equity is not a large part of your compensation. They are telling you this to get you to swallow the small salary. They may think it is a large part of your compensation, but they may also overvalue their own company.
  2. You don't really trust the founders but they are offering you what looks like a great deal.
    There are innumerable ways for shady founders to screw the employees at a liquidity event. Everything from extreme dilution, to a very low sale price and an employment contract with the acquiring company for the founders that is "very generous." At the end of the day, you really need to be able to trust the founders to look out for you.
There's an interesting thing that just occurred to me. I have often heard people say that they want to keep their burn rate low (e.g. pay low salaries) in order to keep from having to give more of the company away by raising more funding. This only makes sense if you are under compensating the employees with equity. After all, if you say that we want to give you equity in lieu of pay then that equity must be worth at least as much as the salary you're trading for it.

If that were true then it wouldn't matter whether the equity was used to pay the employees directly or exchanged for cash to pay the employees' salaries. Either way, the equity is being traded away. The fact that some people are so loath to share the cap table info, thereby making the value of the transaction transparent, at the same time they want to push equity in lieu of pay makes one wonder.

I honestly don't think that most founders even think this through. I think most of them are trying really hard to do right by their employees. But it is one of those situations where the transactions are so convoluted that it is really easy to lose sight of the final outcome.

Bottom line, if equity is part of your compensation you need to see the cap table. You have a right to see the cap table. After all, you are an investor too. You are investing days of your life and that is more valuable than some angel investor's money.

Update 6/25/2011: I gave a talk on this at BarCamp Seattle and the notes & deck for that talk can be found on my Equitable Equity: Fairness and Transparency in Equity Compensation post.

Monday, March 23, 2009

Rewriting www to non-www with Apache2

... or how to make mod_rewrite your friend.

Like many other hipster sites in the whole new series of tubes we call web2.0, I wanted to have my site reside at http://helpleaf.com rather than the old, redundant, crappy http://www.healpleaf.com. So I tried to set that up. After all, how hard could setting up a non-www RewriteRule be?

Well, as I learned, not hard if you know what you’re doing. Since I don’t, it was friggin’ hard. But, after wrestling with this for a couple of hours I enlisted the help of my friend Brett who showed me the easy way.

Here’s what we did…

My domain registrar is GoDaddy, but I transferred DNS control to SliceHost where my site resides (and whose DNS control I like a LOT better).

Then I set up my DNS records. Because DNS admin tools are really different from host to host you'll have ot figure out the exact ways to handle doing the following DNS stuff.

My domain is helpleaf.com so I created an A record pointing from helpleaf.com. to the IP address of my server.

At this point I had a choice, either:

1. create another A record for www.helpleaf.com pointing to the IP of my server

or

2. create a CNAME record for www pointing to helpleaf.com

I went with the latter because I am less likely to screw it up if I change IPs on the server since there’s only the one A record to update. (Note that this causes more heat on the DNS server, but since my traffic is low… meh.)

Now the trickiness (this is where Brett comes in handy)…

change to the apache2/sites-enabled directory

cd /etc/apache2/sites-enabled

and create a new file:

sudo nano www.helpleaf.com

Here is the full content of that file:

<virtualhost>
ServerName www.helpleaf.com
ServerAlias www.helpleaf.com

DocumentRoot /home/bruce/helpleaf/public

RewriteEngine On

# rewrite anything incoming to helpleaf.com
RewriteRule ^(.*)$ http://helpleaf.com$1 [R=301,L]

# Custom log file locations
# so I can see the www traffic sources
ErrorLog /home/bruce/helpleaf/log/www.error.log
CustomLog /home/bruce/helpleaf/log/www.access.log combined

</virtualhost>

Just reload the apache2 config

sudo service apache2 reload

Let’s try that out. Open a browser and go to http://www.helpleaf.com.

Badda BING!

You should be redirected to http://helpleaf.com.

That’s it.

Monday, February 09, 2009

Seattle Startup Weekend 2 - Why are Good Developers Hard to Find?

I had a great time at Seattle Startup Weekend 2!

It started out slow for me. I despaired at first when the three things I wanted to work on either had too few people interested, the team didn't show up, or looked to turn into a business plan-fest. But then the folks who had gathered around a Twitter follower management idea finally showed up and the rest was... well... if not history... it was at least epic. Out the end of the weekend we had tweetsum up and running. The project will live on. It has already gotten me back into thinking about writing Rails applications.

Anyway, the subject of this post is why, in my opinion, some of the teams at Seattle Startup Weekend 2 (SSW2) had trouble finding developers. In a word; engagement.

There were a couple of teams that were strongly driven by "business folks". These team did not seem to want to engage the technical folks in give and take about what the business would look like and what to build. The business folks do business things (like plan and require and direct) and the technical folks do technical things (like code and configure and follow directions).

Sweet!! A day job!

Now, I'm all for having a good business model and a way to monitize your thingie. But there were a couple of teams that clearly thought of the people with development skills as a resource to be used.

Emphasis on used.

I heard from a friend that his group was building something that the group organizer had brought to SSW2 pretty well fully formed from a "what we want it to do and look like" point of view. The team just wasn't open to input on ways to improve it.

Okay, whatever. Just go find another group, right?

People were amazed at what the tweetsum team got done in just two days. We were able to do this because everyone on the team could do, not just direct. Each and every person was able to contribute directly to getting a site up and running. There was not a single person on the tweetsum team that did not code, configure servers, or perform some other core technical function.

But this is the key thing... they were free to do it any way they wanted.

(For reference, that's tweetsum's specification and process documentation sitting on the folding chair.)

That's right. We had a wealth of developers and designers and technical folks. And we had them specifically because it felt as little like a corporate day job as was humanly possible. In psychobabble terms their locus of control was internal as much as was possible.

The next time you're trying to recruit a team and are finding developers and other technical types hard to find, offer to share control with them. You'll get a lot more interest from the technical folks if you engage them instead of direct them.

Thursday, February 05, 2009

How to Disable the Confirm File Delete Dialog

The Windows Confirm File Delete Dialog may be one of the most annoying things ever.

You see there's this thing called "the recycle bin" where my files go to when I delete them in Windows. So why the heck do I need to confirm that I want to move something to a place where I can later recover it anyway.

Okay, I'll stop foaming at the mouth any minute now.

On the up side, the folks at Microsoft seem to have actually thought this one through and there's a simple solution. I thoroughly expected to have to hack the registry again. But no...


Here's how to do it:

Right-click the recycle bin and select Properties.

Lo and behold! At the bottom of the properties dialog is a checkbox for "Display delete confirmation dialog".


Sweet! Just un-check this sucka and click OK and Bob's your uncle!