Adam Drake

Right Now

I help boards and executives at growth-stage technology companies continue (or resume) rapid acceleration by advising them on improving their leadership capabilities, operations, and technology. While I specialize in executive advising on leadership and process, I can also dive into deep technical problems with Data Science or Software Engineering departments. Feel free to contact me directly to learn more.

I have a few tech projects in progress that will undoubtedly become blog posts. I’m working on an e-book about leadership in organizations, as well as a field manual for triaging performance and architecture in growth-stage startups. I sometimes write code for open-source projects like TinySite and CompressTest. I also work on ApplyByAPI, a tool that helps companies focus on quality over quantity in their tech hiring process.

Recent Publications

Filtering for better tech hiring

September 6, 2017

Filtering for better tech In a previous article, we discussed a redesigned hiring process based on generating inbound demand coupled with effective automated filters. Ensuring that this process is streamlined requires further filters that determine the quality of your candidates with minimum friction at each step from application to employment. In this post, we’ll talk a bit more about the steps in that filtering process, how to design them, and what to consider along the way. [Read more]

Rethinking hiring

September 5, 2017

Rethink hiring: how automation helps tech startups get ahead Hiring is almost always difficult, especially when the hiring process isn’t designed in a way that supports the company’s objectives. In this article I’ll outline a few key points to imagining and redesigning the hiring process. We’ll discuss a focus on generating inbound applicant flow, minimizing steps in the hiring process by maximizing information gained at each step, and increasing use of automation throughout. [Read more]

Teammate to Team Lead

August 1, 2017

Introduction Growing organizations go through many changes on the journey of scaling up. A common one is the creation of new teams, and consequently, new team leaders. As startups move from teams of people, to teams of teams, former peers become leaders and must learn to excel in their new role. How do you tackle the challenges of being viewed differently and commanding a new level of respect, while at the same time remaining humble and approachable to your team? [Read more]

Faster command line tools with Go

May 29, 2017

Update After some input from u/epiris on Reddit, I improved the code a bit further by changing the way bytestreams are scanned. Current fastest runtime is 0.308s for 10,512,769 rows, or about 34 Million rows per second. Since the file is 184 Megabytes, this is a processing speed of about 600 Megabytes per second, which is probably close to the read speed limit of my SSD. It all started with a blog post, Faster Command Line Tools in D. [Read more]

Enough with the microservices

May 20, 2017

Tl;dr: Don’t even consider microservices unless you have a system that’s too complex to manage as a monolith. The majority of software systems should be built as a single monolithic application. Do pay attention to good modularity within that monolith, but don’t try to separate it into separate services. – Martin Fowler If you can’t build a well-structured monolith, what makes you think microservices is the answer? [Read more]

Enough with the microservices (Chinese translation)

May 20, 2017

资深架构师Adam Drake在他的博客上分享了他对微服务的看法,他从自己的经验出发,结合Martin Fowler对微服务的见解,帮助想要采用微服务的公司重新审视微服务。以下内容已获得作者翻译授权,查看英文原文 Enough with the microservices。


关于微服务的优势和劣势已经有过太多的讨论,不过我仍然看到很多成长型初创公司对它进行着盲目崇拜。冒着“重复发明轮子”的风险(Martin Fowler已经写过“Microservice Premium”的文章),我想把我的一些想法写下来,在必要的时候可以发给客户,也希望能够帮助人们避免犯下我之前见过的那些错误。在进行架构或技术选型时,将网络上找到的一些所谓的最佳实践文章作为指南,一旦做出了错误的决定,就要付出惨重的代价。如果能够帮助哪怕一个公司避免犯下这种错误,那么写这篇文章都是值得的。

[Read more]

Redis Performance Triage Handbook

May 15, 2017

Intro I do a lot of work with growth-stage startups, and many of them use Redis for all sorts of things. Sometimes as a key/value store for caching, sometimes as a message queue, sometimes as a pub/sub message broker, etc. Redis is a great tool, with great performance, when used properly. However, I’ve often seen cases where it is not used with good performance in mind, often to the detriment of system uptime and customer satisfaction. [Read more]

An Unreasonably Deep Dive into Project Euler Problem 3

May 14, 2017

Intro I’ve been busy as usual for the last couple of months, and haven’t really had time to extend the Project Euler series after Problem 1 and Problem 2 articles. However, I finally did set aside some time to play around with Problem 3: finding the largest prime factor of a number. Problem Statement The prime factors of 13195 are 5, 7, 13 and 29. What is the largest prime factor of the number 600851475143? [Read more]

The Ten-Minute Reorg

March 26, 2017

I spend a lot of time working with growth-stage startups. I often see similar problems across companies when it comes to scaling up their tech teams. At a certain point, the intuitive way to grow a team breaks down, and a reorganization (“reorg”) is necessary in order to adopt a scalable structure. Where some companies may take months to design and execute a reorg, I prefer to handle the majority of it in about ten minutes. [Read more]