Lead Teacher

The Lead Teacher’s role is the role of the director. You are tasked with taking control of the flow of the class and making sure it proceeds in a way that is beneficial not only to students but to volunteers as well. In the classroom, people will look to you as a figure of authority and leadership. As a Lead Teacher, you are ultimately responsible for what is taught in the class, the pace and the involvement of our other volunteers. It is an important and impactful role where you can have a huge impact on our student’s education.


Your responsibility as a Lead Teacher is to teach the learning goals for each week and make sure that all students can keep up with the class.




Your primary role as a Lead Teacher is to coordinate and control the classroom. It is your job to guide the students and teaching assistants through the lesson plan and understand when people need more time or more guidance. Use your teaching assistants to help guide you in these efforts.

Before each lesson, you should organize with the other classroom-volunteers what and how you are planning on delivering the content. It is so important that you - and the rest of the people you’re teaching with - thoroughly understand the content being taught and are prepared to deliver it to the class. Before each lesson you should understand the schedule for the day, when each exercise will be taught and how they will be delivered.

Teaching should always take the smallest amount of your time as you should move to examples as soon as you feel the students are ready. Where possible you should practice Active Teaching which means that you are responsive to the students' questions and misunderstandings.

Jobs in Class




  • Introduce yourself and the classroom volunteers

  • Introduce the learning objectives for the day

  • Be aware of which students are struggling

  • Solicit answers from all students

  • Thank students for asking questions

  • Give a recap of the learning objectives

  • Thank the volunteers

  • Attend the retro to feedback on students

Teaching at HackYourFuture - Copenhagen

At HackYourFuture we give our teachers lots of freedom to teach the way they want to. The only thing you need to do is teach the learning goals for each week. That is because the homework is based on these learning goals and we don't want our students to struggle too much with doing homework.

The way you teach the class is up to you. There is a lesson plan for each module, but it's up to you if you want to use it.

Running the class

The class can be run in two different ways:

  1. Flipped classroom. Here the students watch the class teachings before class. That means that the class can be used for clearing up things, questions, exercises and homework. This approach is about maximizing active learning which has been found to increase student learning

  2. Normal approach. The students come to class and are taught the topics of the week. When the teaching is over the students have time for exercises.

It's up to you what approach you want to use. But we would like to encourage using flipped classroom, as most students report prefering this way of learning.

The same goes for experiential learning (hands-on work) and peer-assisted learning (students helping one another). This has also shown to work well for our students. In practice this means that we try to use as few powerpoint slides as possible (ideally none) and focus on Live coding examples, group exercises and anything else that keeps people's hands on their keyboards and makes them apply their skills and practice them.


Recording of sessions. We use Zoom for online classes & recording. A staff member can either provide you login info to a HYF-owned Zoom account, or you can also use your own. In Zoom, remember to record the session and post the recorded video on the class' Slack channel. Optionally, when using HYF's Zoom accounts, record to the cloud and a HYF staff will share the recording

Talk with your teacher assistant Before class try and talk to your teacher assistant(s) about how you want to work together. Should the teacher assistant fx. help introduce some topics, is it okay if the teacher assistant interrupts, etc.

Homework status Get an overview of how the class is doing. Use the Homework Checker tool to get a bit of an overview of how the class is doing, or scroll through the class' Slack channel. With an overview you can teach more targeted towards clearing out misconceptions in the class.

Breaks We take a long break around 14:00, to have lunch. (About 20 minutes). Otherwise, make sure to remember to take short breaks about every 45 minutes as it is a lot to take in for students and concentration will understandably drop if we don't take breaks.

Don't forget about the fun If you have an idea about how to combine the teaching with some more fun exercises - do it. Our curriculum is challenging and sometimes dry (it has to be), but that doesn't mean we can't take some digressions to have some fun and get the energy levels in the class up. Mitigating 'code scare' or demystifying the world of programming can be super important, especially in the start. A good resource for fun exercises is the teaching_tips_and_tricks repo. It's a collaborative effort between all HYF chapters and Pull Requests are more than welcome!

Online classes

We try to run all classes in person, but circumstances can sometimes require that we do the workshop online (epidemics, location issues, force majeure). In any case, we always record the workshops online with Zoom. Always make sure to post the link into the class channel, so people following remotely (due to e.g. illness) can join live.

Here are some things we learned from having all classes online during Covid:

  • When you do exercises, make small groups of 3 people in breakout rooms

  • In Zoom you can raise your hand. Use that to figure out if people are following or if people have questions

Suggested Teaching Techniques

Live Coding

As a class you should work through a programming problem together. Ideally you should be the ‘hands’ 👐 and the students should be the ‘brain’ 🧠. They should direct every keystroke of the solution. This is a great way of de-mystifying the coding process and slowly taking students through a concept or problem. The speed of your typing will limit the speed that you can deliver content and so is an ideal tool for pacing the lesson.

Worked Example

Bring a programming problem that you thoroughly understand and have prepared for. Your job as a teacher is to slowly reveal sections of the solution as students understand the different parts of it. It is important to move slowly and not reveal too much.

Peer instruction

Peer instruction is an interactive teaching method in which students discuss underlying concepts with each other during the lecture. Learning comes from the students helping each other explain concepts. Read more here.

Last updated