Why reading whitepapers takes your career to the next level (and how to do it)
Guest post by L6 Staff Engineer & Tech Lead at Google
Hi everyone 👋, Jordan here.
I’m excited to feature , L6 Staff Engineer and Tech Lead at Google, and author of , a blog with recurring deep dives on technical topics.
Micah attributes a large part of his growth to reading technical whitepapers. In today’s guest post, he will share the value he’s experienced and how you can see similar results.
Hi everyone 👋, Micah here.
As a tech lead at Google, one of the highest-impact activities for my growth has been reading cutting-edge academic computer science papers.
For me, this practice led to redefining our team’s strategy in work I presented at the top industry conference on systems reliability, and repeatedly receiving Google’s top performance ratings.
The rest of this post talks about why and how you can apply these ideas to accelerate your own growth as an engineer.
⭐️ Why reading whitepapers will accelerate your growth to a senior+ engineer
There are 3 main reasons reading computer research benefits you:
Scaling your impact by providing novel insight, like in team design reviews
Creating a personal-growth flywheel. The more time you spend learning, the better and faster you learn in the future.
Future-proofing your career and helping you stay on top of industry trends.
1) Scaling your impact
Reading academic computer science will open your eyes to novel technical insights that you can use to level up your work within your team.
One personal story is from reading about Meta’s system for automatic software deployment, which discusses supervising new server releases based on business metrics and changes in user engagement. Because I had read this paper and others, I advocated for a new system designed by our team to gate all changes based on whether the new changes were negatively impacting users.
At more senior engineering levels, many organizations expect you to scale your impact.
In fact, being a technical subject matter expert is often a prerequisite for promotion. This expectation exists because it means you’re scaling your impact beyond yourself and your own projects.
Reading whitepapers is one of the best ways to build your expertise.
Understanding existing industry patterns means that you can save time by directly applying them to your team’s projects. For example, many papers outline specific techniques for designing a scalable system. Building on a published approach avoids recreating existing concepts, which de-risks your engineering work.
Even without directly implementing ideas from industry research, internalizing their lessons will build your creativity and pattern-matching abilities. This comes into play most often when reviewing designs from other engineers in your team. You’ll know about common problems already solved by others, so you’ll be able to anticipate whether they would happen in your scenario.
2) Creating a personal-growth flywheel
Diving deep and applying lessons from cutting-edge technology improves your ability to do so again in the future.
I used my knowledge of cutting-edge research from companies like Meta as an input into our team strategy. This allowed us to land high-impact projects that prevented and detected significant outages before they happened.
Based on this success, I grew my own scope, and received more leadership opportunities in our organization, forming a positive feedback loop.
Going forward, I was able to process new information faster and generate even more insights, accelerating my growth even further in a “flywheel” effect.
3) Future-proofing your career
Another reason to stay on top of academic research is that the tech industry is always changing—fast.
Reading computer science papers from the top conferences exposes you to new ideas and allows you to understand where the industry is headed.
I’ve used this approach in learning about the technologies that power modern AI applications. Because I was known for being on top of industry research in AI and had expertise in preventing outages, I was given a lead role in the reliability team launching and scaling Generative AI in Google Maps.
📚 How to find and read papers
It can be intimidating if you’re approaching academic computer science for the first time or haven’t read a whitepaper in a while.
To make it easier, you can use this 3-step process:
Pick your specialty
Find whitepapers to read in that area
Dive deep into research that interests you
1) Pick your specialty
If you’re just beginning, focus on an area you’re interested in. You’re unlikely to dedicate time to something that bores you.
Broadly speaking, here are a few of the most popular areas of academic computer science research with the types of questions that you could dive into:
Artificial Intelligence (AI): How do the technologies underpinning large-language models like ChatGPT and Bard work and can they be improved?
Distributed systems: How does a system running on computers running around the world come to a consensus on the state of the world?
Databases: How does a system scalably store and retrieve data in real-time or for later analysis?
Operating systems: How does a computer handle networking, disk accesses, and memory at hyper-scale?
Security: What types of hidden security vulnerabilities exist and how do we automatically find and prevent them?
Currently, my personal interests lie at the intersection of several of these topics—specifically, AI, Distributed Systems, and Operating Systems.
2) Find whitepapers to read
After choosing one or more areas you’re interested in, there are 2 ways I suggest diving deeper:
Identify foundational research: The research that teaches you the fundamentals
Search for cutting-edge research: The newest research in that area
Here is a list of good whitepapers to start with:
Facebook Cassandra (Distributed NoSQL DB)
Facebook Memcache (KV store)
LinkedIn Kafka (PubSub)
🔬How to dive deep into papers
Now that you’ve selected an area to focus on and a few papers, it is time to understand cutting-edge research.
I do this with a 3-step process derived from “How to Read a Paper”:
First pass: I read the paper in 15 minutes, with a focus on understanding the research at a high-level.
Dive deep for an hour on the details of design, implementation, and evaluation.
Summarize the research in my own words, to internalize my understanding.
1) Reading a paper, the first pass
First, I set up my notetaking software and a highlighter. I prefer opening up a tab in Obsidian and loading the research into Zotero. Other folks I know enjoy printing out the paper, and taking notes in the margins. Research shows that no matter which way you choose to engage, doing so leads to better retention and understanding than skimming.
Next, I read the introduction and conclusion. Using this context, I try to explain in my own words what I think the paper is about and identify topics that I don’t understand.
From there, I skim the references to see if there is a way for me to find more information on topics I don’t understand. I try to limit this to 15 minutes to prevent myself from spinning my wheels.
2) Dive into the details
After you have a basic understanding of the paper, set a 45-60-minute timer and read the rest of it.
I highlight content like so:
Blue: It’s a unique insight
Red: I don’t understand it at all
Yellow: It contains research I’d like to follow up on
The time limit prevents me from getting stuck on a topic and reminds me to take a mental break to process what I read.
3) Summarize your understanding
The final step is writing about the research for my audience on Substack to solidify my understanding. Explaining it to others ensures I fully understand what I read.
While I do this on Substack, you can do it anywhere—within your team, as a social media post, or a blog post you keep to yourself.
📖 TL;DR
Reading academic computer science can accelerate your growth as an engineer by:
Allowing you to develop deep technical expertise.
De-risk and deliver high-impact projects.
Level up your team by providing novel feedback on their designs.
You can build this expertise through a 3-step system:
Identifying an area you’re passionate about and that has relevance to your team.
Finding cutting-edge industry research by drawing on resources like journals and conferences.
Extracting insights by diving deep into the research.
🙏 Thank you to Micah
Hi everyone, Jordan again 👋
Thank you, Micah, for the fantastic article describing the benefits of reading whitepapers, the list of whitepapers to read, and sharing how you read them.
As I started working with Micah on this article, I got more into reading whitepapers and gave myself a monthly reminder to read a new one.
So far, I’ve read about Kafka and GFS (Google File System). I liked how I learned new terminology, improved at reading technical documentation, and understood key software patterns at a deeper level.
If you’re interested in summaries of top industry papers, Micah writes them in his newsletter,
Also, here is the video of his recent conference talk on reliability in Google Maps:
📣 Shout-outs of the week
FrontendMasters, my favorite platform for learning frontend, just released a free, all-encompassing 2024 Frontend Engineer Handbook. It’s helpful for everyone, but it would be most helpful for new developers looking for a learning roadmap.
Practical Learning Strategies for Engineers by
on — Actionable advice on how to retain what you learn better.
Thank you for your continued support of the newsletter and the growth to 58k+ subscribers 🙏
- Jordan
P.S. Here are some other things which may interest you:
Path to Senior Engineer Handbook (9.4k+ stars): Everything you need to get to Senior. Let’s get to 10k stars!
Newsletter sponsorships: Feel free to reply to this email or check the Sponsorship packages
Guest posts: I like featuring interesting stories that help other engineers grow. If you have a story to tell, check out my guest post guidelines and respond to this email.
Did you find this issue valuable? If so, there are two ways you can help:
You can also hit the like ❤️ button at the bottom of this email to help support me or share this with a friend to get referral rewards. It helps me a ton!
Great advice, Jordan. I have to say, reading whitepapers is also a great way to learn more about writing. Thanks for the mention 🙂
Excellent points. Aptly put.