Why a Single Point of Failure Can Be a Good Thing

I’ve been working in the corporate world for a while now, and I finally have figured out my personal difficulties with the transition from a small company to a large one. I’ve been there for the growth of two companies from a relatively small number of people to a larger one. The first company grew like wildfire and is now doing massive layoffs. The second company seems to be doing quite a bit better, but there’s significantly more tension than there used to be.

Working for a startup is a lot like having a child. The company is uncertain, it’s unprotected, and it’s completely dependent on other people to make sure that it grows up and succeeds. Like a parent, each member of a startup contributes something huge and important to the company. Without any of the various pieces, the company would fail quickly, and everyone in the company knows it. But, also like a parent, each member of a startup is almost religious in their devotion to the company. Every member is a spof (single point of failure), but the whole thing often ends up feeling a lot more like family than work.

Now that the company I work for is more of a corporation than a startup, there’s been a lot of talk about spof and how I need to fix that–we need to hire more people, train them to overlap my job, and ensure that if I’m out, my projects won’t fall to the wayside. I understand the need to feel secure in our company’s capability, but the sense of devotion and radical fanaticism to the company I work for has nothing to do with its well-being. It all hinges on the feeling that I, as an individual contributor am needed–and badly. The more I’m needed, the more I’ll throw myself into the mix, the more I’ll work late nights, the more I’ll innovate, create, and expand what I do because I have the opportunity to help make the whole thing better.

This is not better for my social life, my side projects, or my blog, but it’s significantly better than the alternative. My company no longer needs me. They want me around (I hope) but the only thing standing between me and layoffs is money, and the ability for the company to make money is no longer directly influenced by me. I’m a cog in a machine, and it’s by design that I’ve lost the ability to be more.

I wonder if there’s an alternative to the malaise I feel. Do people show up to Microsoft every day and say “god I’m happy to be a programmer here?” If so, where do they find their satisfaction? I suppose if I had kids myself, I’d be feeling the priority shift, but if it’s done right, startups don’t have to completely take all your time either, they just need a little extra love.

Yancy’s Law of Optimal Delay

A computer science professor at Cal Poly, San Luis Obispo, came up with a law that for any given task, there is a point between procrastination and quality that provides the optimal result.
For example:
You are given an assignment that is due 2 months from now that requires 1 week of work.

Example 1, the early bird:
You begin immediately, you will finish the task with at most 8 weeks to spare.
Unfortunately, your professor then cancels the assignment 3 weeks in and you find that you’ve wasted a week of your time for nothing.

Example 2, the procrastinator:
You wait till 4 days before deadline to begin.
Your quality suffers and you get a bad grade.

Example 3, the optimal delay:
You wait 6 weeks before beginning and take extra time to do a good job.
Your teacher probably won’t cancel their plans last minute, so you’re safe.
You get a good grade and you’re sure you didn’t waste your time.

This applies well to classes, but also applies very well, I’ve found, to the real-world example of my job. I often have tasks that get re-prioritized, canceled, or changed, and this law helps me ensure I’m always on task with something worthwhile.

SayMedia is Hiring

My job is an amazing place to work. We build online advertising and much of the problems I’ve posted about here are the result of my work at Say Media. We’re using Javascript, PHP, and Actionscript to produce a fast, stable, simple UI system that couples to a backend produced by Hadoop and Hive, Perl, Python and Django. Our daily problems range from dealing with scale (billions of viewers) to usability.

As a company, we’re still growing by leaps and bounds, but have good people at the helm. I can’t think of another job I’ve enjoyed more from the technical aspects, and the people here are the best I’ve ever worked with.

Send me your resume and I’ll do my best to get you an interview.

For our list of jobs, check out http://saymedia.com/jobs.php

Welcome!

This is the first post on a long journey of my learning. I felt that I had to do so much searching to find exactly what I was looking for that I’d start keeping it all in one place. I hope it helps you find what you’re looking for as well as helping me remember what I’ve learned, where I’ve been, and how far I’ve come.