Hacker News new | ask | show | jobs
by ionrock 5817 days ago
Sorry, but that is the majority of softare development. While you may believe all your previous accomplishments were really great, there is most likely someone looking at your code thinking how frustrating it is to work on the codebase. I think it is way easier to start from scratch than take an existing project and move it forward. When you start over, you can build a ton of momentum. You can hold all the complexities in your head. You rarely have the same problems existing solutions have because existing solutions have users that have learned the system and have a set of expectations.

I'm not trying to belittle your previous work, while at the same time you should realize that your frustration with maintenance is somewhat belittling as well. It is simply a different kind of problem that takes a different set of skills and talents to do well. If you consider maintenance in this way, it can be just as rewarding and help further your learning. Likewise, if you are doing maintenance, you are working on software that had some level of success. No one will ever ask you to change a codebase no one uses. You can learn a ton from a codebase that has been around for a while. You see the parts that were bolted on and how that impacts the future, but also how the tradeoff of a more flexible design was actually not necessary.

I'm not trying to be negative, but rather challenge you to change your mindset. I maintain a huge amount of code and it is a huge pain in the neck at times. That said, I also realize that my ability to continually dive into new parts of the code has become easier through time. Even if I do have to read the 1000 lines of code, I'm finding that the process of reading code and making guesses where to read next has become more efficient. Likewise, I've tooled my environment to help me search for leads when solving problems with the code. My perspective on writing new code is radically different because there is a very clear understanding of how I could do a better job for the developer that looks at the code in the future.

In short it can be really frustrating to maintain code, but at the same time it is something that needs to be done. I also believe it can be something done very well. If you see it as a healthy challenge I think you'll find the feelings of burnout will subside and you can take pride in changing that one line that ended up helping save people massive amounts of time and money.

1 comments

The bigger the company, the more software development is turd polishing and brown nosing managers. You have to ask yourself whether the status and money of working for XXXX Corp is what you want or whether you want to respect yourself for the great work you do. If it is the latter, then find a new job with a small, dynamic, with-it company that values your abilities and motivation. If it is the former, then suck it up.

If you can't make up your mind, then take a holiday to recharge your batteries and get away from the day to day battles.