Jake Hafele - Project Portfolio
Embedded Systems 1 Teaching Assistant - Iowa State University

January 2023 to May 2023
As my second time as a teaching assistant, I chose to help teach Embedded Systems 1, which I took as a class in the Spring semester of my Sophomore year. During this class, students are exposed to their first steps to embedded programming in C, done on the application of a Roomba cleaning robot. On top of the robot is a development board with an ARM microcontroller, LCD display breakout, and Wi-Fi UART module, enabling the students to simulate a Mars space mission as a final project. Each week, we cover something new such as outputting data to the LCD display over UART, controlling the movement and sensors of the Roomba, or filtering data from an IR sensor. Since I took this class online during Covid-19 in my sophomore year, it has been very satisfying and engaging to help teach students how to move and control the robots in person.

Tasks Performed

  • Teach 2-hour labs weekly
  • Grade lab and homework assignments with relevant course material to the labs
  • Collaborate with other teaching assistants and the professor to create an effective learning environment
  • Hold office hours to engage with students one on one to answer questions and demo code

Skills/Tools Developed

  • C Programming
  • Working with GPIO ports, UART, and ADC’s
  • Debugging embedded systems on a Roomba platform
  • Mentoring students and teaching best coding practices
  • Creating effective learning strategies
Fluids and Heat Transfer Lab Technician - Iowa State University

August 2021 to January 2022
Between being a teaching assistant for my Embedded Systems 1 and Digital Logic class, I worked as a lab technician for the Fluids and Heat Transfer labs in the Mechanical Engineering department. The reason for this was because I was allowed to work more than 10 hours and could do more hands on work with the students during the lab times. While there was a dedicated Graduate TA working with me in the lab, it was my job to help students more with interfacing the lab equipment and how to receive effective data. In the Heat Transfer labs, students were expected to collect data with LabVIEW programs or a FLIR camera to measure the heat dissipation of several different metals and objects. In the Fluids labs, students were expected to measure the flow rates of different pipe systems as different conditions were altered.

Tasks Performed

  • Managed several mechanical engineering labs and performing routine maintenance on equipment
  • Collaborated with coworkers to set up upcoming labs and material
  • Supported students by verifying measured data points and regression models

Skills/Tools Developed

  • Helped students’ interface LabView to collect appropriate data
  • Guided students on best coding practices in MATLAB
  • Condensed useful information down to a short announcement to enable students to get more done in the limited lab time
Digital Logic Teaching Asssistant - Iowa State University

January 2021 to May 2021
In my sophomore year, during the Spring semester, I had the opportunity to become a teaching assistant for the first time. I was very excited to teach Digital Logic, since I took the class the previous semester and really enjoyed the “building block” aspect of digital design. During my time as a teaching assistant, I would help students to design combinational logic, sequential logic, and state machines over the course of the semester. It was very satisfying to see the students grow and learn, and slowly increase the rate at which they could develop more and more complex systems. This job helped to show me how much I enjoyed working with HDL and what possibilities could be open to me down the line further on.

Tasks Performed

  • Engaged with students to teach introductory digital design circuits
  • Prepared 2 weekly recitations and labs each week for 20 students
  • Held 1 office hour each week to help guide students through labs
  • Proctored 3 exams online with 60+ students throughout the semester

Skills/Tools Developed

  • Simulated digital circuits with Quartus Prime and Modelsim
  • Developed HDL code in Verilog
  • Helped students debug digital design modules from examining waveforms
  • Reviewed old material and assignments to create effective learning strategies through recitations