<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8">
    <meta http_equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">

    <meta property="og:title" content="Ethan Gunderson — Software Engineer, Author, Builder">
    <meta property="og:site_name" content="Ethan Gunderson">
    <meta property="og:type" content="website">
    
    <meta property="og:description" content="Software engineer, author, and builder. Writing about observability, Elixir, and building software.">
    <meta name="description" content="Software engineer, author, and builder. Writing about observability, Elixir, and building software.">
    <meta property="og:url" content="https://www.ethangunderson.com/">
    <meta name="twitter:card" content="summary">

    <title>
      
        Ethan Gunderson — Software Engineer, Author, Builder
      
    </title>

    <link rel="preconnect" href="https://fonts.googleapis.com">
    <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin>
    <link href="https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700;800&display=swap" rel="stylesheet">

    <link rel="stylesheet" href="/css/site.css">
    <script src="https://tinylytics.app/embed/qsUQPD1PyV36tTZ7CVZn.js" defer>
    </script>
    <script src="https://peepmetrics.com/t.js" data-token="izRiEhBmlc9R0YIFUHqa9" async>
    </script>
  </head>

  <body class="bg-site-bg text-ink font-sans text-[17px] leading-relaxed">

    <div class="fixed top-0 left-0 right-0 h-1 bg-accent z-50"></div>

    <div class="grid grid-cols-1 md:grid-cols-layout min-h-screen pt-1">

      <aside class="bg-sidebar-bg border-b-4 border-ink md:border-b-0 md:border-r-4 md:sticky md:top-1 md:h-[calc(100vh-4px)] p-6 md:p-10 flex flex-col overflow-y-auto">
        <div class="mb-8">
          <a href="/" class="no-underline hover:no-underline text-ink hover:text-ink block">
            <p class="text-2xl font-extrabold uppercase leading-[1.05] tracking-tight mb-2">
              Ethan<br>Gunderson
            </p>
            <p class="text-[0.72rem] text-muted uppercase tracking-wider leading-snug">
              Software Engineer.<br>Author. Builder.
            </p>
          </a>
        </div>

        <div class="border-t-4 border-ink mb-6"></div>

        <nav>
          <ul class="list-none p-0 m-0 flex flex-row flex-wrap gap-1 md:flex-col md:gap-0">
            <li>
              <a href="/" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-accent text-accent">
                About
              </a>
            </li>
            
            <li>
              <a href="/notes" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Notes
              </a>
            </li>
            <li>
              <a href="/projects" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Projects
              </a>
            </li>
            <li>
              <a href="/media" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Media
              </a>
            </li>
            <li>
              <a href="/coffee" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Coffee
              </a>
            </li>
            <li>
              <a href="/now" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Now
              </a>
            </li>
            <li>
              <a href="/atlas" class="block py-2 px-3 text-[0.78rem] font-bold uppercase tracking-[0.09em] text-ink no-underline border-l-4 transition-colors duration-75 hover:border-accent hover:text-accent border-transparent">
                Atlas
              </a>
            </li>
          </ul>
        </nav>
      </aside>

      <div class="flex flex-col p-6 md:px-16 md:py-12">
        <main class="flex-1">
          

          

          <div class="prose text-base">
            <article>
  <section class="space-y-5 mb-12">
  <p class="text-2xl font-heading">
    Hey, I'm Ethan.
  </p>
  <p>
    I'm a principal software engineer at <a href="https://cars.com">Cars Commerce</a>
    with twenty years of experience building software. I care about performance, observability, and shipping things that people find useful.
  </p>
  <p>
    I'm currently writing <a href="/book">a book on instrumenting Elixir applications</a>. Before that, I started
    <a href="https://github.com/chicagodb/chicagodb.github.com">ChicagoDB</a>
    and <a href="https://paperswelove.org/chapter/chicago/">Papers We Love Chicago</a>, hosted <a href="https://podcasts.apple.com/be/podcast/growing-software/id1566244538">a podcast</a>, and built a bunch of things that taught me a lot.
  </p>
  <p>
    Off the clock I'm a dad to two boys, an avid cook, and a BJJ white belt. I enjoy coffee too much, have a thing for stationery and well-made objects, and was once 2017's 136,784th World's Fittest Man. I'll make you watch The Bear and The West Wing if you let me.
  </p>
</section>

<hr>

<section class="my-12">
  
  <h2 class="text-2xl font-heading mb-6">Recent activity</h2>
  <ul class="list-none pl-0 space-y-3">
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Jun 06
        </time>
        <span class="bg-accent text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          writing
        </span>
        <span>
          <a href="/my-rating-system">My Rating System</a>
          
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Jun 06
        </time>
        <span class="bg-muted text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          link
        </span>
        <span>
          <a href="/grant-achatz-on-creativity">Grant Achatz on Creativity</a>
          
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Jun 05
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/perc-darrrk">Darrrk</a>
          
            <span class="text-grille"> — PERC Coffee</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Jun 01
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/portrait-colombia-yessica-parra-papayo">Colombia Yessica Parra Papayo</a>
          
            <span class="text-grille"> — Portrait</span>
          
          
            <span class="text-accent text-xs ml-1">★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          May 15
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/perc-super-power-plum">Super Power Plum</a>
          
            <span class="text-grille"> — PERC Coffee</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          May 15
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/ruby-coffee-roasters-colombia-jose-uribe-lasso">Colombia Jose Uribe Lasso</a>
          
            <span class="text-grille"> — Ruby Coffee Roasters</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          May 15
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/ruby-coffee-roasters-peru-david-flores-la-neblina">Peru David Flores La Neblina</a>
          
            <span class="text-grille"> — Ruby Coffee Roasters</span>
          
          
            <span class="text-accent text-xs ml-1">★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Apr 28
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/dcds-ethiopia-supernatural">Ethiopia Supernatural</a>
          
            <span class="text-grille"> — Drink Coffee Do Stuff</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 31
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          book
        </span>
        <span>
          <a href="/media/to-be-taught-if-fortunate">To Be Taught, If Fortunate</a>
          
            <span class="text-grille"> — Becky Chambers</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 29
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          movie
        </span>
        <span>
          <a href="/media/project-hail-mary-movie">Project Hail Mary</a>
          
            <span class="text-grille"> — Andy Weir</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 24
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/little-waves-smoothie">Edwin Enrique Noreña - Smoothie</a>
          
            <span class="text-grille"> — Little Waves</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 24
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/perc-young-producers-columbia">Colombia Young Producers</a>
          
            <span class="text-grille"> — PERC Coffee</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 18
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          album
        </span>
        <span>
          <a href="/media/khruangbin-rcmh">Khruangbin Live at Radio City Music Hall: New York Edition</a>
          
            <span class="text-grille"> — Khruangbin</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 15
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          coffee
        </span>
        <span>
          <a href="/coffee/perc-ethiopia-chelchele">Ethiopia Chelchele</a>
          
            <span class="text-grille"> — PERC Coffee</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★</span>
          
        </span>
      </li>
    
      
      
      <li class="flex items-baseline gap-3 text-sm">
        <time class="text-grille whitespace-nowrap w-12 shrink-0">
          Mar 14
        </time>
        <span class="bg-accent-blue text-site-bg text-xs font-heading uppercase px-2 py-1 shrink-0 leading-none">
          game
        </span>
        <span>
          <a href="/media/hades2">Hades 2</a>
          
            <span class="text-grille"> — Supergiant Games</span>
          
          
            <span class="text-accent text-xs ml-1">★★★★★★</span>
          
        </span>
      </li>
    
  </ul>
</section>

<hr>

<section class="my-12">
  <h2 class="text-2xl font-heading mb-6">Speaking & community</h2>
  <p>
    Want me to come on your podcast or speak at your event? <a href="mailto:ethan@ethangunderson.com">Get in touch</a>.
  </p>
  <ul class="list-none pl-0 mt-4 space-y-1">
    
      <li>
        <a>Instrumenting Elixir Workshop - ElixirConf</a>
        <span class="text-sm text-grille">(2024)</span>
      </li>
    
      <li>
        <a href="https://podcasts.apple.com/us/podcast/telemetry-observability-for-elixir-apps-at-cars-com/id1454287242?i=1000680132144">Elixir Wizards Podcast</a>
        <span class="text-sm text-grille">(2024)</span>
      </li>
    
      <li>
        <a>Instrumenting Elixir Workshop - ElixirConf</a>
        <span class="text-sm text-grille">(2023)</span>
      </li>
    
      <li>
        <a href="https://www.youtube.com/watch?v=eOD6H8U_0GE&amp;embeds_referring_euri=https%3A%2F%2Fwww.ethangunderson.com%2F&amp;source_ve_path=Mjg2NjY">Telemetry Powered Observability @ Empex Conference</a>
        <span class="text-sm text-grille">(2022)</span>
      </li>
    
      <li>
        <a>Instrumenting Elixir Workshop - ElixirConf</a>
        <span class="text-sm text-grille">(2022)</span>
      </li>
    
  </ul>
</section>

<hr>

<section class="my-12">
  <h2 class="text-2xl font-heading mb-4">Let's connect</h2>
  <p>
    I'm always up for a conversation about Elixir, observability, or whatever you're building.
    Send me an <a href="mailto:ethan@ethangunderson.com">email</a>
    or find me on <a href="https://bsky.app/profile/ethangunderson.com">Bluesky</a>.
  </p>
</section>
</article>
          </div>
        </main>

        <footer class="border-t-4 border-ink mt-16 pt-8">
          <ul class="list-none p-0 m-0 flex gap-6 flex-wrap mb-3">
            <li>
              <a href="https://www.github.com/ethangunderson" class="text-[0.78rem] font-bold uppercase tracking-[0.07em] no-underline text-ink hover:text-accent">
                Github
              </a>
            </li>
            <li>
              <a href="https://bsky.app/profile/ethangunderson.com" class="text-[0.78rem] font-bold uppercase tracking-[0.07em] no-underline text-ink hover:text-accent">
                Bluesky
              </a>
            </li>
            <li>
              <a href="https://www.linkedin.com/in/ethangunderson/" class="text-[0.78rem] font-bold uppercase tracking-[0.07em] no-underline text-ink hover:text-accent">
                LinkedIn
              </a>
            </li>
            <li>
              <a href="mailto:ethan@ethangunderson.com" class="text-[0.78rem] font-bold uppercase tracking-[0.07em] no-underline text-ink hover:text-accent">
                Email
              </a>
            </li>
            <li>
              <a href="/feed.xml" class="text-[0.78rem] font-bold uppercase tracking-[0.07em] no-underline text-ink hover:text-accent">
                RSS
              </a>
            </li>
          </ul>
          <p class="text-[0.78rem] text-muted m-0">&copy; Ethan Gunderson</p>
        </footer>
      </div>
    </div>
  </body>

  
</html>