myibrahim.cloud

Personal Branding · Online Presence

Technical writing as a career multiplier

The most under-priced skill in software. How to start writing publicly, what to write about, and how the compounding works.

The senior engineers I most admire all have one thing in common: they write publicly. Some have huge blogs. Some have a tiny GitHub README that's been quietly read by 50,000 people over a decade. Some have a substack with 200 subscribers who matter.

It is the most under-priced skill in our industry. It is also the one that gets people actual career outcomes — jobs found you, conferences invited you, problems easier to solve because you understand them more deeply. This post is the playbook I wish I'd been handed earlier.

Why writing compounds when other things don't#

Coding is consumed once. Code review is consumed by N people. A blog post is consumed by N × T over time, with no marginal cost to you.

The career delta:

  • A talk at a meetup: ~50 people, gone.
  • A blog post about the same topic: 5,000 people in year 1, 2,000 in year 2, 1,000 each in years 3-7.
  • A good blog post on a search-friendly topic: tens of thousands of reads, hundreds of links, unsolicited messages from people you respect.

Patrick McKenzie has written for fifteen years and gets recruiter messages he didn't ask for, deals via people who read his stuff, and at one point a job at Stripe via writing. None of that was the goal, all of it happened.

You should start, even though you think you can't#

Three blockers everyone has, with the actual situation:

"I'm not senior enough." False. Junior-engineer perspectives ("how I shipped my first migration") are read more than senior ones ("on the philosophy of distributed systems"). The internet does not lack senior people writing about distributed systems. It does lack honest "here's how I think about my first time" posts.

"Everything has been written already." Half-true. The Internet Has Been Written. Your version with your specifics, your codebase, your numbers, hasn't been. Add specifics and your post becomes the version on a query.

"I don't have time." Real, but cheaper than you think. A shipped post takes 2-4 hours of writing time once a month. Compare to time spent on side projects that nobody reads.

What to write about#

The simplest topic generator: the last problem you solved that took unreasonable time to figure out. The one where you spent 4 hours debugging, found a fix, and there was no good post about it. That's the post.

Variants:

  • "How I shipped X." A specific project, with the specific failures.
  • "Y is misunderstood, here's what it actually does." Pick something you've spent enough time on to have nuance.
  • "I tried Z so you don't have to." Tools, frameworks, methodologies.
  • "The thing I wish someone had told me about $JOB." Career and craft posts.
  • "$NUMBER lessons from $YEARS at $COMPANY." Reflective, opinionated.

Don't write listicles ("10 React hooks you should know"). They're SEO bait, low-engagement, low-respect.

Don't write tutorials unless you have a specific take. The internet has 400 React tutorials. It does not have your specific argument about React.

The first ten posts#

The shape of a starting blog:

  1. "Why I'm starting this blog" — optional, mostly for you.
  2. "How I solved $RECENT_PROBLEM" — specific, narrow, technical.
  3. "Y framework: an opinionated review" — you've used something for 6 months, here's the take.
  4. "What I learned shipping $PROJECT" — one of your real projects, with metrics.
  5. "Three things I changed about how I work after $JOB_CHANGE" — career-flavored.
  6. Another deep technical post.
  7. A short "thinking out loud" post on a debate in the field.
  8. A "reading list" post on your topic.
  9. A long-form, ambitious post that takes weeks to write.
  10. "The first year of writing publicly: what worked" — looking back.

By post 10, you'll know what shape your blog wants to take. Don't optimize early.

Cumulative blog readers (typical)
  • Year 12,000
  • Year 28,500
  • Year 322,000
  • Year 445,000
  • Year 578,000

How long should posts be#

This article is ~1500 words. That's about right. The shape that works:

  • 800 words: too short for substance unless your topic is naturally compact.
  • 1500-2500: the sweet spot for "I read this in one sitting and learned something."
  • 4000+: only when warranted (deep dive, tutorial). Most 4000-word posts should be 2000.

Length is in service of the point. Write the post, edit it down by 30%. The edited version is better.

Where to publish#

The 2026 menu:

  • Your own blog (Astro, Hugo, Eleventy, etc.) — owned, slow to grow, compounds best.
  • Substack — easiest to start, email-list focused, decent SEO now.
  • Medium — declining; algorithm-dependent; probably skip.
  • Dev.to / Hashnode — community-first, helps early discovery.
  • Twitter / X / LinkedIn / Mastodon / Bluesky — distribution, not the writing surface itself.

My take: own your blog. Cross-post to Dev.to or Hashnode for first-week discovery. Use social channels to promote. The "owned platform" matters because algorithms shift; your blog doesn't.

Quality vs. quantity#

A debate that won't end: ship more posts faster, or fewer better posts?

The answer is "both, in sequence." Ship 5-10 posts in your first 6 months to build the muscle and find your voice. Then move toward fewer, more polished posts as your taste catches up to your output.

A monthly cadence is more than enough. Weekly is a treadmill that grinds out shallow content.

What to expect#

Year 1: ~5-15 posts. ~50-500 readers per post. Comments from peers. Maybe one post that takes off (>5K reads).

Year 2: more confidence. Some kind of pattern emerges (you write about one thing, mostly). Reader base of a few thousand.

Year 3: people start saying "you wrote that post about X" in unrelated contexts. Recruiters who read your posts reach out. You get conference invites if you've been writing about something the conference cares about.

Year 5: it's part of your identity. People hire you partly because of your writing.

The catch: this only happens if you keep going. The most common failure mode is "I shipped 3 posts in 2024, haven't shipped since." Consistency wins.

What to write next#

The post you're thinking about right now. Not the perfect post. The one you have material for. Open a draft, write the rough shape in 30 minutes, polish for an hour, ship.

You'll be embarrassed by post #2 when you reread it from post #20. That's correct. Ship anyway.

Further reading#

  • Patrick McKenzie's Kalzumeus — the canonical engineer-blogger archive.
  • Julia Evans's Blog — quintessentially clear, illustrated, and about learning.
  • Dan Luu's posts — long-form, opinionated, strong on systems.
  • "How to write blog posts" by Julian Shapiro — the best single-essay how-to.
  • writing
  • career
  • personal-branding
  • blogs
Want to learn this properly? I train engineers and teams in exactly this, one-to-one or in groups.