
What kind of Engineer is a better one? Dev vs Maintenance - ifesdjeen
Which Engineer is a better one:<p>1) The one that is able to create a system from scratch, develop, scale, refactor and change the growing system.<p>2) The one who's great in supporting legacy (well you know, sometimes systems become legacy from day one) systems, barely writing code, but dealing with complex old heavy systems, that're really hard to maintain and hack. (well, you know that there're companies where you can't really do a lot of changes in code, since its strictly prohibited: it works in general, don't touch it. just make this stupid button work again for us).<p>It seems to me that one person couldn't combine both, since hardcore developer won't be too pleased to stick along the system, where he can't DO changes. He's starving to make it all better and change EVERYTHING. Other type of people are more or less fine with overall stupidity of system, and can work debugging more than _really_ doing stuff.
======
waivej
I think a good engineer can do both roles. With enough experience, they know
when it's time to refactor and build nice fresh code. Other times they will
know when to just keep things running until there is time to rebuild properly.

Though, if I have to pick one, I would say #2. It's harder to understand
someone else's code and to keep it running smoothly. Though a good engineer
may not be happy to stick around in a company that refuses to invest in their
code properly. But good companies can have old code that should not be heavily
invested in. Likewise, I think young engineers that have never worked with old
code under appreciate how it ages.

In comparison, my parents' have owned some very old houses. They have had
handymen that install things like counters and cabinets. Every piece of wood
needs to be measured in 3 dimensions. Decisions need to be made about which
surface to make something parallel to. They operate in 3d and plan for
eventual settling. Folks that only work on new houses may not think long term
since they rarely need to live with their (or others') decisions.

~~~
ifesdjeen
great answer. at least for me the nice point was about the old house and
"sticking around the company"... it's tough though to convince managers &
business people most of time to make major code changes.

