If we want to scale up to a larger member base and high reliability, then we need to know exactly what is expected of people who volunteer for particular duties. That way, someone can turn down a role if he knows he can't meet the time requirements, and he knows exactly what is expected of him if he does sign on. This page is our scratch pad for ideas on formal guidelines in this direction.
See the TaskDistribution page for an in-progress assignment of people to jobs.
1. Policies deserving their own pages
2. Summaries of official roles and their duties
President: Mostly general moral leadership
Treasurer: Manage that money!
Secretary: Keep official records
System administrator: Both plan and set up technical infrastructure and keep it running on a day to day basis
- Note that the President/Treasurer/Secretary are officers on the board of directors, and have legal decision-making power defined under Pennsylvania law and HCoop's bylaws and articles of incorporation. System administrators, by contrast, have only powers delegated to them by the board of directors. Despite this, sysadmins may act quite autonomously and may be more involved with the day to day operations of HCoop than directors, though they are ultimately subordinate to and acting on behalf of the board, which in turn is elected by and represents the interests of the membership at large.
3. Requirements of anyone in an official role
- Respond to e-mail to his HCoop e-mail address within 24 hours of when it is sent, barring extreme situations, whenever that mail makes it clear that it expects a response from the particular person
- Make an official notification to the co-op when he won't be able to meet the above requirement, because he goes on vacation or for whatever other reason
- Send e-mail to a list containing just people in special roles?
- Post to a wiki page?
4. Sysadmin stuff
How many sysadmins (all with root access) should we have? 4 seems like about the right number. It would be nice if we could somehow pick admins with good spread across the different time zones, to give us more times when one is likely to be awake and able to handle emergencies.
It might be nice for each sysadmin to have brief "office hours" each week, where he agrees to be on IRC answering questions and helping people in real time.
5. Official list of tasks
We should try to come up with a list of task types that covers everything expected of people in special roles. Each task should have an associated list of people in charge of it, listed in a total order. At any time, the first person on the list for a task who is not "on vacation" via the above allowance is responsible by default for handling it. Of course, it's always possible to make special arrangements for some tasks, but the lead person for the task will be in charge of arranging them.
I expect that the tasks of the officers (president/secretary/treasurer) will almost always be performed by single officers, since they will tend to be less time-critical. The sysadmin tasks should probably be spread evenly among the sysadmins.
Let's list the tasks, organized by which role we expect to handle them.
- Schedule meetings
- Run meetings
- Process new member payments and alert sysadmins when someone has paid and can have an account created
- Process ongoing payments by updating the portal's financial records
- Hunt down people who are behind in payments
Do physical payment processing for rare people who aren't willing to use PayPal
- Handle support tickets in the Financial category
- Keep meeting minutes
Maintain the board's webpage
- Keep files of all HCoop-related paperwork, and post scans or transcripts of any particularly important documents to the board's webpage
- Conduct all elections and official membership votes, report and archive their results
- Add new members who have been approved and have paid
- Process specific support requests:
Requests for a domain in DomainTool
- Requests for apt package installation
- Requests for Mailman lists
- Process other support tickets, differentiated by category on the portal:
- Server Misc (possibly add more categories, since this category is used fairly often...)
- Periodically update packages through Debian apt
- Manage the firewall
- Manage relational database servers
- Advising the board as to policy matters, or setting policies as enabled to do so by the board.
- Maintaining and auditing the security of HCoop's servers.
- Protecting and respecting the privacy of HCoop members. Abuse of superuser privileges to view private member files or communication (except to the extent necessary in the course of legitimate sysadmin duties) is strictly forbidden, and is ground for immediate termination of sysadmin status and also for termination of membership, in the same way that use of HCoop services for cracking is grounds for expulsion.