Notes from Andrew Hao

The 10 Practices of Healthy Engineering Teams – Part 1

By on in Culture, Development, Process, Startups

Behold the engineering team at SuperStartupCorp: their steady delivery of features, humble reception of feedback and crafting of well-architected software systems earn them praise up and down the company. The team greatly enjoys working together, and consistently leaves the office feeling accomplished, empowered, and happy.

happy_engineers

How is this team able to consistently deliver features for the business, while maintaining morale in a changing sea of fluctuating product requirements, leadership changes, and unplanned site emergencies? It wasn’t always this way.

Read on to learn the first three steps to this team’s journey towards engineering happiness. And don’t forget to read on to Part 2 and Part 3 of this series.

Continue reading …


Creating the Dream Team: Transform Your Engineering Organization to Attract New Talent

By on in Culture, Process, Startups

The organization you've wanted to work for

It’s a common scenario for tech companies: Your hiring pipeline is dry and you can’t seem to attract new talent. You notice companies touting long lists of superficial benefits. Instead of improving your internal team, you find yourself worrying about getting a pro-grade ping pong table for the break room.

You don’t need helicopter rides or Massage Mondays to bring people into the fold. Instead, focus your energy on making lasting changes to your company’s DNA. It won’t be easy, but the results will keep your existing team happy, which translates to positive conversation about your organization. Here are a few strategies to get you moving in the right direction.

Continue reading …


Docker, Rails, & Docker Compose together in your development workflow

By on in Development, Docker, Ops, Rails

Docker on Rails

We’ve been trialing the usage of Docker and Docker Compose (previously known as fig) on a Rails project here at Carbon Five. In the past, my personal experience with Docker had been that the promise of portable containerized apps was within reach, but the tooling and development workflow were still awkward – commands were complex, configuration and linking steps were complicated, and the overall learning curve was high.

My team decided to take a peek at the current landscape of Docker tools (primarily boot2docker and Docker Compose) and see how easily we could spin up a new app and integrate it into our development workflow on Mac OS X.

In the end, I’ve found my experience with Docker tools to be surprisingly pleasant; the tooling easily integrates with existing Rails development workflows with only a minor amount of performance overhead. Docker Compose offers a seamless way to build containers and orchestrate their dependencies, and helps lower the learning curve to build Dockerized applications. Read on to find out how we built ours. Continue reading …