Skip to content
Unverified — AI-generated content. Help verify this page

Engineering Resources Guide

The best engineers are relentless learners. They read engineering blogs to understand how companies solve problems at scale, watch conference talks to learn new paradigms, study papers to understand the theory behind the tools, and read books to build deep foundational knowledge. This page curates the highest-signal resources across all these categories so you can skip the noise and focus on what actually makes you a better engineer.

Engineering Blogs by Company

Why Company Engineering Blogs Matter

Company engineering blogs are not marketing — they are detailed technical write-ups by engineers who built the systems. They describe real problems, real trade-offs, and real failures. Reading them teaches you patterns you will never learn in a textbook.

Tier 1: Must-Read (Consistently Excellent)

CompanyBlog URLStrengthsNotable Posts
Netflixnetflixtechblog.comDistributed systems, resilience, chaos engineering, data pipelines"Scaling Event Sourcing", "Zuul 2", "Chaos Monkey"
Ubereng.uber.comReal-time systems, geospatial, payments, platform engineering"Schemaless", "Ringpop", "H3 Geo Index"
Stripestripe.com/blog/engineeringAPI design, idempotency, payments infrastructure, Ruby/Sorbet"Idempotency Keys", "Online Migrations", "Sorbet Type System"
Cloudflareblog.cloudflare.comNetworking, DNS, edge computing, security, performance"HTTP/3", "1.1.1.1", "Workers Architecture"
Discorddiscord.com/blogReal-time messaging at scale, Rust migration, data storage"Switching from Go to Rust", "Storing Trillions of Messages", "Data Infrastructure"

Tier 2: Excellent (Frequent High-Quality Posts)

CompanyStrengths
Google (research.google/blog)Infrastructure, ML, search, distributed systems (MapReduce, Spanner, Borg)
Meta (engineering.fb.com)React, mobile, infrastructure, ML at scale
LinkedIn (engineering.linkedin.com/blog)Kafka, data infrastructure, search, real-time systems
Airbnb (medium.com/airbnb-engineering)Frontend architecture, ML, payments, microservices migration
Shopify (shopify.engineering)Ruby on Rails at scale, resilience, platform engineering
GitHub (github.blog/engineering)Git internals, code search, infrastructure, Rails at scale
Figma (figma.com/blog/engineering)Real-time collaboration, CRDTs, multiplayer architecture
Datadog (datadoghq.com/blog/engineering)Observability, monitoring, high-throughput data pipelines

Tier 3: Specialized (Deep in Specific Domains)

CompanyDomain Focus
Fly.io (fly.io/blog)Edge computing, containers, distributed systems
Vercel (vercel.com/blog)Frontend infrastructure, Next.js, edge functions
PlanetScale (planetscale.com/blog)Database engineering, Vitess, MySQL at scale
Cockroach Labs (cockroachlabs.com/blog)Distributed SQL, consensus, database internals
Tailscale (tailscale.com/blog)Networking, WireGuard, NAT traversal

Individual Engineering Blogs

Some of the best technical writing comes from individual engineers:

AuthorBlogKnown For
Julia Evansjvns.caNetworking, Linux, systems — accessible, visual explanations
Dan Abramovoverreacted.ioReact internals, JavaScript, mental models
Martin Kleppmannmartin.kleppmann.comDistributed systems, CRDTs, data-intensive applications
Charity Majorscharity.wtfObservability, engineering management, SRE
Will Larsonlethain.comEngineering management, systems thinking, org design
Jessie Frazellejess.devContainers, Linux internals, hardware
Tania Rasciataniarascia.comWeb development, tutorials, fundamentals
Alex Xublog.bytebytego.comSystem design, visual explanations
The Pragmatic Engineer (Gergely Orosz)pragmaticengineer.comEngineering culture, industry trends, career advice

Must-Watch Conference Talks

Distributed Systems

TalkSpeakerEventWhy Watch
"Turning the database inside-out"Martin KleppmannStrange Loop 2014Reframes databases as log-oriented systems
"How NOT to Measure Latency"Gil TeneStrange Loop 2015Coordinated omission, HDR histograms — required viewing
"The Language of the System"Rich HickeyClojure/conj 2012Values, identity, state — foundational systems thinking
"Jepsen" seriesKyle KingsburyVariousBreaking distributed databases; learn what "CP" and "AP" really mean
"Consistency without Consensus"Peter BourgonGOTO 2016CRDTs and eventual consistency in practice

Software Design

TalkSpeakerEventWhy Watch
"Simple Made Easy"Rich HickeyStrange Loop 2011The difference between "simple" and "easy" — career-changing
"The Art of Destroying Software"Greg YoungVimeo 2014Why small services that can be rewritten in 2 weeks beat everything
"Boundaries"Gary BernhardtRubyConf 2012Functional core, imperative shell — 30 min that changes how you design
"Nothing is Something"Sandi MetzRailsConf 2015Composition over inheritance, null object pattern
"All the Little Things"Sandi MetzRailsConf 2014How to break down a God class step by step

Performance & Reliability

TalkSpeakerEventWhy Watch
"Performance Matters"Emery BergerStrange Loop 2019Why microbenchmarks lie and how to measure properly
"Debugging Under Fire"Bryan CantrillGOTO 2018Production debugging war stories from DTrace's creator
"Breaking Things on Purpose"Kolton AndrusQCon 2018Netflix's chaos engineering philosophy

Frontend & Web

TalkSpeakerEventWhy Watch
"Hot Takes on the Web"Rich HarrisJSConf 2024Creator of Svelte on the future of web frameworks
"Rethinking Reactivity"Rich HarrisYou Gotta Love Frontend 2019Why Svelte's compile-time approach works
"In the Loop"Jake ArchibaldJSConf.Asia 2018The event loop visualized — best explanation ever made
"What the heck is the event loop anyway?"Philip RobertsJSConf EU 2014The classic event loop talk, still relevant

Must-Read Books

Foundational (Read These First)

By Topic

System Design & Architecture

BookAuthorKey Takeaway
Designing Data-Intensive ApplicationsMartin KleppmannThe single best book on distributed systems for practitioners
System Design Interview (Vol 1 & 2)Alex XuPractical system design frameworks for interviews and real work
Building Microservices (2nd ed)Sam NewmanWhen and how to decompose monoliths
A Philosophy of Software DesignJohn OusterhoutComplexity is the enemy; deep modules over shallow ones
Domain-Driven DesignEric EvansUbiquitous language, bounded contexts, aggregates

Software Craft

BookAuthorKey Takeaway
The Pragmatic Programmer (20th Anniversary)Hunt & ThomasTimeless advice on being a professional developer
Clean CodeRobert C. MartinNaming, functions, comments — read critically, not religiously
Refactoring (2nd ed)Martin FowlerCatalog of refactoring techniques with JavaScript examples
Working Effectively with Legacy CodeMichael FeathersHow to add tests to untestable code
Code Complete (2nd ed)Steve McConnellThe encyclopedia of software construction

DevOps & Reliability

BookAuthorKey Takeaway
Site Reliability EngineeringGoogle (Beyer et al.)SLOs, error budgets, toil reduction — the SRE bible
The Phoenix ProjectGene KimDevOps principles as a novel — accessible introduction
AccelerateForsgren, Humble, KimDORA metrics — scientific evidence for DevOps practices
Release It! (2nd ed)Michael NygardStability patterns: circuit breakers, bulkheads, timeouts

Engineering Management

BookAuthorKey Takeaway
An Elegant PuzzleWill LarsonSystems thinking for engineering management
The Manager's PathCamille FournierFrom IC to CTO — every level of the management ladder
Staff EngineerWill LarsonWhat staff+ engineers actually do day-to-day
Team TopologiesSkelton & PaisStream-aligned, enabling, platform, complicated-subsystem teams

TIP

If you read only one book from this entire list, make it Designing Data-Intensive Applications. It covers replication, partitioning, transactions, batch processing, stream processing, and consistency — the topics that come up in every system design interview and every architecture decision.

Must-Read Papers

The Foundational Papers

PaperYearWhy It Matters
"MapReduce: Simplified Data Processing on Large Clusters"2004The paper that launched big data; influenced Hadoop
"Dynamo: Amazon's Highly Available Key-Value Store"2007Inspired DynamoDB, Cassandra, Riak — core distributed systems concepts
"The Google File System"2003Influenced HDFS and modern distributed storage design
"Bigtable: A Distributed Storage System"2006Influenced HBase, Cassandra column families
"Spanner: Google's Globally-Distributed Database"2012TrueTime, globally-consistent distributed transactions
"Raft: In Search of an Understandable Consensus Algorithm"2014Easier-to-understand Paxos alternative; used in etcd, CockroachDB
"Time, Clocks, and the Ordering of Events"1978Lamport clocks — foundational to all distributed systems
"A Note on Distributed Computing"1994Why treating remote calls like local calls is fundamentally wrong

Modern Papers (2018-2026)

PaperYearTopic
"Zanzibar: Google's Consistent, Global Auth System"2019Permission systems at scale; inspired SpiceDB, Authzed
"Monarch: Google's Planet-Scale Monitoring"2020Time-series monitoring architecture
"Attention Is All You Need"2017The Transformer architecture — foundation of modern AI
"Scaling Laws for Neural Language Models"2020Why bigger models get better and how to predict performance
"TAO: Facebook's Distributed Data Store for the Social Graph"2013Graph data at massive scale
"Metaflow: A Human-Centric Framework for Data Science"2019Netflix's ML infrastructure philosophy

Where to Find Papers

SourceDescription
papers-we-loveCurated collection with community discussions
the morning paperAdrian Colyer's paper summaries (archived, still invaluable)
arxiv.orgPreprint server; search for CS papers
USENIXSystems conferences: OSDI, NSDI, ATC
ACM Digital LibraryComprehensive CS research archive

Podcasts

Active Podcasts (2026)

PodcastHost(s)FocusEpisode Length
Software Engineering DailyVariousDeep dives into specific technologies45-60 min
The ChangelogAdam Stacoviak, Jerod SantoOpen source, software development60-90 min
CoRecursiveAdam Gordon BellStories behind famous codebases and decisions40-60 min
Ship It!The Changelog teamDevOps, deployment, infrastructure30-45 min
SyntaxWes Bos, Scott TolinskiWeb development, frontend, tooling30-60 min
Go TimeMat Ryer et al.Go ecosystem, architecture45-60 min
Rust in ProductionMatthias EndlerCompanies using Rust in production30-45 min
The Pragmatic EngineerGergely OroszIndustry trends, big tech insights30-60 min
Thoughtworks Technology PodcastVariousArchitecture, practices, industry trends30-45 min

Newsletters

Must-Subscribe

NewsletterAuthorFrequencyFocus
The Pragmatic EngineerGergely Orosz2x/weekIndustry analysis, big tech insights, career
ByteByteGoAlex XuWeeklySystem design, visual explanations
TLDRDan NiDailyTech news digest — 5 min read
PointerZach LloydDailyBest engineering articles curated
Software Lead WeeklyOren EllenbogenWeeklyEngineering leadership, management
QuastorJustin Gage3x/weekSystem design case studies
ConsoleDavid MyttonWeeklyDeveloper tools, open source
React StatusPeter CooperWeeklyReact ecosystem updates
Node WeeklyPeter CooperWeeklyNode.js ecosystem updates
Golang WeeklyPeter CooperWeeklyGo ecosystem updates

Learning Platforms

For Depth (Courses)

PlatformBest ForCost
MIT OpenCourseWareCS fundamentals (6.824 distributed systems is legendary)Free
CourseraUniversity courses, specializationsFree to audit, paid for certificates
educative.ioSystem design, coding interviewsSubscription
frontendmasters.comFrontend deep dives, instructor qualitySubscription
neetcode.ioAlgorithm patterns, interview prepFree + paid
pluralsight.comEnterprise tech stacks, cloud certificationsSubscription

For Breadth (Practice)

PlatformBest For
LeetCodeAlgorithm practice, company-specific problems
ExercismLearning new programming languages through practice
Advent of CodeAnnual December puzzle challenge — algorithmic thinking
Project EulerMathematical/computational problems
Hacker NewsDaily dose of engineering articles and discussions

WARNING

Avoid tutorial hell. Watching courses and reading blogs without building things creates an illusion of learning. For every hour of consumption, spend at least two hours building. The best learning loop: read/watch → build → get stuck → research → build more.

Open Source Projects to Study

Reading code from well-engineered open source projects is one of the best ways to learn patterns used in production.

ProjectLanguageWhat You Learn
RedisCElegant data structures, event loop design, single-threaded performance
SQLiteCThe most-deployed database in the world; impeccable testing (100% branch coverage)
PostgresCMVCC, query planning, extensibility architecture
Go standard libraryGoClean API design, concurrency patterns, documentation standards
ReactJavaScriptFiber architecture, reconciliation algorithm, hooks implementation
Next.jsTypeScriptServer components, hybrid rendering, build system design
KubernetesGoDistributed systems patterns, controller pattern, API design
TokioRustAsync runtime design, work-stealing scheduler
FastAPIPythonType-driven API design, dependency injection, auto-documentation
Tailwind CSSJavaScriptBuild tool plugins, utility-first CSS methodology, JIT compilation

How to Study Codebases

  1. Start with the README and architecture docs — understand the high-level design before diving into code
  2. Read tests first — tests show intended behavior and common usage patterns
  3. Trace a single request — follow one HTTP request from entry to response through the entire system
  4. Read git blame on complex files — commit messages explain why the code evolved this way
  5. Build it locally and experiment — modify things, break things, understand through experimentation

Communities and Conferences

Top Engineering Conferences

ConferenceFocusFormat
Strange LoopMulti-paradigm, distributed systems, languagesIn-person (St. Louis)
QConSoftware architecture, engineering leadershipIn-person (multiple cities) + online
GOTOSoftware development, architectureIn-person (multiple cities) + online
KubeConCloud native, Kubernetes, CNCF ecosystemIn-person + online
React ConfReact ecosystemIn-person
RustConfRust language and ecosystemIn-person
P99 CONFPerformance engineering, low-latency systemsOnline
SREconSite reliability engineering, operationsIn-person

Online Communities

CommunityPlatformBest For
Hacker NewsWebGeneral tech discussion, high signal-to-noise
r/programmingRedditBroad programming topics
r/ExperiencedDevsRedditSenior engineer discussions, career advice
Dev.toWebBeginner-friendly tutorials and discussions
Lobste.rsWebCurated, invite-only tech discussion
Discord (various)DiscordLanguage-specific communities (Rust, Go, TypeScript)

Building a Learning System

The T-Shaped Engineer

Weekly Learning Schedule

DayActivityTimeResource Type
MondayRead engineering blog post30 minCompany blog
TuesdayWatch conference talk45 minYouTube/conference
WednesdayRead book chapter30 minTechnical book
ThursdayBuild / experiment60 minSide project
FridayRead paper summary20 minPapers We Love
WeekendDeep dive project2-3 hoursHands-on building

"What I cannot create, I do not understand." — Richard Feynman