{
    "archive_path": "archive/1746541954.390012",
    "base_url": "www.seangoedecke.com/getting-things-done",
    "basename": "",
    "bookmarked_date": "2025-05-06 14:32",
    "canonical": {
        "archive_org_path": "https://web.archive.org/web/www.seangoedecke.com/getting-things-done",
        "dom_path": "output.html",
        "favicon_path": "favicon.ico",
        "git_path": "git/",
        "google_favicon_path": "https://www.google.com/s2/favicons?domain=www.seangoedecke.com",
        "headers_path": "headers.json",
        "htmltotext_path": "htmltotext.txt",
        "index_path": "index.html",
        "media_path": "media/",
        "mercury_path": "mercury/content.html",
        "pdf_path": "output.pdf",
        "readability_path": "readability/content.html",
        "screenshot_path": "screenshot.png",
        "singlefile_path": "singlefile.html",
        "warc_path": "warc/",
        "wget_path": null
    },
    "domain": "www.seangoedecke.com",
    "downloaded_at": "2025-05-06T14:32:38.760073+00:00",
    "downloaded_datestr": "2025-05-06 14:32",
    "extension": "",
    "hash": "17NN7CRKYQ5AA1T4VEXG",
    "history": {
        "archive_org": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--head",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://web.archive.org/save/https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-05-06T14:33:44.110941+00:00",
                "index_texts": null,
                "output": "https://web.archive.org/web/20250506143327/https://www.seangoedecke.com/getting-things-done/",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:23.656760+00:00",
                "status": "succeeded"
            }
        ],
        "dom": [
            {
                "cmd": [
                    "/usr/bin/chromium-browser",
                    "--proxy-server=socks5://tor-socks-proxy:9150",
                    "--disable-features=DarkMode",
                    "--run-all-compositor-stages-before-draw",
                    "--hide-scrollbars",
                    "--autoplay-policy=no-user-gesture-required",
                    "--no-first-run",
                    "--use-fake-ui-for-media-stream",
                    "--use-fake-device-for-media-stream",
                    "--simulate-outdated-no-au='Tue, 31 Dec 2099 23:59:59 GMT'",
                    "--headless=new",
                    "--no-sandbox",
                    "--no-zygote",
                    "--disable-dev-shm-usage",
                    "--disable-software-rasterizer",
                    "--disable-sync",
                    "--window-size=1440,2000",
                    "--user-agent=Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "--user-data-dir=/data/personas/Default/chrome_profile",
                    "--profile-directory=Default",
                    "--dump-dom",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "131.0.6778",
                "end_ts": "2025-05-06T14:33:00.032305+00:00",
                "index_texts": null,
                "output": "output.html",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:32:51.933411+00:00",
                "status": "succeeded"
            }
        ],
        "favicon": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--max-time",
                    "60",
                    "--output",
                    "favicon.ico",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://www.google.com/s2/favicons?domain=www.seangoedecke.com"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-05-06T14:32:44.576126+00:00",
                "index_texts": null,
                "output": "favicon.ico",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:32:39.004898+00:00",
                "status": "succeeded"
            }
        ],
        "git": [],
        "headers": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--head",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-05-06T14:32:44.669029+00:00",
                "index_texts": null,
                "output": "headers.json",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:32:44.607376+00:00",
                "status": "succeeded"
            }
        ],
        "htmltotext": [
            {
                "cmd": [
                    "(internal) archivebox.extractors.htmltotext",
                    "./{singlefile,dom}.html"
                ],
                "cmd_version": "0.8.5rc51",
                "end_ts": "2025-05-06T14:33:17.758868+00:00",
                "index_texts": [
                    "(/favicon-32x32.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/manifest.webmanifest) (/icons/icon-48x48.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-72x72.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-96x96.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-144x144.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-192x192.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-256x256.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-384x384.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) (/icons/icon-512x512.png?v=ac7bb3aa286bd21c42741d9c9aa60cb7) Getting things \"done\" in large tech companies | sean goedecke (seangoedecke.com RSS feed) (/rss.xml) (seangoedecke.com RSS feed) (/feed.xml) (seangoedecke.com RSS feed) (/atom.xml) (/webpack-runtime-1c490e24812c971f677c.js) (/framework-4ce5382688c7c66a6d68.js) (/styles-806f4b82980a743e7980.js) (/app-5ea5ab43ea6709b618e0.js) (/commons-8bba03b02b475bd1322b.js) (/component---src-templates-blog-post-js-1d517f24415df614196c.js) (/page-data/getting-things-done/page-data.json) (/page-data/sq/d/1146911855.json) (/page-data/sq/d/3000541721.json) (/page-data/app-data.json)  (/) sean goedecke   Getting things \"done\" in large tech companies  What does it mean to get things done? In the abstract, you can complete a mathematical proof or a problem set, but the real world is much fuzzier. Suppose I plant a tree in my backyard. Once the sapling is in the ground, is that done? Not really. There\u2019s always more work to do: clearing the ground around it, watering, keeping pests away, pruning, and so on. Programming large web applications is more like planting a tree than completing a mathematical proof. Once you write a service, you can keep working on it forever if you want to. In large tech companies, this fact is a trap for competent but unagentic engineers. They see an infinite queue of tasks that they\u2019re capable of doing, and they start delivering a stream of marginal improvements to a particular subsystem1  . From their perspective, it feels like they\u2019re crushing it. After all, they\u2019re putting out work at their top speed: no downtime, no waiting on other teams. But they\u2019re not doing their actual job, which is to deliver the most value they can to their company. From the perspective of their manager and skip-level, they\u2019re not getting anything done. What does it mean to get things done in large companies? Most importantly, it means finishing things. How can you finish things in a world where you can keep improving systems indefinitely? It means getting them to a point where the decision-makers at the company are happy . At that point, you have to declare victory and walk away! Go and do something else! I\u2019ve seen many engineers stick around delivering one more tweak or one more refactor - long past the point where their work stopped being perceived as a successful project and started being perceived as wasted time. Better to deliver two more things in that time. Second, it means delivering the kind of things that are legible to the decision-makers at the company: i.e. visible to your manager, plus 1-3 skip levels, depending on your title. The easiest way to do this is to deliver things that they already know about, such as projects that they\u2019ve asked you to do, or incidents that are serious enough that they\u2019re involved in them. It\u2019s possible to make other work legible to them as well. If your work produces or saves money, that will make it immediately legible, for instance (or you could just be really convincing). By default, work you do isn\u2019t legible: to the decision-makers, it\u2019s generic technical nonsense. They don\u2019t know whether it\u2019s crucial high-impact work or pointless code reshuffling, and will tend to assume the latter. In short, getting things done means getting them in a state where: (a) executives at the company understand what\u2019s happened, and\n(b) are happy with it To many, this will be an unsatisfying definition of what it means to get things done. Lots of engineers will want a more solid definition than \u201cit\u2019s a social construct\u201d. However, as someone with a philosophy background, I have a healthy respect for social constructs. The concept \u201cchair\u201d is a social construct, and chairs are plenty real[2]. In some ways, \u201cgetting things done\u201d is even more real. It can pay your rent! If you don\u2019t respect it, it can even get you fired. Summary Just because you\u2019re doing work doesn\u2019t mean you\u2019re getting things done Nothing is ever \u201cdone\u201d in the non-abstract world. Everything can be worked on indefinitely If you want to get things done you can\u2019t be a gardener. You have to aim for a bullet-point list of achievements So what\u2019s \u201cdone\u201d mean in that context? It means the company is happy with the state of it Declare victory and walk away: go and do something else!  In the ideal case, that is. In the non-ideal case, they make a series of changes that suit their personal taste but have no real customer impact. \u21a9  For much more on this, you can go and (somehow) find my favourite book of underappreciated moral philosophy, Moral Notions by Julius Kovesi. \u21a9     If you liked this post, consider (https://buttondown.com/seangoedecke) subscribing to email updates about my new posts. May 6, 2025\u2502 Tags: (/tags/shipping/) shipping , (/tags/tech companies/) tech companies  (/) posts \u2502 (https://buttondown.com/seangoedecke) subscribe \u2502 (https://www.linkedin.com/in/sean-goedecke-5495a7137/) linkedin \u2502 (/rss.xml) rss \u2502 (/book) read my book about software engineering     (/the-valley-of-engineering-despair/) \u2190 The valley of engineering despair            "
                ],
                "output": "htmltotext.txt",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:17.740771+00:00",
                "status": "succeeded"
            }
        ],
        "media": [
            {
                "cmd": [
                    "/usr/local/bin/yt-dlp",
                    "--restrict-filenames",
                    "--trim-filenames",
                    "128",
                    "--write-description",
                    "--write-info-json",
                    "--write-annotations",
                    "--write-thumbnail",
                    "--no-call-home",
                    "--write-sub",
                    "--write-auto-subs",
                    "--convert-subs=srt",
                    "--yes-playlist",
                    "--continue",
                    "--no-abort-on-error",
                    "--ignore-errors",
                    "--geo-bypass",
                    "--add-metadata",
                    "--format=(bv*+ba/b)[filesize<=750m][filesize_approx<=?750m]/(bv*+ba/b)",
                    "--skip-download",
                    "--cache-dir=/data/yt-dlp-cache/",
                    "--cookies=/data/yt-dlp-cache/cookies.txt",
                    "--proxy=socks5://tor-socks-proxy:9150",
                    "--no-playlist",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "2024.10.7",
                "end_ts": "2025-05-06T14:33:23.597603+00:00",
                "index_texts": [],
                "output": "media/",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:19.846781+00:00",
                "status": "succeeded"
            }
        ],
        "mercury": [
            {
                "cmd": [
                    "/home/archivebox/.npm/bin/postlight-parser",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "2.2.3",
                "end_ts": "2025-05-06T14:33:17.695535+00:00",
                "index_texts": null,
                "output": "mercury/",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:15.507210+00:00",
                "status": "succeeded"
            }
        ],
        "pdf": [],
        "readability": [
            {
                "cmd": [
                    "/home/archivebox/.npm/bin/readability-extractor",
                    "/tmp/tmprfaj_kvy",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "0.0.11",
                "end_ts": "2025-05-06T14:33:06.924023+00:00",
                "index_texts": [
                    "What does it mean to get things done? In the abstract, you can complete a mathematical proof or a problem set, but the real world is much fuzzier. Suppose I plant a tree in my backyard. Once the sapling is in the ground, is that done? Not really. There\u2019s always more work to do: clearing the ground around it, watering, keeping pests away, pruning, and so on. Programming large web applications is more like planting a tree than completing a mathematical proof. Once you write a service, you can keep working on it forever if you want to.\nIn large tech companies, this fact is a trap for competent but unagentic engineers. They see an infinite queue of tasks that they\u2019re capable of doing, and they start delivering a stream of marginal improvements to a particular subsystem1. From their perspective, it feels like they\u2019re crushing it. After all, they\u2019re putting out work at their top speed: no downtime, no waiting on other teams. But they\u2019re not doing their actual job, which is to deliver the most value they can to their company. From the perspective of their manager and skip-level, they\u2019re not getting anything done.\nWhat does it mean to get things done in large companies? Most importantly, it means finishing things. How can you finish things in a world where you can keep improving systems indefinitely? It means getting them to a point where the decision-makers at the company are happy. At that point, you have to declare victory and walk away! Go and do something else! I\u2019ve seen many engineers stick around delivering one more tweak or one more refactor - long past the point where their work stopped being perceived as a successful project and started being perceived as wasted time. Better to deliver two more things in that time.\nSecond, it means delivering the kind of things that are legible to the decision-makers at the company: i.e. visible to your manager, plus 1-3 skip levels, depending on your title. The easiest way to do this is to deliver things that they already know about, such as projects that they\u2019ve asked you to do, or incidents that are serious enough that they\u2019re involved in them. It\u2019s possible to make other work legible to them as well. If your work produces or saves money, that will make it immediately legible, for instance (or you could just be really convincing). By default, work you do isn\u2019t legible: to the decision-makers, it\u2019s generic technical nonsense. They don\u2019t know whether it\u2019s crucial high-impact work or pointless code reshuffling, and will tend to assume the latter.\nIn short, getting things done means getting them in a state where:\n(a) executives at the company understand what\u2019s happened, and\n(b) are happy with it\nTo many, this will be an unsatisfying definition of what it means to get things done. Lots of engineers will want a more solid definition than \u201cit\u2019s a social construct\u201d. However, as someone with a philosophy background, I have a healthy respect for social constructs. The concept \u201cchair\u201d is a social construct, and chairs are plenty real[2]. In some ways, \u201cgetting things done\u201d is even more real. It can pay your rent! If you don\u2019t respect it, it can even get you fired.\nSummary\n\nJust because you\u2019re doing work doesn\u2019t mean you\u2019re getting things done\nNothing is ever \u201cdone\u201d in the non-abstract world. Everything can be worked on indefinitely\nIf you want to get things done you can\u2019t be a gardener. You have to aim for a bullet-point list of achievements\nSo what\u2019s \u201cdone\u201d mean in that context? It means the company is happy with the state of it\nDeclare victory and walk away: go and do something else!\n\nIf you liked this post, consider subscribing to email updates about my new posts.May 6, 2025\u00a0\u2502 Tags: shipping, tech companies"
                ],
                "output": "readability/",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:02.566388+00:00",
                "status": "succeeded"
            }
        ],
        "screenshot": [],
        "singlefile": [],
        "title": [
            {
                "cmd": [
                    "/usr/bin/curl",
                    "--silent",
                    "--location",
                    "--compressed",
                    "--proxy",
                    "socks5://tor-socks-proxy:9150",
                    "--max-time",
                    "60",
                    "--user-agent",
                    "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 ArchiveBox/{VERSION} (+https://github.com/ArchiveBox/ArchiveBox/)",
                    "https://www.seangoedecke.com/getting-things-done/"
                ],
                "cmd_version": "8.10.1",
                "end_ts": "2025-05-06T14:33:00.448058+00:00",
                "index_texts": null,
                "output": "Getting things \"done\" in large tech companies | sean goedecke",
                "pwd": "/data/archive/1746541954.390012",
                "schema": "ArchiveResult",
                "start_ts": "2025-05-06T14:33:00.296194+00:00",
                "status": "succeeded"
            }
        ],
        "wget": []
    },
    "icons": null,
    "is_archived": true,
    "is_static": false,
    "latest": {
        "archive_org": "https://web.archive.org/web/20250506143327/https://www.seangoedecke.com/getting-things-done/",
        "dom": "output.html",
        "favicon": "favicon.ico",
        "git": null,
        "media": "media/",
        "pdf": null,
        "screenshot": null,
        "singlefile": null,
        "title": "Getting things \"done\" in large tech companies | sean goedecke",
        "warc": null,
        "wget": null
    },
    "link_dir": "/data/archive/1746541954.390012",
    "newest_archive_date": "2025-05-06T14:33:23.656760+00:00",
    "num_failures": 0,
    "num_outputs": 9,
    "oldest_archive_date": "2025-05-06T14:32:39.004898+00:00",
    "path": "/getting-things-done/",
    "schema": "Link",
    "scheme": "https",
    "snapshot_abid": "snp_01JTK06HC2D08341A6018STHH5",
    "snapshot_id": "01356de8-0d01-4b9a-8473-e108d19d4625",
    "sources": [
        "/data/sources/1746541953-import.txt"
    ],
    "tags": null,
    "tags_str": "",
    "timestamp": "1746541954.390012",
    "title": "Getting things \"done\" in large tech companies | sean goedecke",
    "url": "https://www.seangoedecke.com/getting-things-done/"
}