Computer Science 1 is the largest course in the Division of Informatics. For the majority of students, it is their first real contact with any aspect of computing treated as an academic discipline. When they join us, students are already familiar with the utility and excitement of consumer computing, including multimedia and Internet applications. Our challenge is to help the students to see that it is worthwhile, and also exciting and intellectually interesting, to study the foundations and engineering of these technologies. Computer Science 1 is the main feeder into the later years of our degree programmes, and also a course whose reputation can affect whether students choose to come to Edinburgh in the first place. So the teaching quality on this course is vitally important.

We are looking for a number of talented and enthusiastic people to help join the CS1 teaching support team for the next academic year, 2002-3.

CS1 runs as two half courses, CS1Ah from October to the end of January, and CS1Bh from the end of January until May. Each half course has 11 weeks of teaching and 32 lectures. At the moment we are recruiting for the first half course only, but the expectation is that the jobs would be open for those who wish to continue them into the second half course. We have vacancies for demonstrators, tutors, and teaching assistants. If you are interested, please apply as soon as possible.

The latest version of this document is at

Laboratory Demonstrators

The students in the 1st year labs are studying CS1 (basic Java programming) and CP1 (basic C programming). The main requirement of the job is to help students from either class with their practical exercises. A secondary requirement is to help maintain the orderly running of the lab.

Demonstrating is an enjoyable job for somebody who is friendly and approachable, and has a certain amount of patience with beginner programmers. Some experience of the Linux/KDE environment would be useful, but could be gained early on. A good knowledge of Java is required, and a basic knowledge of C. Some understanding of the fundamentals of computer science as taught in CS1 would be advantageous; we suggest that demonstrators who are did not take (or are not taking) Computer Science as a degree should read over the lecture notes as we issue them.

It is also possible to use this as an opportunity to learn some C or Java programming yourself, provided you are willing to stay one step ahead of the students. (Demonstrators who are unable to help students properly may be replaced.)

For more information on the job responsibilities, see our Demonstrators Guide (pdf) (at and the University Code of Practice on Tutoring and Demonstrating (at

Hours and pay: Demonstrating slots are available in 4-hour shifts from Mon-Fri 9am-1pm, 1pm-5pm, 5pm-9pm. Daytime slots employ two demonstrators. The CS1/CP1 laboratory is in on the 3rd floor of the Appleton Tower at the corner of George Square. Pay is at the University demonstrators rate, currently £9.90/hr.

Eligibility: Usually demonstrators are postgraduate students, or responsible 4th year undergraduates (exceptionally 3rd years) with the right background.

Applications: Apply immediately stating which kind of position you would be interested in. Please send a brief CV with a description of your relevant experience, to the Informatics Teaching Organisation (tutor applications) <>, Room 1502, JCMB, extension 505194 (or 0131 650 5194 outside the University). It would also help to mention which lab slot(s) you would be available for. Usually demonstrators take one slot a week.


Tutors have a close contact and responsibility for the students' learning. You will take a small group of around 15 students and give them tuition and guidance on the content of the course, and especially on the practical exercises. For this you will need to know some fundamentals of computer science (e.g. basic ideas about regular expressions, finite state machines, sorting algorithms), and some basic Java programming. (There is no need for C programming here, you will only be tutoring CS students).

Tutors are supported by regular bulletins detailing the progress of the course and suggesting topics which can be covered in each tutorial. These are guidelines only, so you have the freedom to organise your own teaching time and respond to students' individual needs. You should encourage the students to raise questions about the material themselves. Just as with high school classes, the most enjoyable and productive tutorials are those which involve good two-way interaction with the students. Tutoring first year students in CS1 is an exciting chance to introduce Computer Science to young minds and infect them with your enthusiasm for the subject.

Tutors are also responsible for marking and returning the students assessed practical exercises. There are four practical exercises in each half course, issued and due in every 2-3 weeks. The practicals are a mixture of Java programming tasks conducted on the computer, and pencil and paper questions.

This is a first year class starting at the very beginning, so if you are keen enough, it would be possible to learn the necessary material as you go along. You must be prepared to dedicate a bit more time if you need to do this, and convince us that you would be a capable tutor nonetheless.

For more information on tutoring, see the University Code of Practice on Tutoring and Demonstrating . The Centre for Teaching, Learning and Assessment also run introductory courses for first time tutors, which you are encouraged to take.

Hours and pay: Tutorials are 50 minutes long, and slots are scheduled on Mondays at 10am, 11am, 3pm and 4pm, and on Tuesdays at 2pm and 4pm. All tutorials will take place in the central area, usually in tutorial rooms in the Appleton Tower. Pay (for those eligible)is at double the demonstrating rate, in other words, £19.80/hr of contact time with the students. The University expects that a tutor spends 1 hour of preparation for each tutorial. There is some allowance for marking within this preparation time, but extra time spent marking may be claimed for. Additionally, tutors are encouraged to participate in the CS1 helpline email service, for which they may claim extra paid hours.

Eligibility: Tutors are usually postgraduate students, researchers, or teaching staff.

Postgraduate students are employed on temporary part-time contracts and paid as above, but they should be careful not to break any rules that their funding may be contingent upon. (EPSRC-funded full time students, for example, have a limit of 6hrs work per week).

The Division will give payment in-kind for contract researchers (to buy books, equipment, or fund conference trips).

Teaching staff are required by the Division to do some tutoring as part of their regular employment. We may be able provide some relief of marking duties for teaching staff who tutor on CS1.

Applications: Apply immediately. Please send a brief CV with a description of your relevant experience, to the Informatics Teaching Organisation (tutor applications) <>, Room 1502, JCMB, extension 505194 (or 0131 650 5194 outside the University). It would also help to mention which slot(s) you could tutor in. Usually a tutor would take 1 or 2 tutorial groups. There will be 15-20 tutoring slots available.

Teaching assistants

We have vacancies for two (or more) part-time teaching assistants.

Teaching assistants (TAs) support the Course Organiser and other lecturers with a variety of duties to help the smooth running of the course. These duties can include a mixture of tutoring and marking, and assistance with publishing, systems, and running practicals. Teaching assistants may also help the teaching staff by preparing some of the course materials: for example, setting practical exercises and writing tutorial exercise sheets and solutions. The exact duties will depend on the preferences and aptitudes of the TA, and what needs to be done.

Teaching assistants are expected to have a close involvement and keen interest in the running of the course. They should have a strong academic background in Computer Science, and be competent Java programmers (most of our practical exercises are Java programming exercises). An enthusiasm for teaching Computer Science is an essential prerequisite: the course lecturers would like to work closely with TAs and encourage their ideas and input to improve the course while it runs.

Hours and pay: Teaching assistants are given a part-time contract of up to 20hrs per week, paid at the University demonstrators rate, currently £9.90/hr. Within the contracted hours, we will timetable at most 6hrs/week during term time (for example, for giving tutorials and demonstrating). During the remaining hours, TAs should be available to help the Course Organiser or other lecturers to work on intermittent support tasks (e.g. developing new coure materials; helping with publishing, systems, or practicals; occasionally providing tutorial cover or marking assistance). We are flexible about the number of contracted hours; it would also be possible to be a TA for the course but have fewer contractual hours.

Eligibility: We expect teaching assistants to be postgraduate students or finishing undergraduates who seek a source of funding and are already within, or about to join, the Division of Informatics. Other candidates would be considered. A teaching assistant post could provide excellent experience for those who are considering teaching or training roles in the future.

Applications: Apply immediately. Please send a brief CV with a description of your relevant experience, to the Informatics Teaching Organisation (tutor applications) <>, Room 1502, JCMB, extension 505194 (or 0131 650 5194 outside the University).

Last modified: Wed May 8 13:34:03 BST 2002