Being Exceptionally Exceptional

Recently at work we had a founders award to reward individuals that have made a “founders level contribution” to the company.  This award is not merely for top performers but for people who make such a great impact on the company that the company would not be the same without them.  These are people who perhaps prevented the company from failure and/or are instrumental in the overall success.  In a world of “rock-star developers” “ninjas” and “linchpins”, what does it take to be exceptionally exceptional?  I am going to be brutally honest with these points.  These points will both go over what it takes to be instrumental in a company and what it takes to have people recognize it.

  1. Going way beyond your role – Even if your role includes a lot of responsibilities, you need to go above and beyond your role.  Constantly fix and improve everything you can get your hands on.  Go out of your way to make clients happy and get new clients.
  2. Work many hours – I think the sad truth is you cannot work a general work day (8 hours 5 days a week?) and be exceptionally exceptional.  If you come in at 9 and leave at 5 every day on the dot, you are not going to be in this category.  I’m sorry.  There is just not enough hours in the day to do your role and to go above and beyond.  Maybe if you take some performance enhancing drugs you can do it, but I doubt that is a good option.
  3. Push hard upwards – I am not sure a better way to phrase this, but you need to push on your managers, their managers, and up the chain for more responsibilities and to improve what you see.  Not only will you get more visibility,  you will get placed on projects that are more important and have more visibility themselves. And the muckedy mucks need to know how hard you work and that you are hungry.
  4. Be lucky – No matter how hard you work, luck is very important.  Sometimes being at the right place at the right time allows you to be staffed on a highly important project.  Or maybe you happen to be chatting with someone and get a brilliant idea on how to improve the company.  Or you happen to have a college roommate that works at a company that can be an important client or partner.
  5. Be on the right team – This may be a controversial statement, but being on the right team increases your chances of being viewed as exceptional.  For example, if you work at social startup XYZ and you are in charge of the team building the now highly successful mobile app to compliment the web site, you have a much higher chance of being viewed as exceptional than if you worked on the back-end team.  On the back-end you would have to invent something like kafka to be viewed as exceptional.  Imagine what a person on the client client services or a developer evangelist team has to do to be viewed as having a massive impact on the company.  To be fair, a technical operations individual received the award at my company but that is because he has spent many a night holding together systems with his bare hands.
  6. Make allies and not enemies – For both the perception aspect and having access to great projects, you need to have a lot of allies.  I know playing politics sucks, but it definitely helps.  It is probably more important for the perception piece.
  7. Have a good manager – This definitely will help you get good projects.

There you have it, my thoughts on how to be “exceptionally exceptional.”  If your goal is to have a great and important impact on the company, these points might help you.  Though you have to wonder, is the juice worth the squeeze?

Good Luck,

Fallacy Of Startup Within Bank

Every now and then I get a recruiting email talking about a “startup within a top bank” or “startup environment within a top financial institution.”  If you are an engineer then you probably have received these emails too.  This concept is completely ludicrous.  I am not knocking working at a bank, just the selling point of a startup at a bank is a complete lie and bait and switch.

I am pretty sure big banks don’t even know what it means to be a startup or have a startup culture.  The only things they know about startups is from what they read in FT (Financial Times) about game rooms at Google and what they see on the TV show Silicon Valley.  I was once talking to a Managing Director at a bank and he was trying to understand why engineers were leaving.  He said “I’ll put a damn Foosball table in the office.”  Clearly he didn’t get how horrible it was to work in his group nor did he understand why engineers want to work at a startup.    The old guard at banks sit on ivory towers and have no clue about how (many) engineers want to avoid politics, learn and use new technologies, make autonomous decisions, work in a relaxed environment, etc…

Even if there were some group within a bank that actually mimicked the startup environment, it is guaranteed to not last long.  Banks are typically good with money and tend to have high turnover at the top.  When a new big wig comes in he or she (probably he) will see this group as crazy, too big of a cost center, unprofessional, etc.. and will revert everything to whatever the bank standard is.

You can’t blame banks for acting like banks.  You just have to be realistic with your expectations of what a “startup culture” within a bank will actually look like.

Good Luck,

I Will Do It Tomorrow

“I was supposed to go to the gym today but I think I will just go tomorrow”

“I will work on my side project tomorrow”

“I will update my resume tomorrow”

How often have you heard or said things like these quotes?  How often have you pushed something off until tomorrow for no good reason?  You say it with the best intentions and actually plan to do something tomorrow instead of today.  But it seems that fate / bad luck doesn’t like this and something will come up tomorrow to ACTUALLY PREVENT you from doing what you want.  Maybe you will wake up sick, the gym will be closed, you have to stay late at work, your laptop dies, etc…

Don’t push anything off without a good reason.  Fate will smack you for doing it.

Good Luck,

Seeking Engineer For My Questionable Startup Idea

“Seeking an iOS engineer to build an MVP for my startup.  Applicant needs to have 3 years of experience.  Role is a paid part-time job”

I see posts like this on a weekly basis.  I appreciate the fact that people would like to get their alpha app built.  The problem is that building anything functional, pretty, and usable isn’t easy.  Even with an MVP where you can cut corners it still is complicated and time consuming to build an application, especially a mobile one. And people who are skilled at building mobile apps aren’t just chilling neckid on their couch waiting for the next opportunity (except for me). iOS developers are in high demand and good ones tend to have jobs making good money.

So what DO you do if you want to build an MVP?  Here are you choices

  1. Hire a freelancer from a freelancer site – You can hire a freelancer from one of these sites.  Your mileage will vary greatly.  Probably your cheapest route, but you get what you pay for.  Chances are you will get a piece of crap.
  2. Hire a local design firm – These companies specialize in building apps.  It’s easier to get a better product by using a firm than a random freelancer.  You can do research on their portfolio, have live meetings with them, etc…  And if they screw up you can hunt them down and smack them (just because they are local doesn’t mean they are good at what they do).
  3. Hire an outsourced design firm – This is a company somewhere outside of the US that specializes in building apps.  It will be harder to guarantee quality like you can with a local firm, but an outsourced one will probably be cheaper.
  4. Learn to build yourself – If you have the time it is worth it.  You know, to actually understand the ins and outs of your product.  But most people don’t have the time and learning can be tough.
  5. Build a disposable mobile web app – It’s a lot easier to build a web app that kind of works mobile than it is to build a native app.  There are a lot of responsive ui frameworks and templates to get you going.
  6. Find a tech lead that believes in the product – This might be tough because your product is probably dumb.  But finding a tech lead will be a long term investment that will help you go from MVP to real product to $$$

Good Luck,


Long-term Ownership Problems

Long-term ownership problems can plague startups and tech companies trying to move fast and build a lot.  By “long-term ownership” I mean the ownership of a product, application, service, feature, etc… after it is live in production for some time.  This ownership exists both on the product and engineering side.  Long-term ownership involves the ability to maintain, debug, fix, understand, and add features to an existing application.  Problems that arise include:

  1. Poor Documentation -Often engineers don’t document their code perfectly.  Product managers may not write the most detailed product specs.  It can be very hard to revisit a system without thorough documentation.
  2. Forgetting –  The longer it has been since a product was built the harder it will be to remember the nuances of a product.  Engineers and product managers may have worked on other projects in the mean time.  Even in the best case scenario there are good product and tech specs along with code documentation (which is super rare),  people will have to relearn a system.  This will take time and be error prone.
  3. Attrition – When employees leave for whatever reason they probably will not be able to hand over all of their knowledge to someone else.  System knowledge will get lost as people depart a company.
  4. Resource Allocation – As a company builds more and more features, it is hard to staff ownership.  A single person can only understand, remember, and work on so many products at once.

I feel that as time goes on, a lot of these problems silently happen.  This leaves a lot of products running in production in a very precarious position.  People have to scramble to fix or add to these products.  In a later blog post I will write some ideas on how to prevent these problems.

Good Luck,

Circuit Training

It is important to get cardio exercise in with strength training.  I try to run 1-3 miles 1-3 times a week, but sometimes it is hard to run.  Often I am tired from a previous run or I just don’t feel like running.  One of my big barriers to running is that it can be pretty boring, especially when running on a treadmill.

Circuit training is an excellent cardio exercise alternative to running.  This  training is basically a bunch of full body exercises, using body weight or some sort of added resistance, that are done in high-intensity.  You do a lot of different exercises at high repetition with little pause time between the exercises.  There are a lot of classes and fads that fall into this category, like boot camps, p90x, insanity, etc…  It is considered high intensity interval training.

There are a lot of great reasons to do circuit training.  Since you are mixing up various exercises together, it is not boring or monotonous like other cardio exercise routines.  You can strengthen various muscle groups while getting your cardio in.  To me it feels more effective/tiring than typical exercises like running, cycling, etc…  I am not sure if it actually is any better than typical cardio, but I’ve been told that since it uses multiple muscle groups it burns more calories.

Creating a circuit routine is pretty simple.  You can take a bootcamp class at your local gym and recreate the steps, or google for a routine.  Typically a circuit routine it is 3-7 exercises that work different muscle groups where you do high reps of each exercise (something like 12-20).  Usually you do a circuit and then rest.  You repeat this twice (so do the circuit 3 times total) and then move onto the next circuit.  I typically do about 3 circuit groups.  Make sure you are doing an intensity that actually causes your heart rate to go up and for you to get a burn.

Good luck,

Bathroom Chumps

Yesterday my friend Shama requested a post about Luna the kitty or bowel movements.  So I decided to write a post about bathroom etiquette.  Here are weird activities I’ve noticed at office bathrooms that should not happen.

Answering your phone – Don’t answer your phone in the bathroom.  The person on the other end of the call doesn’t want to hear bathroom noises and people in the bathroom don’t want to hear your conversation.
Phone sound effects – Sure your phone’s default is to make a noise very time you press a key.  But do you need it?  All those noises disturb people in the bathroom.  Put your phone on silent.
Whistling –  Same idea as above, people don’t need to hear you whistle in the bathroom.
Multitasking – We are all in a rush, but you don’t need to brush your teeth while you use a urinal.  It’s just weird.
Open your pants at the urinal – This seems to be a new fad.  Don’t undo your belt and pants at the urinal.  Nobody wants to see your butt and undies.  Your pants have a fly, use it, you aren’t 4 years old.


Good luck,