Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

My experience is quite similar. I also got to start out as junior maintainer. I got to work on two of THE crappiest pieces of software in house. I learned a lot, rewrote both of them (at least the shitty parts) - one piece by piece, the other in a month of crunch time. And made them into two of least problematic pieces of code in house.

The experience I gained helped my career incredibly. But then something changed - I kept being transfered from one battlefield to another (thats what happens when you're the best for solving crappy situations). That might be fine and dandy, if your solutions stick. But in my situation juniors were doing greenfield work (since they weren't capable of doing maintaining after themselves - which is kinda ironic) and I got to clean up the mess that I could of easily prevented by getting to apply the experience and knowledge I got solving mess day after day. This kind of situation wears you out pretty fast and so I quit.

So if I got asked how to become really good at doing software. Look for work nobody wants to do and say "Bring it on!". Learn to love the crappy work, then toot your horn and demand fair compensation. But be weary of burn out and thus be prepared to bail out when you start hating what you do. This strategy has many good aspects to it: Customers appreciation levels are way higher - since at greenfield level work everybody expects latest and greatest of impeccable quality in contrast when maintaining - any improvement is considered minor miracle. Plus if you get any good at this kind of work, even if you act out a diva now and then, no one will hold it against you :)



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: