A teacher is defined as a student volunteer who teaches for a seasonal Code 4 Tomorrow program. Learn more about how our organization works here.


  • Currently in high school (rising 9th-12th grader or equivalent secondary schooling level)
    • If you believe you are qualified to be a teacher but are not in high school, you can still apply. We evaluate applications on a case by case basis.
  • Knowledgeable in the class they signed up to teach
  • Is friendly, respectful, patient, and works well with kids
  • Can follow instructions and meet deadlines for tasks


  • Teaching their students
  • Completing tasks assigned to them by C4T members in a timely, detail-oriented, and high quality fashion
  • Attending the mandatory teacher orientation and Discord moderator training sessions
  • Checking Discord and email on a daily basis for important updates
  • Communicating between C4T students, parents, and members
  • Moderating the C4T Community Discord server and answering student/parent questions
  • Asking questions if help or clarification is needed



Who can teach at C4T?

Motivated and passionate high school students who are knowledgeable in the course they want to teach and are available for the entirety of the session.

Will I be interviewed to be a teacher at C4T?

If you have not taught with us before and are in good standing, you will not need to be interviewed. However, if you're a new applicant, you will be invited to a quick interview.

Where can I find C4T's teacher policy?

‌You can find our teacher policy under our Bylaws here.

Can I earn volunteer hours? How can I get them certified?

Yes! We can certify your hours with an e-certificate and we can also provide the Presidential Volunteer Service Award (PVSA) if you are eligible. If you need to get your hours certified, check out Volunteer Hours.

It is the responsibility of each individual teacher to record their own hours. Hours cannot be certified without proof in the form of those records.

What's the difference between a member and a teacher?

A member is a volunteer who is part of C4T and helps to run the organization. For example, a C4T member can develop curriculum for our courses or run our seasonal classes. Members have a more intense, long-term commitment.

A teacher is a volunteer who is chosen by C4T to teach for one of our seasonal class sessions. Teachers are thus not officially part of C4T, but they are essential to our mission.


Where can I find a list of todos as a teacher?

We're glad you asked! Here is the teacher checklist.

What is the teacher orientation?

The teacher orientation is a 1-1.5 hour mandatory informational session for all teachers. There, teachers will learn about our teacher policies and how our classes work.

What is Discord moderator training?

Discord moderator training is a 1-1.5 hour mandatory training session for all teachers. There, teachers will learn how to use Discord and moderate the C4T Community server.

When will we know our class assignments?

Check the C4T Community Discord server daily to stay updated.

Do we need to provide Zoom/Google Meet links for our class?

Yes, if you are holding class through Zoom or Google Meet. C4T may also ask you for meeting links so that we can make that information readily available for students and parents.

Please also make sure that your meeting links are recurring so that you don’t need to share a totally new link every time your class meets. If you need assistance with this, please see this Zoom support article and this Google Meet support article.

We recommend that you pin any meeting links to your class's private channel on Discord.

What meeting platforms should I use?

We recommend that you use either Zoom or Google Meet. Note that for free users, Zoom has a 40-minute time limit (which does not work well with our 1-hour classes). You can possibly get around this by using the Zoom account associated with your school email (if you have one).

‌Alternatively, you can use Google Meet or a Discord voice channel, which is free and has no time limit. Whichever one you decide, make sure that you are familiar with how it works.

Do I need to assign homework to students? Will students submit their solutions to practice problems? Will I need to grade them?

We expect that our teachers assign homework to students - we are firm believers in practice so that students can reinforce their learning. This homework should not be overwhelming or time-consuming, however.

Teachers do not need to grade their students' work, although we recommend you at least look over some of your students' work to see if your lessons are working. However, we do expect teachers to provide support if a student has questions about a problem or is having trouble solving it. We also expect teachers to review solutions to practice problems to ensure student understanding.

Can we find our own practice problems instead of using the ones on GitHub?

Yes! You can make your own or find them elsewhere.

If you do find other practice problems, we request that you submit a pull request on GitHub to add that problem to that course's GitHub repository so future teachers and students can benefit. See Contributing Practice Problems under our Teacher Policy.

Can I use repl.it (or a similar in-browser IDE) instead of downloading IDEs (or text editors)?

Yes. For beginner classes, we recommend in-browser IDEs like Replit for their simplicity. However, for intermediate and advanced classes, we recommend downloading IDEs or text editors for their powerful features and professional environment. Whatever you choose, just make sure your students can follow along.

Any teaching recommendations or tips?

Git and GitHub

How do I install Git on my computer (so that I can use git commands on the terminal/command prompt)?

Here are instructions to install Git. Here is the link to download the appropriate version.

Git commands on the terminal confuses me. Is there something that’s easier to understand?

Being confused by Git is completely understandable. GitHub Desktop might be able to help you. If that still doesn’t work for you, you can always notify a C4T Curriculum Development member and they can help you out! This Git guide may also be of use for those who need to reference commands.

I’m trying to find a file on GitHub. Where is everything?

All repositories are organized by difficulty (if applicable), chapter, and code type (ex. examples, practice, or solutions). You can read about the organizational structure of each repository by reading the README.md file that is at the root directory of all of the repositories on GitHub.

We do not have a repository for Scratch because it is block coding, not text-based.

Where are the GitHub repositories?

All of C4T’s repositories are under the Code 4 Tomorrow GitHub organization: github.com/code4tomorrow.

How do I download files from the GitHub repository?

You will need to either clone the repository using the terminal, or your IDE or text editor. Alternatively, you can download a ZIP archive of the entire repository by clicking on the green Code button and clicking "Download ZIP."

Can I push to C4T’s GitHub repositories?

Yes, but you will need to notify a C4T Curriculum Development member to be invited to the C4T GitHub organization as an outside collaborator. You should tell them your GitHub username and which course you’re teaching.

If you attempt to push to our repositories without being added as a collaborator, you will be rejected by the system.

I have no idea how to use Git. Who can I ask for help?

Any C4T Curriculum Development member would be happy to assist you!


I can’t access a file on Google Drive. What should I do?

Do not request access. Instead:

  1. Make sure you are opening the file using the email address you signed up to be a teacher. Google Drive access is managed by using Google Groups, and only that email address was added to the Google Group.
  2. If it still doesn’t work, @Documentations on the #teacher-questions channel of the C4T Classes Discord saying which file you cannot access and your email address so that they can add you to the C4T Teachers Google Group.
Since classes might have multiple teachers, can I request to be partnered with a certain teacher?

Yes. You should ask @Class Scheduling on Discord if you wish to be partnered with a certain teacher, but we cannot guarantee it will happen.

I have another question that's not answered here. Where can I get help?

First you might want to check FAQs under the

page or the
page. If your question still isn't answered, ask your question in the #teacher-questions channel on the C4T Classes Discord server or email us at classes@code4tomorrow.org.


If you can't view the embedded form below, click here to apply.