In his Keynote Address at Texas JavaScript 2013, presenter Harper Reed, former CTO at Obama Biden Election Headquaters, talked about his experiences and lessons learned based on three overiding themes: build a great team, practice for failure, and faciliate community.
- On hacking:
- Recommends reading Hackers: Heroes of the Computer Revolution
- Hacking is sharing, opennes, collaboration, and engaging in the
Hands On Imperative (where “making is thinking”).
- Worked at Threadless, an online t‑shirt company.
- We invented crowdsourcing.
- We take a design and put it on a shirt.
- Four steps to working at Threadless:
- Design a shirt
- Submit a shirt
- Scoring of the shirt from community
- Cash money.
- Result:
- 100k of shirts submitted
- Millions of tee shirts sold
- Grew from revenue of $x millions to $xx millions
- We did none of the hardwork
- The crowd and community did the hard work which was fun
- Our team was able to focus on product, not on technology
- I had accomplished my goals at Threadless, I quit
- Went on Vision Quest and got hired by Obama Biden Campaign team
- The Obama re-election team transitioned from politically-tight
people to engineering focused.- For 2012, they need something different to the shock of
others: “hired engineers to do enginnering”.- Hired ~40 engineers and ~120 tech staff in 18 months fromall over to “web scale”
- Started out with zero, just pile of code.
- Execution, couldn’t get fancy
- We invested early and built platform called Narwhal
- Narwhal is a focus on bottom foundation.
- It wasn’t an app, as the press liked to have believed,but the name for all of our APIs
- With the API foundation in place, we can build toolsincluding:
- Call tool Mobile apps, Contribute. Social
- Dashboard
- Mobile apps
- Contribute
- Social
- In total, there were ~290 products, deployed weekly on1,000s of servers
- We used any technology that was able to solve the problem.
- This included Python, Ruby, MySQL, StatesD, Graphite,Puppet, Vagrant,… pretty much all the things!
- We weren’t a “Python shop” or a “PHP shop” or whatevertehcnology of the month was as we didn’t want to stopanyone from using what technology they wanted to use.
- Instead, we foucsed on what simply solves the problem.
- For example. Dashboard was done in Node.js since weliked what that community was doing.
- We invested heavily in user experience
- User experience heavy investment
- We talked to users to help build products that wereusable and not merely functional.
- Performed a lot of A/B testing, which allowed us tounderstand where we were wrong
- Did you know that the Groundhog Day movie is reallyismulti-variant testing?
- Fail Safety
- Early in the campaign had chance to see the last Shuttle launch.
- The goal of fail safety when we were sending people on shuttles is to get people into space without killing them.
- Error states should always be helpful or where a user has the potential to be lost or hurt.
- 404 pages should redirect people to different parts of the site and ask users to do different work
- Users are not stuck in a fail state
- Practiced gamedays
- For a month, called “October”, they practicedpotential scenarios where items and compenents of thesuite of tools would fail.
- On Election Day, there were no more changes.
- Since people were trained and knew what to do, there wasn’t any politics.
- Gameday entails:
- Destroying all of our applications
- Destroying our database
- Seeing how we needed to patch things
- Then the next day Amazon’s cloud services went down on the East Coast and we were prepared to handle it.
- The AWS rule: “If netflix is down, you are down too, if netflix is up, but you are down — you are screwed.”
- Facilitate community
- Users are the power behind your brand and is oftenunderestimated in developing it.
- For example, moderation is hard to do and no onereally enjoys it.
- Insert a flag button to allow users to let you know when something about the site or other user’s contribution isn’t appropriate.
- This empowers your community to moderate your content
- Sort of like Minecraft for social web sites
- This allows for the building an environment of trust.
- You have to create a place users can flourish
- User experience heavy investment
- Working with teams is hard.
- “Manage by your outbox, not your inbox” — Larry Bacow
- Often times we wait for people to email us and whatwe really need to do is reach out to them.
- Send out simple emails by 9am every morning and,surprisingly, they write back.
- Diversity in the workplace is important.
- He found the time with the most diversity have begetthe most innovation.
- We do crazier stuff and build value for a lot morepeople.
- Roll forward. Never roll back.” * Etsy
- Rolling back code was emotionally draining.
- Instead, add and fix code to move forward.
- “Manage by your outbox, not your inbox” — Larry Bacow
- For 2012, they need something different to the shock of
- Lessons learned from his experience as a hacker and manager include:
- Building a great team isn’t straightforward or easy:
- After exerting so much effort into building a team,sometimes you need to let people go and don’t be afraidto do that.
- Poisonous people can ruin teams, but don’t drop therelationship. That person might be good on the nextproject
- Hire people that are better than you
- People that are A’s hire A’s and B’s hire C’s
- Knowing that we could throw things away, we didn’t document
as much:- We tried to do dilerberate code.
- A lot of Harper’s job was managing trust including askedto be at weekly internal meetings with Obama relectionexecutives letting them know things were okay.
- Practice for failure:
- Failing sucks, but important.
- Instead, work at being terrible at failing.
- Create an environment worth trusting and remember to SHIP
PRODUCT:- You will feel better for having deployed code.
- Your customers will feel better seeing progress.
- And your team will feel that they aren’t just working forthemslves and producing.
- Building a great team isn’t straightforward or easy:
Chris, thanks for taking and posting these notes.