Sign in

Matheus Lima

@terriblesoftware.org
874 followers 189 following 115 posts

💡 Posting about Software, Management, and Tech 👨‍💻 Engineering Manager @ Tremendous 🚀 Previously, Sr. Software Engineer @ Carta ✍️ terriblesoftware.org

PostsRepliesMedia
Matheus Lima @terriblesoftware.org · 14/09/2026
I also recommend you to read @charity.wtf 's piece, which is very similar to what I wrote Friday... charity.wtf/p/confession...
charity.wtf
Confessions of an Unrepentant Slop Snob
A framework for thinking about when AI involvement is additive or a violation
020
Matheus Lima @terriblesoftware.org · 10/09/2026
I used to start reviews with “is this a good change?” Now I often start with “does the author even understand what they’re sending me?” When that trust is gone, you end up doing their work before you can do yours New post: terriblesoftware.org/2026/09/10/a...
terriblesoftware.org
AI Is Breaking This Thing We Call Trust
AI-generated work can look finished without being understood. That uncertainty erodes trust, slows reviews, and leaves colleagues doing the missing work.
042
Reposted by Matheus Lima
Stef Walter @stephaniewalter.bsky.social · 08/09/2026
“I would have written a shorter letter, but I did not have the time.” (Blaise Pascal). @terriblesoftware.org explains that the time “saved” by a developer who used AI to make a decision and write code isn’t saved at all. It was just transferred to the next person, who now has even more review time.
terriblesoftware.org
You Got Faster. Your Company Didn’t.
AI made you faster. But you’re not more productive; you’re outsourcing the slow part to everyone else
2203
Matheus Lima @terriblesoftware.org · 17/06/2026
AI made everyone on your team faster. So why are companies slower? Because "faster" usually means offloading the real work to whoever comes next. terriblesoftware.org/2026/06/17/y...
terriblesoftware.org
You Got Faster. Your Company Didn’t.
AI made you faster. But you’re not more productive; you’re outsourcing the slow part to everyone else
233
Matheus Lima @terriblesoftware.org · 27/05/2026
AI should make you think better. It should not become a comfortable place to hide from the work. terriblesoftware.org/2026/05/27/u...
terriblesoftware.org
Using My Fucking Brain
AI is great when it extends your brain. It gets dangerous when it quietly replaces the part that was supposed to think.
140
Matheus Lima @terriblesoftware.org · 01/04/2026
Some engineers quietly resent not being picked for roles they never asked for. New post on why your manager can't help you if you don't open the door: terriblesoftware.org/2026/04/01/s...
terriblesoftware.org
Say the Thing You Want
If you want something at work, say it out loud. Your silence isn’t saving you.
010
Matheus Lima @terriblesoftware.org · 27/03/2026
Everyone's saying "taste" is the skill that matters in the AI era. Here's why I don't like this: terriblesoftware.org/2026/03/27/g...
terriblesoftware.org
“Good Taste” Is Just Experience
What people call “good taste” is really just experience earned through reps. Stop making it sound innate.
000
Matheus Lima @terriblesoftware.org · 03/03/2026
You can't write a compelling promotion packet about the thing you didn't build. And that's the whole problem. terriblesoftware.org/2026/03/03/n...
terriblesoftware.org
Nobody Gets Promoted for Simplicity
We reward complexity and ignore simplicity. In interviews, design reviews, and promotions. Here’s how to fix it.
2187
Matheus Lima @terriblesoftware.org · 02/02/2026
"What do you think?" without sharing what YOU think isn't collaboration, but more like outsourcing cognitive work. New post on why stating your position (even when uncertain) moves things forward faster. terriblesoftware.org/2026/02/02/w...
terriblesoftware.org
Why Am I Doing the Thinking for You?
‘What do you think?’ without a position isn’t a question — it’s a task assignment. State your opinion first. Let people react to something concrete.
020
Matheus Lima @terriblesoftware.org · 22/01/2026
"I'm a manager now so I don't code anymore." Is that because you genuinely can't, or because you've convinced yourself you shouldn't? terriblesoftware.org/2026/01/22/w...
terriblesoftware.org
Why I Still Write Code as an Engineering Manager
I still code as an engineering manager. Not to stay busy, but to show my team what good looks like.
021
Matheus Lima @terriblesoftware.org · 15/01/2026
I spent weeks looking for an iPad math app for my 6yo Most of them were bad. Notifications, streaks, weird ads, systems designed to keep her hooked So I decided to vibe code her something without any addictive shady patterns She's been loving it, so I'm making it open source and sharing it
150
Matheus Lima @terriblesoftware.org · 08/01/2026
I switched everything (podcasts, YouTube, audiobooks) to 1x speed. New rule: if it's not worth consuming at 1x, it's not worth consuming at all. terriblesoftware.org/2026/01/08/l...
terriblesoftware.org
Life Happens at 1x Speed
Why I stopped consuming content at 2x speed, and the simple rule that changed how I listen to everything.
044
Matheus Lima @terriblesoftware.org · 05/01/2026
"I want to grow, but my manager isn't giving me the right opportunities." I hear this a lot. Here's the thing: even the best manager can only do so much. If you want growth, start creating your own opportunities. terriblesoftware.org/2026/01/05/c...
terriblesoftware.org
Creating Your Own Opportunities
The best career opportunities don’t necessarily come from your manager. They come from seeing potential in the boring work already on your plate.
041
Matheus Lima @terriblesoftware.org · 29/12/2025
January: "maybe a few people will read this" Today: 230,000+ unique visitors, two #1 Hacker News posts, and a lot of emails from strangers My (writing) year in review: terriblesoftware.org/2025/12/29/a...
terriblesoftware.org
A Year of Writing for Myself (That 230,000+ People Read)
I started this blog about a year ago with pretty modest expectations. It started as a place to organize my thoughts on management, engineering, and everything else in between. I figured maybe a few…
021
Matheus Lima @terriblesoftware.org · 19/12/2025
I wrote about AI and got backlash from an unexpected direction. Engineers didn't argue AI would replace them; they argued it couldn't even write code. That's... concerning. terriblesoftware.org/2025/12/19/t...
terriblesoftware.org
The Strange Case of Engineers Who Dismiss AI
Some engineers dismiss AI coding tools as ‘garbage’ without trying modern versions. Their outdated opinions are costing them.
010
Matheus Lima @terriblesoftware.org · 11/12/2025
I've been thinking about what AI actually changes for software engineers, and what it doesn't. Wrote some thoughts: terriblesoftware.org/2025/12/11/a...
terriblesoftware.org
AI Can Write Your Code. It Can’t Do Your Job.
The companies building AI are spending billions to acquire engineers, not replace them. Here’s why your job is safer than you think.
020
Matheus Lima @terriblesoftware.org · 25/11/2025
The thing that actually makes you senior isn't architecture or communication or ownership. It's being the person who makes fuzzy things concrete. terriblesoftware.org/2025/11/25/w...
terriblesoftware.org
What Actually Makes You Senior
The one skill that separates senior engineers from everyone else isn’t technical. It’s the ability to take ambiguous problems and make them concrete.Retry
0102
Matheus Lima @terriblesoftware.org · 24/10/2025
New post is out 🔥 If you're copy-pasting AI responses as code review feedback, you're not helping. You're just creating more work for everyone else. Your teammates need YOUR thoughts, not ChatGPT's generic advice. terriblesoftware.org/2025/10/24/c...
terriblesoftware.org
“ChatGPT said this” Is Lazy
When you paste ChatGPT’s response instead of your own feedback, you’re not being helpful. You’re being lazy and creating more work for everyone.
050
Matheus Lima @terriblesoftware.org · 01/10/2025
Politics isn't manipulation and backstabbing. It's understanding how decisions actually get made and learning to navigate that reality. Refusing to engage doesn't make politics go away. It just means you lose by default. terriblesoftware.org/2025/10/01/s...
terriblesoftware.org
Stop Avoiding Politics
Most engineers think workplace politics is dirty. They’re wrong. Refusing to play politics doesn’t make you noble; it makes you ineffective.
397
Reposted by Matheus Lima
Brittany Ellich @brittanyellich.com · 25/08/2025
ICYMI: this week's Balanced Engineer Newsletter has three articles to be a more balanced software engineer: ✨ An interactive overview of Big O Notation from @samwho.dev ✨ What shouldn't be written by AI from Sean Goedecke ✨ The management skill no one talks about from @terriblesoftware.org
archives.balancedengineer.com
The Balanced Engineer • Issue #34
Diving into Big O Notation, exploring AI content norms, and understanding the management skill that nobody talks about with content from Sam Rose, Sean Goedecke, and Matheus Lima!
0114
Matheus Lima @terriblesoftware.org · 22/08/2025
Read a parenting book recently (stay with me here) that completely changed how I think about management. Turns out the most important skill isn't avoiding mistakes, it's what you do after making them. terriblesoftware.org/2025/08/22/t...
terriblesoftware.org
The Management Skill Nobody Talks About
“There is a crack in everything. That’s how the light gets in.” — Leonard Cohen Let me tell you something that will happen after you become a manager: you’re going to mess u…
263
Matheus Lima @terriblesoftware.org · 04/08/2025
"Be the pilot, not the turbulence." Great parenting advice that's equally true for management.
020
Reposted by Matheus Lima
Charity Majors @charity.wtf · 30/07/2025
This is a thought provoking, bite sized little piece that boils down to, "don't give feedback on EVERYTHING, because not everything matters! give feedback on things that have impact." I think it's a *great* exercise for the feedback-giver to think through the impact they want their advice to have.
38213
Matheus Lima @terriblesoftware.org · 18/07/2025
How much of your feedback is actually about performance vs. personal preference? If you can't point to specific impact, maybe the behavior that needs changing is yours. terriblesoftware.org/2025/07/18/w...
terriblesoftware.org
Why Most Feedback Shouldn’t Exist
Before giving feedback, ask yourself: is there measurable impact? Most manager feedback is just personal preference disguised as professional development. Stop policing personality.
1203
Matheus Lima @terriblesoftware.org · 14/07/2025
The faster tech changes, the more valuable the things that don't change become. New post on why fundamentals matter more than ever: terriblesoftware.org/2025/07/14/w...
terriblesoftware.org
What Doesn’t Change
Why the faster tech evolves and AI advances, the more valuable computer science fundamentals become. Understanding principles beats chasing trends.
020
Matheus Lima @terriblesoftware.org · 27/06/2025
Built a tiny zsh plugin that's been super helpful for me - converts natural language to shell commands. Just 5KB, no dependencies. Would love feedback! github.com/matheusml/zsh-ai
041
Matheus Lima @terriblesoftware.org · 24/06/2025
After 10+ years as an engineer, I became the thing I used to complain about: a manager. Finally wrote about why this relationship is so broken (and how to fix it): terriblesoftware.org/2025/06/24/w...
terriblesoftware.org
Why Engineers Hate Their Managers (And What to Do About It)
Discover why engineers hate managers, the common management anti-patterns that destroy trust, and practical solutions from someone who’s been on both sides.
010
Matheus Lima @terriblesoftware.org · 13/06/2025
New post is out; I think you'll link this one! terriblesoftware.org/2025/06/13/g...
terriblesoftware.org
Good Engineer/Bad Engineer
Why the best engineers aren’t always the smartest — and what separates engineers who ship from those who just code.
031
Matheus Lima @terriblesoftware.org · 12/06/2025
When AI says, "You're absolutely right!", something bad usually follows
030
Reposted by Matheus Lima
Dan Denney @dandenney.com · 09/06/2025
Fantastic explanation of the challenges of developing in a codebase over time My fave line: “Every new requirement makes it slightly worse, but never quite bad enough to justify a complete rewrite.” terriblesoftware.org/2025/05/28/d...
terriblesoftware.org
Duplication Is Not the Enemy
We’re taught to eliminate duplication at all costs. But the wrong abstraction is far more expensive than a little copy-paste. Here’s why.
023
Matheus Lima @terriblesoftware.org · 09/06/2025
Last year I wrote about how AI won't replace programmers — just like COBOL, OOP, and Low Code didn't. Got a lot of heat for it. "This time is different!" they said. A year later, we're still here. Still shipping. Still needed. terriblesoftware.org/2024/12/14/w...
terriblesoftware.org
We’ve Been Here Before
Technological advancements have empowered engineers to focus on creativity and strategy. AI will similarly elevate human insight, generating growth and innovation.
020
Matheus Lima @terriblesoftware.org · 03/06/2025
Really good post. I don't necessarily agree with "but the craft" section, because if engineers stop loving what they do... they'll probably stop doing it. But again, great post. fly.io/blog/youre-a...
fly.io
My AI Skeptic Friends Are All Nuts
My smartest friends have bananas arguments about LLM coding.
020
Matheus Lima @terriblesoftware.org · 28/05/2025
Hot take: Stop following DRY so religiously. I've seen more codebases destroyed by premature abstraction than by duplication. Sometimes copy-paste is the right answer. New post: terriblesoftware.org/2025/05/28/d...
terriblesoftware.org
Duplication Is Not the Enemy
We’re taught to eliminate duplication at all costs. But the wrong abstraction is far more expensive than a little copy-paste. Here’s why.
143
Reposted by Matheus Lima
Matheus Lima @terriblesoftware.org · 16/05/2025
Your engineers don't want you to make them "happy" — they want you to help them ship meaningful work. terriblesoftware.org/2025/05/16/m...
terriblesoftware.org
Manage For Success, Not Comfort
Great managers build effective engineering teams focused on results, not just team comfort. Success drives satisfaction—not the other way around.
031
Matheus Lima @terriblesoftware.org · 16/05/2025
Your engineers don't want you to make them "happy" — they want you to help them ship meaningful work. terriblesoftware.org/2025/05/16/m...
terriblesoftware.org
Manage For Success, Not Comfort
Great managers build effective engineering teams focused on results, not just team comfort. Success drives satisfaction—not the other way around.
031
Matheus Lima @terriblesoftware.org · 23/04/2025
I just published "The Hidden Cost of AI Coding" As AI coding tools make us more productive, are we sacrificing the joy that made us fall in love with programming? terriblesoftware.org/2025/04/23/t...
terriblesoftware.org
The Hidden Cost of AI Coding
AI coding tools boost productivity but may sacrifice the flow state and deep satisfaction developers experience when writing code by hand. What are we losing?
6145
Matheus Lima @terriblesoftware.org · 21/04/2025
When I posted this, I didn't expect the amount of engagement it's been getting. People are really resonating with it.
130
Matheus Lima @terriblesoftware.org · 14/04/2025
Vibe coding is fun, but don't be fooled: it can only get you so far.
A graph showing software development progress over time. Initial "vibe coding" creates rapid progress to ~80% (prototype), while the "long tail" slowly reaches production-ready state.
031
Reposted by Matheus Lima
Charity Majors @charity.wtf · 12/04/2025
I do not think it is accurate to say "much of the interest in LLM-written code comes from business owners whose main goal is to reduce worker power." I think there are business owners who are looking for ways to move faster, who are deeply anxious about being outcompeted and left behind.
5544
Matheus Lima @terriblesoftware.org · 07/04/2025
New post is out 🔥 "The real threat isn't AI—it's sticking to outdated ways while the industry evolves around you." As engineering leaders, we can't afford to ignore AI anymore. Our teams are looking for guidance on how to use these tools effectively. terriblesoftware.org/2025/04/07/m...
terriblesoftware.org
Making AI Actually Work on Your Team
Engineering leaders can no longer ignore AI. Learn practical steps to guide your team through AI adoption while maintaining quality and addressing legitimate concerns.
110
Matheus Lima @terriblesoftware.org · 31/03/2025
Strengths and weaknesses are two sides of the same coin. As managers, our job isn't to "fix" people but to help them recognize when to dial traits up or down. Just published: terriblesoftware.org/2025/03/31/y...
terriblesoftware.org
Your Strengths Are Your Weaknesses
The qualities you value most in engineers are also creating your biggest problems. Here’s how to handle this paradox.
040
Reposted by Matheus Lima
Sarah Drasner @sarahedo.bsky.social · 18/03/2025
I have a passive theory that the manner in which junior and senior devs leverage AI assistance for coding is fundamentally different: (1/?)
1013519
Reposted by Matheus Lima
John Gruber @gruber.foo · 12/03/2025
★ Something Is Rotten in the State of Cupertino
daringfireball.net
Something Is Rotten in the State of Cupertino
Who decided these personalized Siri features should go in the WWDC keynote, with a promise they’d arrive in the coming year, when, at the time, they were in such an unfinished state they could not be demoed to the media even in a controlled environment? Three months later, who decided Apple should double down and advertise these features in a TV commercial, and promote them as a selling point of the iPhone 16 lineup?
8848484
Reposted by Matheus Lima
Charity Majors @charity.wtf · 13/03/2025
Psychological safety is NOT about lack of disagreement. Psychological safety REQUIRES: * disagreement and debate * setting standards for behavior and performance, and enforcing them * telling people things they don't want to hear * courage, from the bottom up * humility, from the top down
826971
Matheus Lima @terriblesoftware.org · 12/03/2025
Controversial take: teams that never argue are often the most dysfunctional ones. Here's why your team should be fighting more. terriblesoftware.org/2025/03/12/w...
terriblesoftware.org
Why Your ‘Harmonious’ Team Is Actually Failing
Teams often confuse psychological safety with everyone getting along perfectly. I see leaders bragging about teams where nobody ever raises their voice, where meetings wrap up with everyone nodding…
2238
Matheus Lima @terriblesoftware.org · 17/02/2025
I've been using this note taking system for a while, and decided to share with you all 📝 Hope you enjoy it! terriblesoftware.org/2025/02/17/a...
terriblesoftware.org
A Simple Note-Taking System for Managers
This note-taking system fosters constructive feedback and encourages growth, combining essential tracking with positivity to enhance performance discussions effectively. Tailor it to your unique st…
010
Matheus Lima @terriblesoftware.org · 17/02/2025
"It is not programmers who will be out of work. It will be the people—in every job role—who don’t become AI-assisted programmers." www.oreilly.com/radar/the-en...
oreilly.com
The End of Programming as We Know It
011
Matheus Lima @terriblesoftware.org · 13/02/2025
Asking LLMs for life advice is modern day astrology
020
Reposted by Matheus Lima
Carl T. Bergstrom @carlbergstrom.com · 04/02/2025
Modern-Day Oracles or Bullshit Machines? Jevin West (@jevinwest.bsky.social) and I have spent the last eight months developing the course on large language models (LLMs) that we think every college freshman needs to take. thebullshitmachines.com
thebullshitmachines.com
INTRODUCTION
17528051006
Matheus Lima @terriblesoftware.org · 10/02/2025
Controversial one, but here I explain why there’s never been a better moment to be a Junior Developer. I hope you like it. terriblesoftware.org/2025/02/10/t...
terriblesoftware.org
The RISE of the Junior Developer
Discover how Junior Developers now level up at lightning speed, as AI turns every code review into real-time, on-demand mentorship.
131