41554 blogs · [ { "id": "01a0bb48-62ce-7116-84c0-bab27a40730c", "title": "Done-ish", "url": "https://kevinlondon.com/posts/2026-09-16-done-ish/", "published_at": "2026-09-17T04:24:30+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f080bdeb", "title": "Nothing to Catch", "url": "https://kevinlondon.com/posts/2026-07-15-nothing-to-catch/", "published_at": "2026-07-15T16:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f17cd923", "title": "Burning the 3:40 AM Window", "url": "https://kevinlondon.com/posts/2026-07-07-burning-the-3-40-am-window/", "published_at": "2026-07-08T06:25:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f1a7fe34", "title": "Parachuting In", "url": "https://kevinlondon.com/posts/2026-04-15-parachuting-in/", "published_at": "2026-04-28T15:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f28770e6", "title": "Two tables", "url": "https://kevinlondon.com/posts/2026-04-08-two-tables/", "published_at": "2026-04-08T14:30:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f335c813", "title": "You can't borrow muscle memory", "url": "https://kevinlondon.com/posts/2026-03-21-getting-better-with-ai/", "published_at": "2026-04-02T15:22:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f4307c10", "title": "Temporary is Permanent", "url": "https://kevinlondon.com/posts/2026-03-15-temporary-is-permanent/", "published_at": "2026-03-24T16:30:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f4e9c76e", "title": "You can use AI every day and still not get better", "url": "https://kevinlondon.com/posts/2026-03-12-ai-every-day-and-not-get-better/", "published_at": "2026-03-12T21:48:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f5d7a6ed", "title": "Ideas Die in Drafts", "url": "https://kevinlondon.com/posts/2026-03-04-ideas-die-in-drafts/", "published_at": "2026-03-05T04:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fe9dd301", "title": "My Experience with the Amazon Promotion Process", "url": "https://kevinlondon.com/posts/2023-01-24-thinking-about-promotions/", "published_at": "2026-02-22T05:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560cbfbf03", "title": "Dangerous Python Functions, Part 2", "url": "https://kevinlondon.com/posts/2015-08-15-dangerous-python-functions-pt2/", "published_at": "2026-02-21T18:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560d9222ab", "title": "Dangerous Python Functions", "url": "https://kevinlondon.com/posts/2015-07-26-dangerous-python-functions/", "published_at": "2026-02-21T18:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fceeeb56", "title": "The Quadrant Test", "url": "https://kevinlondon.com/posts/2023-07-03-quadrant-test/", "published_at": "2026-02-18T05:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f6555606", "title": "Wider, Not Faster", "url": "https://kevinlondon.com/posts/2026-02-15-not-faster-but-wider/", "published_at": "2026-02-16T04:20:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f67a88e9", "title": "The Rock Tumbler", "url": "https://kevinlondon.com/posts/2026-01-31-rock-tumbler/", "published_at": "2026-02-01T03:24:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f6efd19b", "title": "High-Bandwidth Communication", "url": "https://kevinlondon.com/posts/2025-10-19-high-bandwidth-communication/", "published_at": "2025-10-21T04:25:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f76015fe", "title": "Getting out of my own way: Lessons from becoming a Staff Engineer", "url": "https://kevinlondon.com/posts/2025-10-06-staff-eng-lessons/", "published_at": "2025-10-07T02:26:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f7b291f9", "title": "Why I write (and why you might want to too)", "url": "https://kevinlondon.com/posts/2025-06-22-why-i-write/", "published_at": "2025-06-23T02:12:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f86617ab", "title": "The AI Prisoner's Dilemma", "url": "https://kevinlondon.com/posts/2025-06-12-ai-prisoners-dilemma/", "published_at": "2025-06-13T04:44:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f9000e48", "title": "I made a game with AI and I don't know how to feel about it", "url": "https://kevinlondon.com/posts/2025-06-04-building-game-with-ai/", "published_at": "2025-06-05T06:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955f9d10536", "title": "Know where you're going (and be open to change)", "url": "https://kevinlondon.com/posts/2025-02-20-know-where-youre-going/", "published_at": "2025-02-21T06:30:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fa5e5e95", "title": "Jekyll to Astro: an AI-assisted migration", "url": "https://kevinlondon.com/posts/2024-11-27-ai-blog-rewrite/", "published_at": "2024-11-28T18:00:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fa6db8f1", "title": "Personal Finance for Engineers", "url": "https://kevinlondon.com/posts/2024-06-08-personal-finance-for-eng/", "published_at": "2024-06-09T04:09:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fb087ee3", "title": "In Python, Rose == 'Red', Violet is not 'Blue'", "url": "https://kevinlondon.com/posts/2024-06-08-color-is-red/", "published_at": "2024-06-08T16:57:10+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fbf36804", "title": "Launching Effective One-on-One Meetings", "url": "https://kevinlondon.com/posts/2023-11-04-one-on-one-guidelines/", "published_at": "2023-11-04T14:41:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fbf5a8cf", "title": "Tech Interview Tips and Strategies", "url": "https://kevinlondon.com/posts/2023-07-05-interview-tips-and-tricks/", "published_at": "2023-07-05T19:53:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955fde25c38", "title": "Senior Engineer Job Search Preparation", "url": "https://kevinlondon.com/posts/2023-05-01-senior-engineer-job-search-preparation/", "published_at": "2023-05-01T19:53:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955ff3f276e", "title": "Backfill Considerations and Lessons Learned", "url": "https://kevinlondon.com/posts/2022-12-06-backfill-considerations/", "published_at": "2022-12-07T02:22:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8955ffe10606", "title": "Reflections on my Amazon Career", "url": "https://kevinlondon.com/posts/2022-06-03-reflections-amazon-career/", "published_at": "2022-06-03T07:57:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956009844b8", "title": "Providing Effective Feedback to Engineers", "url": "https://kevinlondon.com/posts/2022-02-12-providing-feedback-to-engineers/", "published_at": "2022-02-12T16:41:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956018b37ee", "title": "Load Testing Guide", "url": "https://kevinlondon.com/posts/2022-01-13-load-testing-guide/", "published_at": "2022-01-14T02:22:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956025b5321", "title": "Getting Unstuck", "url": "https://kevinlondon.com/posts/2021-10-13-asking-for-help/", "published_at": "2021-10-13T20:00:01+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956027d7e36", "title": "My Path to Software Engineering", "url": "https://kevinlondon.com/posts/2019-12-09-my-path-to-engineering/", "published_at": "2019-12-09T20:35:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956034ba923", "title": "The Princess and the Pea", "url": "https://kevinlondon.com/posts/2019-11-08-princess-and-the-pea/", "published_at": "2019-11-08T20:35:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-895604499ac5", "title": "Don't Bake a Cake", "url": "https://kevinlondon.com/posts/2019-03-16-dont-bake-a-cake/", "published_at": "2019-03-16T20:35:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560487127c", "title": "AWS Certified Solutions Architect - Associate Notes", "url": "https://kevinlondon.com/posts/2018-09-08-aws-solutions-architect-associate/", "published_at": "2018-09-08T16:23:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560495ab05", "title": "An Intro to AWS Certifications", "url": "https://kevinlondon.com/posts/2018-09-04-aws-certifications/", "published_at": "2018-09-04T20:23:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-895604a800d9", "title": "What is Churning and Why Should I Care?", "url": "https://kevinlondon.com/posts/2018-06-23-intro-to-churning/", "published_at": "2018-06-23T12:32:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-895605383cbe", "title": "More Code Review Best Practices", "url": "https://kevinlondon.com/posts/2018-06-05-more-code-review-best-practices/", "published_at": "2018-06-05T22:50:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560575298f", "title": "Programmer Resources", "url": "https://kevinlondon.com/posts/2018-05-02-programmer-resources/", "published_at": "2018-05-02T22:50:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956063ed511", "title": "Dangerous Python Functions, Part 3", "url": "https://kevinlondon.com/posts/2017-01-30-dangerous-python-functions-pt3/", "published_at": "2017-01-30T21:33:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-895606952839", "title": "DevOps from Scratch, Part 2: Amazon & Terraform", "url": "https://kevinlondon.com/posts/2016-09-20-devops-from-scratch-pt-2/", "published_at": "2016-09-20T19:32:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-895607070d61", "title": "DevOps from Scratch, Part 1: Vagrant & Ansible", "url": "https://kevinlondon.com/posts/2016-09-19-devops-from-scratch-pt-1/", "published_at": "2016-09-19T19:32:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-895607d52f3e", "title": "Refactoring Analogies", "url": "https://kevinlondon.com/posts/2016-09-12-refactoring-analogies/", "published_at": "2016-09-12T13:54:09+00:00" }, { "id": "01a08795-3278-7001-a4f2-895607f4e44f", "title": "Two Trains Talk", "url": "https://kevinlondon.com/posts/2016-08-29-two-trains-talk/", "published_at": "2016-08-29T22:50:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956086cad97", "title": "Strategies for Writing Useful Tests", "url": "https://kevinlondon.com/posts/2016-06-11-writing-useful-tests/", "published_at": "2016-06-11T13:54:09+00:00" }, { "id": "01a08795-3278-7001-a4f2-895609239237", "title": "How to Land the Right Tech Job for You", "url": "https://kevinlondon.com/posts/2016-01-21-job-hunt-guide/", "published_at": "2016-01-21T20:45:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-895609ed730f", "title": "How to Prepare for Talks", "url": "https://kevinlondon.com/posts/2015-11-01-how-i-prepare-talks/", "published_at": "2015-11-01T22:09:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560aeb16c7", "title": "Answers to Django Security Questions", "url": "https://kevinlondon.com/posts/2015-10-16-answers-to-django-security-questions/", "published_at": "2015-10-16T13:56:04+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560bd31ed9", "title": "Using Bandit in the Field", "url": "https://kevinlondon.com/posts/2015-09-25-using-bandit-in-the-field/", "published_at": "2015-09-25T22:17:10+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560c0e6d92", "title": "Finding Vulnerabilities with Bandit", "url": "https://kevinlondon.com/posts/2015-09-24-finding-vulnerabilities-with-bandit/", "published_at": "2015-09-24T22:37:10+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560c86d483", "title": "10 Software Talks to Listen to on Your Way to Work", "url": "https://kevinlondon.com/posts/2015-09-10-10-software-talks-to-listen-to/", "published_at": "2015-09-10T22:17:10+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560dd8e7ac", "title": "The Sunglasses Scam", "url": "https://kevinlondon.com/posts/2015-07-14-sunglasses-scam/", "published_at": "2015-07-14T21:09:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560e8d660e", "title": "Intro to Code Reviews talk", "url": "https://kevinlondon.com/posts/2015-06-25-intro-to-code-reviews-talk/", "published_at": "2015-06-25T15:54:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560e95c60a", "title": "Impostor Syndrome and Me", "url": "https://kevinlondon.com/posts/2015-05-27-impostor-syndrome-and-me/", "published_at": "2015-05-27T20:09:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560ef33741", "title": "Code Review Best Practices", "url": "https://kevinlondon.com/posts/2015-05-05-code-review-best-practices/", "published_at": "2015-05-05T15:54:08+00:00" }, { "id": "01a08795-3278-7001-a4f2-89560f7315ca", "title": "Python / Django Talks", "url": "https://kevinlondon.com/posts/2014-08-18-python-django-talks/", "published_at": "2014-08-19T02:51:38+00:00" }, { "id": "01a08795-3278-7001-a4f2-8956102701f1", "title": "Submitting a Patch to CPython", "url": "https://kevinlondon.com/posts/2014-08-03-submitting-a-patch-to-cpython/", "published_at": "2014-08-03T19:32:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-895610d803b5", "title": "7 Lessons Learned from Teaching My Brother to Program", "url": "https://kevinlondon.com/posts/2014-06-10-7-lessons-learned-from-teaching-my-brother-about-programming/", "published_at": "2014-06-10T19:32:00+00:00" }, { "id": "01a08795-3278-7001-a4f2-89561138085c", "title": "Georgia Tech OMS CS", "url": "https://kevinlondon.com/posts/2014-05-20-georgia-tech-oms-cs/", "published_at": "2014-05-20T21:45:56+00:00" } ] posts Claim your blog
Back to Kaedon
Blog · corpus.blog/blogs/kevinlondon.com/posts

Kaedon

kevinlondon.com

2026

2025

2024

2023

2022

2021

2019

2018

2017

2016

2015

2014