Bad Legacy Codebases

Developers share experiences of joining teams or companies and encountering poorly written, spaghetti-like legacy codebases, often involving frustrations with refactoring, incompetent prior work, and code review battles.

📉 Falling 0.5x Career & Jobs
5,096
Comments
20
Years Active
5
Top Authors
#7442
Topic ID

Activity Over Time

2007
7
2008
26
2009
55
2010
100
2011
131
2012
139
2013
175
2014
176
2015
210
2016
256
2017
307
2018
327
2019
342
2020
394
2021
463
2022
594
2023
477
2024
401
2025
480
2026
40

Keywords

IMHO ABC IPO CI DICOM SFC P.D YOLO SO CTO code hired team project boss cat codebase refactor fix fixing

Sample Comments

raztogt21 Aug 23, 2018 View on HN

Disagree, joined a company 3 months ago. Started a huge refactor the first week in. Then, a bigger refactor the second month in. I feel I've already earn my credentials with these 3 refactors.The directors and the team leader appreciate the honesty and my initiative to make the codebase healthier.Like Ray Dalio says, 'don't tolerate shit'.P.D: I rewrote a huge section of the application on Vue2 with SFC's. The other three developers who wrote backend mostly, tri

damon_c May 29, 2013 View on HN

I was recently hired to complete a specific task on a project that sounds similar to this one. On the 2nd day of my involvement and having read through the code a bit, I realized that the task I was hired to complete was the last thing they should be worried about given some of the existential issues in the code and architecture given the deadline.I voiced some of my concerns to the manager of the project. He got upset and defensive. I quit on the spot.I had never done anything like tha

chartreuse123 Mar 31, 2021 View on HN

I don't think you are a bad software engineer, most probably you are just not used to work in a big team. You are new in this middle size company and you are given the very badly written code which you are not familiar with at all. Most probably this code is big and exists for the long time and was modified chaotically to satisfy the urgent needs of customers. It is almost impossible to become efficient with this code immediately. May be I am wrong, but it seems you tried to work on your ta

creshal Dec 1, 2016 View on HN

Break them, fix them, and move on. Must we coddle to every programmer's incompetence?

pkaye Nov 28, 2018 View on HN

A coworker really wanted to be a technical lead on a firmware project so our boss gave him one. Part way through our boss asked me to help the coworker out but I had a tough time understanding his code. Soon enough he admits that his is leaving the company. He created too much of a mess and wanted to bail out. Suddenly it was all my responsibility. And this was with an major customer we had multiple partnerships with. So somehow I had to salvage everything without making them aware the mess we

jack_h Jul 2, 2020 View on HN

Yeah, I'm in a similar situation at the moment.It's incredibly frustrating because during code reviews I will request changes so it's not such a broken hack job, and the response will basically be "No, it's not worth changing". At which point I'm the one "holding up development". We wasted hundreds of development hours during the last project because of this persons "inventive" code, and nobody seems to understand what's going on.

d13 Feb 18, 2022 View on HN

They hired you and have to take responsibility for training you. Don’t let they’re Byzantine development practices scare you. In all places that I’ve worked in like that - Jira sweat shops - the product was a tinderbox of disaster code waiting to burst into flames and nobody noticed. Everyone is chained to their Jira tickets - including the whole management hierarchy - and nobody bothers to look up to take a fresh look at the big picture. You have out-of-the box, novel experience and can help

de6u99er Apr 22, 2021 View on HN

At my last job my boss, who is a notorious micro manager, hired a guy against strong ojections from my side. The guy was only one week for every two months onsite which nobody told me. After some while my boss asked me how it's going with him. This was the first time someone indicated to me that he already started working for us.I thought first it was kind of funny, but this guy turned out to be a complete disaster. E.g. when I asked him about his progress he was talking about abstract c

penetrarthur Aug 23, 2018 View on HN

Gamedev.I joined a small company 8 months ago. The code at first felt somewhat sane, but the more I worked with it the more I understood that the whole project is a huge copypaste mom's spaghetti. I started rewriting everything I "legally"(somewhat within the scope of my tasks) could. I also kept asking the lead coder about the poor quality and poor decisions up to the point where all we did was argue. Management saw this and it turns out they were not satisfied with his perfor

singingfish Apr 7, 2018 View on HN

I got hired as a backend "rockstar" a few years ago. Didn't work well.1. I made some mistakes (my general response to said mistakes was to work to ensure the CI tool guaranteed said mistakes couldn't be repeated. Included kicking up CI into the process in the first place by fixing their test rot and enabling someone else to bring jenkins into the mix). One of those mistakes did cause a recoverable partial outage.2. The extensive unfucking of the backend I performed