about:drewcsillag

Nov 7, 2021 - 15 minute read - staff engineering gtd productivity

Managing Information as a Superpower

Many common archetypes of staff engineer involve a moderate to large scope of influence. One of the things I’ve come to realize, is in order to keep on top of things, and be even more effective is better management of information that comes to you. For me, the way I manage information has become a superpower.

The scope of my last three positions has involved large scopes – up to about sixty people. My current position had started in the low forties, and in a mere ten months has ballooned to sixty or so. I also manage a team of three. My scope will probably grow to around eighty by end of next year – though we have hired another staff engineer who hopefully will be able to take a chunk of this. The question becomes: how can you even begin to keep track of everything going on in an org of ten-plus teams working on who knows how many projects?

The most meaningful way to differentiate your company from your competitors, the best way to put distance between you and the crowd is to do an outstanding job with information. How you gather, manage, and use information will decide whether you win or lose.

– Bill Gates

In short, if you want to be on top of things, your personal information management system (which I call an organization system) should fit your needs and be leveraged to the maximum.

Organization System Retrospectives As An Essential Activity

If you read my blog, you’ll see I’ve written on organization systems, as I’ve been thinking about the problem since (checks the blog) at least early 2014, and from the post, I’ve been thinking about it for some time since before the post. While the principles behind the agile organizer are still valid in my current life, the implementation has changed over time from what I’ve written as my needs have changed: all is as it should be.

A few things regarding changes over time: as I’ve written before, if not in the most straightforward way: as your needs change, so ought your organization system. That is: the advice in Retrospectives still applies.

An important thing I’ve learned in the near decade I’ve been at this is simply this:

All organization system components come with a cost. If you’re not getting sufficient value from it, you will stop doing it and using it; and for me, often in the baby-with-the-bathwater sense. So the retrospective isn’t a nice to have, but essential: stop doing things that cost more than the value they bring, and/or look at the high cost things you’re doing to feed it that can be done in a simpler way where the cost makes sense to pay.

If you read all the way through to my transcription process towards the end, it has gotten to where it has by this retrospective process. All the things that are currently keyboard macros used to be done “by hand” before I turned them into macros.

Dealing With Broad Scope

If you have a broad scope, you probably talk with a lot of people. For example, there are currently about forty individuals (not all within my part of the org) I speak with on at least a monthly cadence, in addition to the normal project and one-off meetings. So what you need is a low-effort place to queue up things you want to talk about in future meetings (especially for meetings with your CTO or Senior VPs), and to put other relevant things in front of you at the time when you are “in the moment”.

If you’ve read my blog, you know that I like paper-based things, and so you wouldn’t be overly surprised that I have a paper system to deal with most of this. I have a Kokuyo Smart Ring 60 binder that I use to manage as my place to queue up questions. I have a sheet per-person where I queue up the questions, and write down notes from the meeting with that person. They’re basically an inbox per-person in GTD terms.

However, I don’t eschew electronic means to do organization. I live in a world of docs and links, etc. so a fully paper-based system for what I do could never work. My main organization system these days is org-mode (upgrading from Paper). Having been a user of Emacs since at least about 1993, and having written two emacs modes: m4-mode distributed with Emacs, and dockerfile-mode, you’d have thought I would have used org-mode from the start, but ¯\(ツ)/¯, I only started using it after joining Datadog.

One thing I will say, is that even if I didn’t know Emacs before, the power of org-mode is worth learning emacs all by itself. The automation you can do with the combination of emacs lisp and org-mode is quite impressive. Better yet, for those who want to try it, is the amount of org-mode you need to know to start being productive in org-mode is tiny as it can just be TODOs (see here also), but it grows with you with all it has to offer. The agenda is essentially a query language, if a somewhat odd one; but I’ve not had to get to the point of going all the way to installing org-ql.

In any case, I transcribe my handwritten notes from my notebook into org mode, making copious use of the functions and keyboard macros I made, as I realized what I was doing over and over by hand, and then wrote lisp functions to do it. Something you will see if you dig into is Review View. What it does is lets me look over my meeting notes from the past two weeks, which is something I try to do every Friday.

I had started doing this without really thinking through what I was doing. I did find that I was recalling far more information than I had any right to. But the way it works out is that I had accidentally set up a spaced repetition regime. That is: under normal circumstances, I’ll encounter the information in my notebooks about four times over several days:

  1. When I first write it down during the meeting
  2. When I transcribe it into org-mode
  3. When I review it on the first Friday
  4. When I review it on the second Friday

I will freely admit that transcription and review are some of the least pleasant tasks I do, and so I do procrastinate on it often. That procrastination might turn out to actually help wrt repetition spacing which is ironic I suppose. However, transcription is a decent task to do when you have these small time windows where you really can’t do any deep work because it’s just too short as transcription doesn’t require any ramp up time, and is eminently interruptible/resumable. But the main reason I do the work to transcribe and review, even though I really rather dislike doing it, is that the value from it more than outweighs the costs.

  1. The results in terms of recall for me are undeniable - I retain so much more than I did before I did things this way.
  2. It reduces my stress because some todos that you capture there don’t need to be acted on right away.
  3. Some time distance from the meeting often can give you some insights as to what’s actually important and because of what you’ve learned since the original event. This helps you to make better decisions and see things that other people wouldn’t.
  4. Things don’t get lost - at least not by accident. You can decide later that things don’t need to be done, or decide to decide later.
  5. People will trust you more - when you follow up a few days later from time to time about something you see, whether by answering a question or asking for clarity, the distance shows that you’ve valued what they said.
  6. When debugging human issues, having things organized the way I do in org-mode makes it all very easy to find.
  7. Honestly, the fruits of the transcription and review processes are often so valuable as to make it some of the most valuable time I spend all week. Strangely, that doesn’t make me dislike it less.

Ubiquitous Capture

This isn’t particularly restricted to broad scope, but for me, I’ve found it more necessary with the broader scope. Part of it is probably because I’ve included explicit woolgathering as part of my “process”, but also as my mind wanders while away from work, I want to get it out of my head so I can be “not at work” while actually not at work.

I’ve wrestled with the question of: “does ubiquitous capture imply I need more remote access to my organization system?” so as to require an online system such as Evernote, or such that something that has mobile support is important. For me I’ve come to the conclusion that I can ubiquitous capture sufficiently with the tools I have. As a result, I have a pocket sized notebook and pen on my pretty much all the time. And for more structured data, like URLs what have you, I pretty much always have my phone nearby, and can email it to my work account - or I’ll sometime have someone with me text it to me, and I’ll process it later. In short: pulling stuff out of my notebook, or out of my work email account into org-mode is low enough effort that it’s fine.

But an important take home message here is that: if you’re dealing with large scope, it can be mentally taxing in a way that smaller scopes aren’t, and so it’s important that you make your away from work time truly away from work. Thus ubiquitous capture, while an important ingredient in an organization system anyway, is even a more important ingredient so you can stop actively thinking about work when away from work to properly recharge.

Brutal Prioritization and Explicitly Declaring NOPE

I accumulate a lot of TODOs over the course of any given day. The thing is, I have a limited amount of energy, and a limited amount of time. I’m a strong believer that working overtime, all the time, is a recipe for burnout and general ineffectiveness. So I try to hold very tightly to an eight hour work day. Studies have shown over and over that working longer hours in knowledge work doesn’t bring any additional productivity, and in my own case, it tends to bring negative productivity.

So how to get it all done? In short, you can’t. Even more so, you shouldn’t. Not all TODOs should be DONE. Many aren’t worth the time you spent recording them. Some of them will get filtered out in the transcription process where you look at it and go “that doesn’t really need to be done”, but some things you shouldn’t do make it into the TODO list anyway. So for TODOs that fit this, it makes sense to declare that you’re just not going to do it, rather than having it take up space (and cognitive load!) by continuing to live in your TODO list.

Some things, I’m not quite ready to part with, and I will put into the someday/maybe list which I look at monthly or so. But for the larger class of things that fit this, it’s better to just declare NOPE on them and just put them out of their misery: they’re just not worth doing at all. If they become important later, you can always recreate them or resurrect them from your archive. In my experience, it all but doesn’t happen.

There are other TODOs that should be done, but maybe just not by you. This is where you find someone appropriate to delegate them to. If you’re a staff engineer, there are literally things that are not worth your time to do if a more junior engineer can do them, even it it takes them more time: their time is cheaper than yours. This is not to say that we don’t get down in the weeds and the muck with everyone else, we still need to, but judiciously, and when it’s sufficiently valuable for us to do so. But we also need to make sure that we’re not procrastinating by doing getting into the weeds; I’ve more than once found myself avoiding doing some more valuable work that I should have been doing by doing weeds and muck work.

Summary

When dealing with a large scope, the way you gather, manage, and handle information can make a huge difference in how effective you can be. Done well, you’ll remember more, lose less, and make better use of the time that you do have.


A Few Specific Notes About How I Run The Paper Part

What it looks like before and after a meeting:

Before Meeting After Meeting

Here in the before, I’ve queued up two things to talk about: St. Bart’s, and mention the hiring bonus.

In the after, I’ve recorded that I asked about St. Bart’s and the response is Molly will take care of it and that I did mention the hiring bonus. A few other notes, and then a TODO to check back with Mycroft about the pictures re: Irene Adler. I also made a note to follow up on the Reichenbach situation during our next meeting. After transcription the flag currently in the upper right will be pointing at the the line about the followup note re: Reichenbach. When I take notes for the next meeting, I’ll use the flag at the top, above “ask about St. Barts” to be the page marker flag in the upper right.

Just in case you’re wondering, the characters and such in the notes are from the Sherlock Holmes stories.

The date line where it has 13-3 means that it happened from 13:00 to 13:30.

How To Keep Track Where I’ve Transcribed?

I use postit arrow flags to track which ones need transcription and from where. Specifically, I have two per person-page. I have one that I use to protrude from the top right corner to “mark the page”, that is: to note that the particular page needs transcription, and a second one to note where transcription last stopped.

When I transcribe, I just pick the first page that has a flag sticking out of the corner, and transcribe from where the other flag sits. When I end transcription, I take the flag that was the one protruding, and put that where transcription ended. So the roles of the two flags swaps from turn to turn.

Every once in a while, while taking notes, I’ll forget to pull a flag to mark the page, so I’ll sometimes go page by page through the notebook to make sure that everything is done.

When a sheet has been fully covered with notes to and transcribed, I take it out of my main binder and put into my archive.

At the top of each page (both sides of a sheet will always belong to the same person) is the person’s name, a page number from the sequence for that person. That is, each person will have a page one, two, and so on. This way, when people leave and I decide I don’t need their paper notes any more, I can get rid of all the pages for a person. So when I encounter numeric gaps, it definitively indicates that I’m missing one or more pages. There’s also the date so when I need to go back to the paper copies (transcription isn’t error free, etc.) I can easily find what I need.

The Transcription Process Itself

So I’ll open the page to some person’s page because of the flag sticking up. In my main.org buffer, I’ll hit C-c C-x C-m which will then prompt me for who it was I met with, and I’ll type in (at least) part of their name. That does an agenda query and will come up with the list of people in the proper part of my main.org that match. I then select the appropriate person which takes me to that part in my main.org file.

I then hit C-c C-x m (no Control key on the m this time) and select the date (using emacs’s diary feature I believe). From there it makes some space in the timestamp it puts in (in addition to a new org-mode heading for the meeting). I then type the time that the meeting occurred in a shorthand and hit C-c C-x x which converts that shorthand to the way org-mode expects and puts the cursor on the next line.

Then I transcribe what’s on the page itself. The main marker here in my notes is a hand drawn box to indicate a TODO. I’ll type that into org as TODO whatever it was and hit C-c C-x t which will copy it, make it a heading, and put it in the capture area of my main.org. For multiline, I prefix C-c C-x t with C-u.

When I’ve finished transcribing the meeting, I pull the flag that’s sticking up and put it at the end. I’ll often write a line across (like an hrule) on the page if I didn’t put it there at the end of the meeting where I took the notes. I usually do it when the meeting ends, especially if there’s follow up I know I’ll need to ask about.

Queueing Up Something for the Next Meeting

I find their page in the notebook – they’re alphabetical by last name. I found out that that’s way more evenly distributed than people’s first names. If there’s not the aforementioned line (from transcription process), I’ll make one, and then write a greater-than symbol and the thing I want to talk about/ask.

Recurring Items

Right now, I just use a sticky note, and move it from meeting to meeting. It’s not the ideal, but since I don’t know what ideal would be, it’s good enough for now.

My Pocket Notebook

To make it easy to find the “currently active” page, I stole a trick that my dad’s Day Timers used (and evidently still do), which is I cut off the upper right corner of the cover and page so I can open it right to the active page. This works well, because something that’s going to live in a pocket gets a bit of abuse and so a bookmark doesn’t work well and is easily lost. That said, the exposed page corners that haven’t been cut yet do get messed up a bit, so I’ll reinforce the corner with a postit tab on the page’s backside.