More on Maintenance
I keep finding more parallels between software maintenance and academic maintenance. Back in my days as a software developer, I vividly remember that the more senior and experienced developers were, the more their jobs were concerned with maintenance. In fact, the head of our programming team was devoting almost all of his time to fixing bugs. He was the most senior developer, who was most intimately familiar with our main product. He always had the largest number of bug reports in his work queue. These were pretty nasty bugs–showstoppers–which stood on the way of shipping the product to the customer. Despite performing an utterly important service for the company (i.e., keeping the product afloat), I remember my team lead being one of the most bitter people I’ve ever encountered. Fixing mostly other people’s mess must not be that fulfilling, even though the activity is vital for the very survival of the product and company. Not wanting to be eventually put in a position like that was one of the primary reasons why I decided to go back to school to get my Ph.D. and seek a career in research rather than in industry.
I am noticing that a faculty’s seniority level is almost directly proportional to the amount of academic maintenance they perform. The amount of service I perform has increased significantly since I got tenure. The faculty with administrative responsibilities mostly focus on academic maintenance rather than research. Department head is the ultimate example of a faculty focusing solely on maintaining the research enterprise of the department. I wonder, however, if focusing on academic maintenance too much can make faculty bitter, similarly to how it tends to work in software development. Too much non-research commitments is indeed stated as a key reason by those who have left academia.
It seems that maintenance, while essential, makes people engaged in it unhappy. There are notable exceptions, however. One of my former bosses claimed that he enjoyed fixing bugs more than he did writing original code. I am sure there are faculty who find departmental service as fulfilling as their research activities. Perhaps some of the techniques used to facilitate software maintenance can be applied to academic maintenance. Appropriate architecture, thoughtful design, solid implementation–all are known to streamline the maintenance process. A well-structured academic department with well-engineered work processes indeed reduces and simplifies the maintenance of the research enterprise as well. I wonder what other software maintenance state of the art can be applied here.