Last updated on

Jobs

CS-214 is a hands-on class, and its success hinges on the quality of the support that our students get throughout the semester. We are recruiting 15 to 20 passionate assistants to join the course team.

Perks of the job:

We have three types of positions in CS-214. Junior SAs have typical SA responsibilities, like staffing help sessions and (for Master’s students) helping with grading. Senior SAs have a higher time commitment and additional responsibilities, related to either teaching, engineering, or logistical aspects of the course. All senior SAs are mentored by PhD students to aid in the transition to high-responsibility roles. Lastly, we are looking to hire a course development intern. This would be a one-month internship with a flexible starting date during the summer, with a 2000 CHF stipend (100%; part-time work is also possible).

Application process

Submit this form to apply.

If you have previous SA experience, we encourage you to apply for senior positions. Don’t be shy!

Final hiring decisions are expected by the end of June. Applications received before June 1 will receive preferential consideration. Applicants not known to the course team may be invited to sit a brief interview.

Junior positions

Lab assistant (8 SAs, 4–8 hr/wk)

You are the course’s front line. You help students during in-person help sessions and on the online forum by guiding them with labs and exercises and answering questions about lecture material.

Your typical week

Your responsibilities

Your profile

You are passionate about teaching, pedagogy, and helping students succeed. You are ready to contribute to the course’s quality in the long run and potentially interested in becoming a senior SA in a future year. You speak excellent French.

Senior positions: teaching

Course quality engineer (1 SA, 8 hr/wk)

In addition to help sessions, you are in charge of monitoring and improving the quality of course materials.

Your typical week

Your responsibilities

Your profile

You are detail-oriented, uncompromising, and proud of your work, and you never settle for “good enough”.

Course development engineer (1 SA, 10 hr/wk)

In addition to help sessions, you are in charge of creating new content for the course.

Your typical week

Your responsibilities

Your profile

You are passionate about writing and pedagogy. You have an excellent command of English, and you are an expert in Scala and functional programming. You have experience with collaboration platforms (merge requests, code reviews) and teamwork.

In-person teaching coordinator (1 SA, 10 hr/wk)

In addition to help sessions, you are in charge of monitoring and improving the quality of exercise and lab sessions.

Your typical week

Your responsibilities

Your profile

You love helping others and you enjoy one-on-one interactions, in both French and English. You are patient, sociable, and kind. You are proficient in software engineering and in Scala, and you are on board with the philosophy of the course (helping students help themselves).

Online teaching coordinator (1 SA, 10 hr/wk)

You are in charge of Ed and weekly debriefs: you make sure that questions are promptly answered, mentor junior SAs by improving their answers, escalate questions to course staff as needed, and summarize weekly issues in a weekly debrief.

Your typical week

Your responsibilities

Your profile

You love helping others, and you see the potential of online Q&A to support asynchronous learning. You are detail-oriented, precise, meticulous, and sometimes pedantic.

Senior positions: engineering

Infrastructure engineer (1 SA, 12 hr/wk)

You are in charge of maintaining and improving course infrastructure, including computerized exam infrastructure. You work closely with the school’s VDI team, the IC-IT team, and the rest of the course staff.

Your typical week

Your responsibilities

Your profile

You are looking for experience in DevOps and cloud engineering. You know your way around command line tools, shell scripts, Unix systems, version control, and CI scripting. You are excited about system administration, virtualization, automation, and distributed development processes.

Senior positions: logistics

Production manager (1 SA, 10 hr/wk)

Scala experience is appreciated but not strictly necessary for this position.

You are in charge of preparing weekly rosters, keeping track of course deadlines, keeping Moodle and the course website up-to-date, and generally identifying staffing and content issues before they become a problem.

Your typical week

Your responsibilities

Your profile

You are organized, punctual, and detail-oriented. You recognize the value of good course logistics, and you care about processes, organization, and things running smoothly.

Exam coordinator (1 SA, 10 hr/wk)

You are in charge of exam logistics.

Your typical week

Your responsibilities

Your profile

You are excited about planning big events and making sure they run smoothly. You understand that everything that can go wrong will go wrong, and you enjoy planning for every scenario and contingency—you hate leaving things to chance.

Data analyst (1 SA, 6–10 hr/wk)

Scala experience is appreciated but not strictly necessary for this position.

You are in charge of all aspects of data collection, analysis, and automation in the course.

Your typical week

Your responsibilities

Your profile

You are organized, punctual, and detail-oriented. You are proficient in Python and you have solid foundations in data analysis, both theoretical and applied (Jupyter, pandas, …). You are interested in applying your skills to enhance the students’ experience.