Hiring Creative People
Smart solutions which remove toil and grind may take several lightning-fast full-time employees off the line during implementation. That's why creative problem solvers have to create a smart solution that isn't just faster than the average railroader – but that is faster than John Henry.
Dogfooding, or, a Skeptic's Journey
I didn't see the point of beta testing on my own, at home, even if there was no expectation beyond just trying it out. Dogfooding felt like needing to work in my spare time, using my personal stuff to test it, and I just couldn't see what that would gain me in either my personal or work life.
On Being a Work In Progress
SpiderOak doesn't quite follow the "What Works" philosophy; we instead focus on "What Works NOW". The upside is that as our company grows and changes, we alter our processes to best suit our current needs. The downside is that this puts us in a state of constant evolution.
Streamlining Tests for High Quality and High Impact QA
Just as an over-the-road professional driver can experience Highway Hypnosis from consistently engaging in the same activities, QA Analysts performing the same series of tests in tight succession can slip into a state in which everything starts to look like a bug, or nothing looks like a bug.
SpiderOak's Continuous Integration
Over the last few years at SpiderOak we've continuously directed our efforts to improve our Release infrastructure. We have covered everything from our repository workflows to the way we deploy our services, artifacts and deliverables both to the public and internally.
On writing specifications
Making sure everybody knows everything they need to accomplish their job is tricky. Was Jane in the conversation with John about the design of the new feature? Was the conversation out loud? Does everybody remember the same outcome? One of the ways we handle this is by writing specifications.
The Gripping Story of an Unlikely Kubernetes Cluster
One of the things I love most about my job is diving into the technologies we use and exploring the edges and how components fit together. This sometimes leads to new ideas and unexpected uses for things we may have been using for quite some time.
Single Dockerfile across development, CI and Production
This article tries to summarize how we came up with a solution to use a single Docker image among all our different environments for our Python services. We have been inspired by other projects where an entrypoint script is used to customize containers at startup depending on environment variables.