Hi- Iím a newcomer to this forum and joined to pose the above question to members.
Obviously, web pages and webmaster responsibilities can vary so dramatically that itís impossible to truly quantify or establish a metric that we can measure as "too much" work to manageÖ but just as obvious- thereís a finite amount of work and responsibility that any one person can handle.
Iím a webmaster for a school at a large university and although the faculty/staff that I support are great people, they have an insatiable appetite for more, more, more. Iím solely responsible for hundreds of basic pages, but also dozens and dozens of very complicated pages that interact with databases and have lots of moving parts. Iím also responsible for server administration, PHP programming, CSS design, graphic design, Flash programming, AJAX programming, MySQL database design and maintenance, user support, web security, online calendars, etc., etc.
In the last 9 months, Iíve redesigned the entire site and added on numerous features that require intensive programming that interact with databases and I have a steady backlog that extends at least two months into the futureÖ so Iím constantly adding more pages/features that I first have to create and then have to maintain them along with all the other existing content/features.
At some point, the sheer amount of web work Iíve built will exceed my ability to maintain it. Furthermore, I am experiencing developer fatigue because I have literally been in constant development for 9 months and thereís no end in sight. As a one-man team, itís a real challenge that all of this falls on my shoulders. Iíve been with the university for 18 months and the amount and complexity of the site has easily risen 10-fold.
Have any of you run into this & if so how did you handle it? Any insight is appreciated.
Start passing your higher ups a weekly briefing detailing your projects and associated timelines...if you graph it out your bosses should see the trend...and maybe one of them will be smart enough to ask you if you're getting buried and need help.
Assuming all these sites are an important piece of the pie, it's in all of your best interests to make sure the school functions. Can they afford a break down in the system?
Try and steer them into coming to that conclusion on their own. Then they can take ownership and feel like they are the savior, and you don't look like a whiner.
@6StringGeek - good advice there. I like the idea of trying to graph it out for the higher-ups. I send them a periodic web agenda, but they don't really understand the cumulative effect of constantly adding on complex features to the site. I need to relay that to them and include what you said about "it's in all of your best interests to make sure the school functions".
@ criterion9... that would be ideal, for sure. Hiring another developer isn't exactly in the budget. Upper management (i.e. the dean of the school) has no clue about technology -nor should he really- so trying to communicate this to someone with no technical expertise is a challenge for me. I think a visual aid will help them understand the big picture.
Since non-techy management can't see the back-end or much of the picture, they just don't get it and I think they make a lot of assumptions with a tendency to simplify the work at hand. Good advice guys- thx a lot ~ pj
@ 6StringGeek - Good advice. I send the higher-ups a web agenda update on a regular basis, but graphing it out might help them understand things better... especially if I can throw in information about the big picture. I defintely need to relay the concept that "it's in all of your best interests to make sure the school functions."
@ criterion9 - that would be ideal, for sure. Hiring another developer isn't exactly in the budget. Upper management (i.e. the dean of the school) has no clue about technology -nor should he really- so trying to communicate this to someone with no technical expertise is a challenge for me. I think a visual aid is a good approach on this.
I also have quite a heavy workload and do quite a variety of tasks. However, i've learned some things as i've progressed:
1.) First off, this depends on how efficient of a developer you are... but i've seen some developers try to handle a project completely adhoc in style. Set yourself up a nice working environment with a revision control system in place. This is not only good practice in general but it greatly eases development.
2.) Make sure the site you're developing on has a good, generic backend support. This means that it has a robust templating system, a generic "application-top.php" file where your most generic business logic sits...etc. All of which greatly eases the development process as the site is scaled.
3.) Prioritize... something that is quite obvious, yet in the barrage of requests it can be easy to forget about this. Who cares about this fancy ajax system, if its not required it takes a back seat to something that is. If you boss ever questions why this or that hasn't been completed, show them the major features that have been done. Even a non-technical user can comprehend when something is more important than something else.
4.) You may already do this (as you mention a "backlog"), but have a system in place that allows individuals to log in and submit either a feature request or a bug request. Even better if such a system allows a user to select a priority (tieing it with #3) for the task, while also allowing you to change the priority as new items are added or something changes. Again, this is something that greatly eases development, but you also get the added benefit of communicating with those who submit the requests. This can allow you to communicate the difficulty and the steps required to add a feature or fix something, in particular it allows the higher ups something to browse through to see your workload.
5.) Minimize distractions in the development environment. You probably know that it takes programmers a second to get into the right "mode", or state of mind before the coding starts to really flow. Distractions interrupt this flow and can impede of development efficiency.
6.) Lastly, don't be afraid to talk to your boss about your workload. Even if you think he/she won't understand the scope (they rarely do), try to let them know that you're not being lazy and if you push back some features it is only because you're trying to prioritize more efficiently. Sometimes its the lack of communication that leads to misunderstandings like them thinking you're not working as fast as you can. After all, as you say, they don't know what is required to do some of the tasks they ask. I always shudder when the words "i've been thinking of this really cool feature..." leaves someone's mouth, but discussing with them the complexity of it and the steps required at least gives them a rough idea, even if they don't completely understand it.
Again, some of the above may not apply as you may already be doing some of it. I just figured i'd throw in a lot of the generic advice too just in case you are not already doing some of the better development practices.
Last edited by Jarrod1937; 07-12-2010 at 10:08 PM.
@Jarrod1937 - Thanks for the good tips. I'm big on prioritization, but I could really use help from my supervisor to lead in this respect- but sheís clueless and disinterested. This is part of why I'm overwhelmed right now. Iím supposed to just be a web developer... but all things related to the web are my responsibility because there is no technical leadership above me. This means I am project manager, web manager, graphic designer, web designer, web developer, database developer, server admin, Q&A testing, etc. Iíll spend half an hour prioritizing tasks and projects and Iíll literally get a response from my super 5 seconds after I send the email saying ďsounds goodĒ when itís humanly impossible to have even read the email.
Iím also big on minimizing distractions. When Iím coding, I close the door and put on the headphones so that I can get into programming mode. Everyone seems to respect that but it definitely contributes to the isolation Iím experiencing.
As far as robust templates are concerned, thatís something I donít get to decide because of the upper university web management. From a support and guidance perspective they are totally disconnected from the schools within the university, but they control much of the technology. Weíre forced to use MOSS (which is very limiting in our configuration), but I have supplemented our site with a Linux server that handles almost all our dynamic content.
I think communication is key here. Iíve definitely had the conversation before about workload and the total amount of responsibility that is on my shoulders, but I was initially mocked and criticized for being ďsuch a planner.Ē After that incident and several other discouraging encounters, I asked for a new supervisor. The new one is equally clueless but less interested than the last.. but at least she doesnít criticize me for trying to prioritize.
Iíll take some time and try to have that conversation with the new super. Much appreciated ~