Bring Your Own Team

Now here is an interesting idea: front-loading an aquihire by hiring a functioning team rather that a single person. As many of us know developers travel in packs anyway (I have worked with many former colleagues at new places) so bringing on a pre-existing team is an interesting idea.

Some immediate thoughts:

  • Developers might travel in packs, but it is usually over time and not all at once.  If you imagine an entire team leaving a company this seems very disruptive; the entire idea makes more sense for people that have shifted to consulting but tend to still work with a core group.
  • Navigating the waters of interviewing people individually vs. as a group: do you do traditional “tell me about your resume” interviews (ugh) or have them do a pilot project as a team?
  • What do you do when you like half of the team? Once it is time to make the hire / no-hire you might find that one person doesn’t fit your expectations but is crucial to the overall team’s output.
  • On that subject the post mentions engineering being the main focus, but what non-code-writing roles will they end up hiring for?  Would the person to lead the team be a pre-existing Stripe team member?
  • Hiring an entire team means you could need work carved out for them already (this is hard apart from greenfield projects)
  • Maintaining your culture would be harder as they would have a stronger pull towards whatever team culture they have already built.

Interesting idea; and some interesting feedback on the Hacker New comments.

MVP: Minimum Viable Personality

“Our engineers are all weirdos.”

If all companies end up becoming technology companies then the technology people end up having power. And power corrupts. We have all heard of stories where everyone has a dress code apart from the product development team who all ride scooters around and shoot nerf darts at the sales team as they try to give tours to prospective clients.

And we have also heard stories of very talented engineers who’s skills are not appreciated because of their demeanor (um, smell) or awkward social habits. Even something pretty harmless like their 365 piece set of Pokemon stuffed animals that are rotated each day can make managers feel like they aren’t “leadership material”.  (Well who the hell do you think is leading all those Pokemons?!)

These are separate problems but all lead to a “ceiling” existing for advancement for people who act in these ways and lead to a technical team that doesn’t scale.

Minimum Viable Personality

When I hire I always try to imagine if this person has the Minimum Viable Personality to survive talking to someone two or three levels above them in the organizational chart. Can they whiteboard out the solution and discuss its pros and cons without coming off as arrogant and not open to criticism? Can they shift gears when business priorities change even though the component they are working on is the damn prettiest thing they ever saw? Can they have small talk with the CEO in the elevator with bringing shame to the technical team and their families?

Power Trippers

And in an interview – a short slice of time – I look for any signs of arrogance.  Confidence is one thing, but if you are a jerk even a little bit to an interviewer it is a safe assumption that there will be a multiplier on this behavior and as you gain stability in a job you will be harder and harder to handle.  An interview is a very odd situation: you are given a good deal of attention and if it goes well some praise.  Humble people will respond differently in an interview than arrogant people.  They both will talk about their accomplishments but the color of their language will differ.  “We” is a word that I hear less with those that end up being bad hires.  “Well I built the system from scratch” vs. “my team built the system from scratch and I was the tech lead”.

If they have the minimum viable personality to survive they will grow and learn more quickly, and if they aren’t arrogant then the power they attain will not lead to bad behavior that undermines your goals.

The 5-minute Journal

Last year I bought, in some sort of moment of defeat against the capitalism of productivity tools, a product called The 5 Minute Journal after hearing a few people talk about it.

(Important note: since I bought it the creators have created the following video which would have made me not buy it if I had seen it before, probably due to my overwhelming jealousy. Who in Oden’s name gets to wake up like this?)

The product is meant to increase mindfulness and focus. The idea is pretty simple – you spend a few minutes answering the following every day:

Morning

I am grateful for ____ [3 things].

I am grateful for ____ [3 things].

What would make today great?  [3 things]

Daily affirmations.  I am… [2 blank lines]

Evening

3 Amazing Things that happened today… [3 things]

How could I have made today better?

2016-04-20 08.51.25

I bought the physical product and wrote in it, but they now have an iOS app.

Actual Science

The exact questions are based on positive psychology and the work of Dr. Martin Seligman (author of Authentic Happiness, Learned Optimism, and Flourish).  In his research, he has shown that remembering positive events, expressing gratitude, and focusing on our core strengths and help people climb out of depression.  I knew none of this when I bought this book; I simply heard Tim Ferris say it was cool and if you listen to enough Tim Ferris eventually you will try something he is trying.

My experience

First, I was surprised at how many times I forgot to do it at night. Apparently in the morning I have a very complex “getting started” ritual and an “end working” ritual, but no “going to bed ritual”. My getting started ritual always happens at my desk, but the good night ritual happens upstairs so I never saw the book to remind me to do something.

Once I established it as a habit it was very interesting to see what I put in there for goals and positive outlooks. An important detail to note is that during the time [sprint 2015] I was using it school ended for my kids, and both my wife and I tweaked our back (separately) and started going to physical therapy. It was at times very frustrating as health issues often are – I would feel better and then she would feel worse, and all the kids being around didn’t always help either of us rest.  It was a frustrating time and you can see this reflected in the journal. Rather than just being down about my back I would say things to it like “What would make a good day?” and I would put stuff like My back is the same, and my wife’s is a little better and I would have to say that to myself a few times – define the day-by-day by that criteria.  At the end of the day I would have to write that, in fact, our backs were the same or a little better and forced myself to define the day as a win.

Self-Affirmations

I could see this tool helping you to change the way you think slowly over time, especially with large goals. If you are looking to get into college telling yourself a few more times a day will not hurt you and will help you stay focused on that goal. And the “end of the day” items were very interesting – you dream about things you are worried or anxious or have just thought about, so a positive reflection on your day is and effective routine before you go to bed. It simply works.

I struggled to know what to put in the “Daily Affirmations” box. Struggling to figure out what I would put there made me end up putting a goal in there “working towards X” or a reminder of a core strength “good at coming up with ideas”. I never knew that a small book could turn me into Stuart Smalley but here we were.

Gratitude

Another thing that is obvious but made me feel good is that at the end of the day it served as a way to remember good things that happened. One of my implicit life goals is to hold my temper and be patient with my children. They do not share this goal, but I found myself simply writing down “did not yell at kids” or “good day with kids” or “0 tantrums from anyone” day after day and realized that things were going pretty well. And reminding yourself that things are overall going pretty well is a very powerful idea.  And the real revelation with this journal is that there were times when I wrote things I never would have expected like “nice sunset tonight”.

Chaos-Proof Your Marriage with Monkeys

The best thing that happened to our marriage is my wife getting so sick that she couldn’t walk down the stairs more than a few times a week. She was pregnant with twins and was having a side-effect of having hives all day and feeling sick. We saw a large number of doctors about it and learned how all of them looked when they had no idea what to do.

She was upstairs for seven months (the whole of the pregnancy), and I had two daughters to take care of: get to school, feed, clothe, argue with, etc. I did this in my standard fashion for a few weeks, and then things started to fall over.

First, we ran out of milk. Then ketchup. Running out of ketchup is like a methadone clinic running out of methadone. Then toilet paper.  The girls wanted to talk to me about things that I didn’t normally talk to them about.  The house needed to be cleaned.  The fridge and pantry became empty at a disturbing rate.

Also, I started to notice that I didn’t have anyone to back me up. I had to read and sign all the kid’s papers and clean out the van every few weeks, answer *all* of the mail, go to parent/teacher conferences, and have sad, hard conversations with kids that wanted to talk.

I was a single Dad during this time, and it made me a much better parent. Before my wife got sick I was a “bench player” and she was the star when it came to running the household and taking care of the kids. I backed her up and provided all the help I thought I could give, but I stopped short of full and complete responsibility for those areas. That stunk.

That stunk for her because it meant that she didn’t have an equal partner that was thinking about this stuff all the time and could provide ideas and stress relief. It meant that she lived with someone that didn’t know how difficult it truly was to take care of kids all day and be tightly-wound at night.


There is this idea championed by the Netflix organization that says that you should plan for chaos by creating it. The infrastructure to run Netflix, which during the holidays is 37% of overall Internet traffic (ugh) in North America, is as you can imagine vast and complex. They are leaders in providing always-on services, and many in my industry learn from their experience.

They use a piece of software called Chaos Monkey to test the fault-tolerance of their systems. You can imagine chaos monkey as a sub-system that randomly stops and messes with other parts of the infrastructure. If Netflix is a large room full of computers Chaos Monkey is acting like a literal monkey and unplugging, chewing through, and pissing on all the computers. And their software is disabling those computers and restoring power and firing alarms as these things are happening.

Overall, because of the chaos, they are much stronger.


My marriage had a very common anti-pattern to it: the less-involved husband. The extreme of this idea is the husband that comes in and grabs a beer and starts watching TV as his wife tries to cook while kids hang onto her feet. The most typical version of this is a husband that stops short of full responsibility when it comes to making decisions around the kids:

“Well, honey if this what you think is best.”
“I dunno what does the teacher think.”
“Sweetheart I’m too tired to think about this from my long day of (insert something that isn’t that hard here), can’t you just decide without me?”
“Talk to your mother.”

I can still be like this, but I know recognize it and try to push through and be better for her, for the family. And whenever more chaos arrives: sick children, family struggles, etc. I try to take it on directly and learn from it.

And, of course, this experience has taught me to appreciate my wife and all that she does.  There was so much “dark matter” of activities that I never saw that she did to keep things running.  I knew of some of it through weekends, but I didn’t appreciate how much work it was to buy vegetables on a Tuesday afternoon to save some money, or to keep an eye out for summer camps that were good for the kids.

If you learn from every struggle and approach every struggle with this attitude, then you end up being much stronger.  Because if there is one sure thing in life it is: you will have struggles.  Even if they aren’t literal monkeys pissing on your computers.

Halfway to Self-Help

I used to think that self-help books were complete garbage.

Every self-help book featured a high-energy person that seemed like they would be a bit much to handle in a stuck elevator.  They came off as un-intellectual; most of the books were centered around one common-sense idea: be positive, think long-term, be your best self, get up early, etc. In my mind being really into one of those self-help gurus wasn’t a sign that you were on-the-ball or successful but the opposite.

Recently I have been trying to speed up my rate of learning, so I have become open to new ideas and trying new approaches. Reading self-help books was one of the ways I intended to try something new and learn from others.

This year I asked for book recommendations from coworkers, friends, and the general Internet. I work with some very successful people (many of whom recommended self-help books), so I took their recommendations straight-up and got to learning.

What I Read

What I Learned

Reading this many books in a row of this nature allows you to see patterns more clearly.  Here are some themes across the books:

  1. You can change yourself – even things like your introvert/extrovert range and parts of your personality that you have been taught are fixed.
  2. Being positive does work; being relentless and not afraid of failure is a thing that works.  Like all the cliches say – how you handle failure determines a great deal.
  3. We all have negative scripts (“I’m not smart / young enough to do X”, “I will never earn more than X in a year”) and thinking that limit us.
  4. Having clear goals works better than crazy big goals.
  5. You can harness the power of negative thinking rather than let it hold you down.

Things I Didn’t Realize

Some of what I thought is true, but only for a few people

Yes, some of the self-help gurus are simply very charming people who are engaging in person. These people have great audiobooks, but their concepts fall flat in the sizzle-free ebook world where you survive only on your ideas.

Many of these books are backed up by science (or social science) or historical patterns

What has worked in the past works now in many cases, but humans love to re-invent things. Many of these self-help books are actually from people who have battle-tested these ideas in studies, counseling practices, business environments, sports, etc. They have won using the techniques.

Next Steps

I am only halfway through the list of recommended books (and at 51 books only halfway through my goal of reading 100 books this year).  From ones I list above the below changed my thinking and will stick with me the most:

My top five recommendations (in order):

  1. The Magic of Thinking Big
  2. The Obstacle is the Way
  3. Mindset
  4. The Talent Code

Happy Reading!

How to Generate Content for Your Blog

Heard some great advice recently that I’d like to pass along.

When writing a developer blog there is a tendency to try to be smarter than you are – you follow blogs and read books and you want to make something as good, interesting, and relevant as they are. So you write a couple of drafts and they don’t measure up, so you quit.

The better way to do it is to blog about what you just did. Maybe you ran a standup meeting, or debugged a strange query, or managed to calm down an angry team member. Maybe you ate a good taco while on a conference call. What you just did to someone else might be impressive (depending on the size of the taco) or useful and impressive (calming down a coworker).  You have no way of knowing if what you just did was good, interesting, and relevant to them.

Lessons on Hiring and Networking

I have been working as a software developer for over a decade to the point in my career where I know hundreds of people that are in my same line of work and can thus give (and receive) meaningful help for people in their career as they try to find full-time or contract jobs. In addition, many of my peers are in the position to hire people at the companies they work for (or in some cases at their companies).

Reaching this point has made me reflect on how I should have been networking with people that I’ve come across all along; how we should all treat each other.

Here comes some bulleted unsolicited advice about hiring. Everyone you work with, please remember the following:

Accept and Expect Growth

The ecosystem in which you operate matters. A great deal. People can be ineffective in one role or company but succeed at another. Don’t judge people based on one job (or even worse one project) at one place. In addition, people change over time – not just technical skills but soft skills as well. Claiming that somebody you worked with four years ago “isn’t good with customers” isn’t valid unless you saw them hit one yesterday with an umbrella (for no reason). If you don’t pay attention to the fact that people grow, then you will discount people that grow a lot, and these are the people you most want to hire.

Don’t Assume Local Reputation is Accurate

At times, you’ll see someone, and this applies more with those in manager roles, that does something that you don’t understand – they fire someone, they stop a project, they are on board with a change that seems destructive, etc. When you are a manager you know more information about what is going on across the company; some of these priorities and realities are quite different from what the average worker sees. Remember that you might not have all the information. Saying that a manager was a jerk because they fired Bill four years ago might not be valid. Bill might have hit people with umbrellas (or hit on people). Find out for yourself if possible, and don’t make a judgement if you can’t find out.

Gossip is (most of the time) about the person communicating it, and not the person being communicated about. Said another way, don’t let other people’s impressions of someone affect your judgement of them – see for yourself how good they are.

Don’t be a Jerk

If you have trouble not being a jerk in general then try this thought exercise: Imagine that every single person you work with will be in a position later to hire or not hire you at your dream job. Try to be professional, polite, and helpful.

Specific Case: Workers that are Different than you

There are two instances of being a jerk I’d like to call out: being a jerk to older workers and being a jerk to women. Unfortunately for our industry, which is full of WDWG (white dudes with glasses), these both fall under “people different than you” for most hiring managers.

Our industry thrives on the language of the now. We talk shop in very specific ways and isolate and eliminate those that don’t seem up to speed with what can help us in our current project. Older experienced developers (whether they have stayed technical or moved into management) use slightly different terms for the same thoughts: they might refer to server-side code as running on mainframes or call what we call ‘pages’ in a web context ‘screens’. They might mention things to avoid more often than younger workers and thus come off as negative. Do not let these slight differences make you not listen to them; they are full of good information.

Our industry seems like it innovates all the time, but the core problems – the really hard ones -remain and have been fought for years. How do you figure out what system to build? How do you write it down so that others can understand? How do you build and test software on large teams so that everything works together? How can you make maintaining the software as easy as possible after everyone leaves? These aren’t new problems and they are the sort of problems with which older workers have decades of experience.

There aren’t a large number of women that are software developers and many men in our industry really don’t know what to do when they come into contact with them at work. Male developers, even those that try hard not to be sexist, tend to assume that women are either less effective or are super-geniuses since they have had to face “hardship” being in the minority. Try to do neither and focus on merit; see for yourself.

Keep in mind one knee-jerk reaction that I’ve seen many males have (and have had myself) – to assume that someone who is better at all the soft skills that surround development { requirements, testing, documentation, team activities } is, therefore, less effective technically. There has been extensive research that women on technical teams are as effective and help build teams by increasing communication while at the same being just as effective on the coding side – do not discount their power.  Just because someone shows up on your team and can speak in complete sentences doesn’t mean that she can’t write code.

Be Aware of Why You Like Working With Someone

As you work with someone see how much you

a) like working with them
b) what their quality of work is like

You can be friends with someone and they can also be good at their job, but be aware that a) affects your judgement of b). Try not to let the short-term employment situation affect your judgement of longer-term skills like attitude and morality.

Handle Recommendations Carefully

This last point leads to the most common failure of the recommendation system by which many developers are found.  Everyone you enjoy working with is in a grey area between you just liking working with them and them being able to get a lot done and therefore not cause you stress.

When recommending someone communicate where this person is on your friend-trust scale. Recommending your cousin because he has good jokes at family reunions and works in your field is very different than recommending someone that you don’t like but respect for how effective he is. I’m not saying you shouldn’t try to help out people close to you socially, I’m just saying that to the employer these are very different situations and that you should be honest about which one is happening.

Practice Networking in its Pure Form

As much as possible try to share what you know with people that ask for help and are trying. Networking is not about doing favors with the expectation of getting one later. If you know something, share it. If you want to know something, ask for help. Networking isn’t about getting jobs; it is about having a crew of pleasant competent people that are on a logical greater team (outside of individual positions) with you throughout your career helping each other become better.

Make a List

Maintain a list of people that are a joy to work with. Maintain a list of people that you would hire to do a job in which all of your personal life savings is invested. For the love of all things keep in constant contact with anyone that is on both lists.

 

Finding Balance

Every one of us has learned how to send emails on Sunday night. But how many of us know how to go a movie on Monday afternoon. You’ve unbalanced your life without balancing it with someone else

Ricardo Semler 28 Sep 2007

One of the greatest benefits of a work-from-home ROWE (Results Only Work Environment) is that it allows you to have the tools to balance the other way.  For example, let’s say you want to eat lunch with your kids a few times a month at their school.  If you live 30 minutes from the office this means that one day a week you need to spend either an extra hour in the car or a few hours away from work (working from home for just that morning).  Eventually, this means that everyone would know that “David eats with his daughters at school on Wednesday and isn’t around” which, depending on your company culture, might turn into a Big Deal.

When you work from home chances are good that you live very close to the school and can pop in easily on days where your schedule allows it.  This same logic holds for doctor’s appointments, lunch with friends, and any other child activities.

Outside of a strict ROWE environment, this arrangement also gives you tools that you can use to better manage heavy workloads.  I have worked with startups in the past where I was working the type of hours that made everyone around me worried about me.  But when I do this in a remote situation nobody does because I can work very late at night and on Saturday/Sunday for a half a day each without truly affecting my family and social life.  This is a superpower that can only be given to you through a flexible work environment.

Personal Retreats

Every year I take a weekend to myself and go on a personal retreat. This tradition started years ago when I took a sick day from work and rode my bike from Atlanta to Alabama and back.  When I returned I felt like I had been on vacation for weeks: my energy and spirit were renewed and I was overflowing with ideas (and my legs were sore as hell).  The hours of mindless riding had given me time to think.

I decided to make it a tradition. Over the years, the activities have grown less physical but the core purpose remains the same:

  • Get away from typical activities
  • Get quiet
  • Think about my long-term goals across areas of my life
  • Generate ideas

I type up the following questions before the retreat:

For my roles (father / husband / employee / human being, etc.):

  • Am I headed in the right direction?
  • What could I be doing better?
  • What should I stop doing?
  • If I took my role as (insert role) more seriously, what would I change?
  • If I was to be judged only by one role which would I want it to be and what next steps would I make to how I act in that role now?

I ask myself these questions (and type up a few short answers) before the retreat, and then I just try not to think and let my mind relax and wander. I have found that the insight and relaxation that comes from these retreats to be invaluable. I considered this tradition a personal quirk that flows from my natural inclination to be an introverted-ideation-thinker-type, so I was surprised to hear about the book The Zen Founder’s Guide to Founder Retreats.

The book discusses a “founder” retreat although its advice isn’t specific to startup founders. This little book contains some great advice that I agree with from my retreat experience:

Start the retreat out doing nothing to get the worries of the day away and shift your mindset to relax a bit more. Unplug very aggressively – this is a “time-in” not a “time-out” from work, but not the day-to-day. 

My first retreat not-on-a-bike I found myself “catching up on work” which limited my success. The time away should be planned as a notification-less time as much as possible.  The book recommends using pen and paper (what are those?) for the planning and note-taking to enforce this.

Reflect on your past growth and successes as well as planning for the future.

The book guides you through some reflection questions around optimizing your business and personal development viewed through your past.  My natural tendency is to focus on areas of improvement which steers things negatively; this focused reflection reminds you of strengths.

Avoid making decisions when you are low-energy.

This really isn’t retreat-specific advice but is just good life advice.  The book uses the acronym: HALT (don’t make a decision when Hungry, Angry, Lonely, or Tired) They also mention avoiding big decisions when Vengeful, Irritated, or Ashamed.  No word on what you should do when Forgetful.

Ask Big Scary Questions.

Retreats are a great way to step back and ask scary questions such as “Am I in the right career field?“, “Should I quit my job and go pro with my juggling?” and “Can my marriage be saved what with all the fighting about juggling?

The book goes over this very well and points out that retreats are the best time to ask these questions but don’t put pressure on yourself to have an answer by the end of the retreat; the point is to examine it under the positive conditions of the retreat to help the final decision-making process.

Overall I loved this quick read and recommend it and taking personal retreats (even if they are just an afternoon) to anyone with any serious responsibility.  Check out The Zen Founder Guide to Founder Retreats on Gumroad.

What I Learned from Briefly Sharing an Office with Steve Jobs

Get Started Early

Steve used to come in real early. By the time I got there I could see evidence that he had already been there — discarded coffee cups, little crumbs of food, a mild odor in the air — he had obviously been there for hours. Haters and self-doubt sleep in; get up early and get in charge of your day.

Don’t Clutter your Office — Don’t Clutter Your Mind

My desk has always been really messy. My side of the office was just a huge wasteland but it worked for me; Steve kept his side really minimal and I think it helped him focus. I mean just look at his accomplishments versus mine — clean desks are clearly the way to do it.

Head Off-Site to Avoid Distractions

When I tell people that I shared an office with Steve Jobs for a few months they don’t believe me, but it’s true. I think at the Apple HQ he was probably always being interrupted with questions and meetings and he just needed a place to just focus on work. Go off-site to improve your productivity.

Focus on the Important Stuff

I never once saw Steve Jobs on the phone and he never took a meeting in our office. What was he doing then? Just working — gathering scraps of food, looking up at me, running away. Avoid the distractions of social media, world news, and the unimportant.

Disguise Yourself to Avoid Interruptions

Steve was really a maverick, but his methods worked. Disguising himself as a small mouse was certainly innovative, and ultimately it will be up to the historians to decide if it was a greater achievement than the iPod. But I’ll tell you it impressed me; I’ll always look back with fondness of our time together.

R.I.P Steve.

 

This a brief excerpt from my book yeah, sure which is on sale at Amazon.