Teaching Experience

Instructor, University of Alabama (Spring 2013)
Course: Programming II (CS 250)
Description: A continuation of CS 150. Language concepts: modules, encapsulation, classes and objects, and inheritance. Software engineering concepts: unit tests and using a dedicated debugger. System concepts: scripting and compiling.

Instructor, University of Alabama (Fall 2011)
Course: Programming II (CS 250)

Teaching Assistant, University of Alabama (Spring 2016)
Course: Capstone Computing (CS 495) taught by Dr. J. Gray
Description: A culminating capstone project course that integrates the skills and abilities throughout the curriculum into a comprehensive design and development experience for computer science majors.

Teaching Assistant, University of Alabama (Fall 2015)
Course: Capstone Computing (CS 495) taught by Dr. J. Gray

Teaching Assistant, University of Alabama (Fall 2015)
Course: Computer Science Principles (CS 104) taught by Dr. J. Gray
Description: An introductory Computer Science course for non-majors. The course introduces a variety of Computer Science topics including basic procedural programming skills, Abstraction, Algorithms, networks, security, and Big Data along with the ethics and impact of CS in modern society.

Teaching Assistant, University of Alabama (Summer 2015)
Course: Computer Science Principles CS4HS taught by Dr. J. Gray
Description: An introductory course for high school teachers introducing the major concepts and variety of resources to aid in teaching AP Computer Science Principles. This course is offered as an online course independent of normal university courses using Google Coursebuilder, Google Forms, and Youtube to host course materials.

Guest Lecturer, University of Alabama (Spring 2015)
Course: Testing and Quality Assurance (CS 416) taught by Dr. J. Carver
Description: Study of verification & validation and related processes. Topics include techniques and tools for software analysis, testing, and quality assurance.

Departmental Tutor, University of Alabama (Spring 2015)
Courses: All 3xx and 4xx courses
Description: Provide tutoring hours for students in any class beyond the introductory sequence of courses in the computer science department.

Departmental Tutor, University of Alabama (Fall 2014)
Courses: All 3xx and 4xx courses

Teaching Assistant, University of Alabama (Fall 2014)
Course: Capstone Computing (CS 495) taught by Dr. J. Gray

Teaching Assistant, University of Alabama (Fall 2014)
Course: Computer Science Principles (CS 104) taught by Dr. J. Gray

Teaching Assistant, University of Alabama (Spring 2014)
Course: Programming II (CS 250) taught by Dr. N. Kraft

Teaching Assistant, University of Alabama (Fall 2013)
Course: Programming II (CS 250) taught by Dr. N. Kraft

Teaching Assistant, University of Alabama (Fall 2013)
Course: Computer Science Principles (CS 104) taught by Dr. J. Gray

Teaching Assistant, University of Alabama (Fall 2012)
Course: Computer Science Principles (CS 104) taught by Dr. J. Gray

Teaching Assistant, University of Alabama (Spring 2011)
Course: Programming II (CS 250) taught by Dr. M. Brown

Teaching Assistant, University of Alabama (Fall 2010)
Course: Programming II (CS 250) taught by Dr. N. Kraft


Outreach

Annual Alabama Robotics Contest; April 2016, April 2015, April 2014, April 2013, April 2012, and April 2011
I have developed several of the contest problems each year, judged events, assisted with managing setup and disassembly of the contest area each year, managed scorekeeping, and greeted arriving contestants. The Alabama Robotics Contest is an annual event held at The University of Alabama starting in April 2011. The event is open to k-12 students and focuses on providing a low-cost and fun event which promotes CS education for k-12 students.

Programming Lego Mindstorms @ Hale County College and Career Academy; February 2016
I ran a one-day class introducing students at Hale County College and Career Academy to programming basics with the LEGO Mindstorm robots (EV3). Students were introduced to basic programming structures (e.g., decisions and loops) and provided time to work on a competition problem applying the learned constructs. The instructor was also provided materials to further reinforce the introduced concepts. The students will go on to meet regularly preparing to participate in the annual UA Robotics Competition.

Event Captain for Science Olympiad Game On! Event; February 2016
I ran the Game On! event with duties including preparing the game theme, recruiting and preparing volunteers for the event, and managing scorekeeping for the event. Game On! is a one hour programming contest for middle and high school students run as an event at the Science Olympiad competition with other events covering science, biology, chemistry, physics, and engineering. The students participating in Game On! are provided a general theme the day of the competition, and then must craft a game within the Scratch environment over the course of the hour. This event was first introduced for the 2016 competition.

Head Scorekeeper for Shelton State BEST; October 2015, November 2014, November 2013, and October 2012
I ran the scoring table which consisted of recording all scores, generating schedules, and managing the field display of scores and schedules. BEST is a robotics contest for middle and high school students which began in 1993 and has expanded from a single site in Texas to many sites over the nation including regional championships. This was the inaugural BEST event at Shelton State University in Tuscaloosa.

NSF CS4Alabama Professional Development Workshop; October 2015, July 2015, and July 2013
I have led several sessions during the workshop, sessions included discussing lessons learned drawn from experiences with grading and assisting students with course projects, discussing and providing examples (using the SNAP! environment) of applying software engineering practices in course projects, and discussing the use of procedural abstraction in course projects with examples built in the SNAP! environment. I also assisted teachers during both individual and group activities.

Computer Science Principles (CSP) CS4HS MOOC; Summer 2015
I assisted developing materials, managing technical resources, and handling student interactions in the Summer 2015 edition of the CSP CS4HS MOOC run by Dr. Jeff Gray and funded by Google. The course was offered using Google Coursebuilder and Google Forms to provide primary course materials along with quizzes and exams. Lectures were also made available through Youtube with special guests providing interactive discussions with course participants via broadcasting a Google Hangout live on Youtube (these broadcasts are also archived to Youtube for future viewing). The course also used Piazza to manage an online forum for the course where the instructors could post course announcements and answer questions (both privately and publicly among the course participants).

Alabama Summer Computer Camps; July 2015, August 2014, August 2013, and August 2012
I lead several days of activities and assisted students during both individual and group activities. The Alabama Summer Computer Camps span several weeks and are targeted at middle and high school students including international students. The camps utilize the block languages Scratch, Alice, and App Inventor as well as Greenfoot Java to teach CS topics.

Robotics Outreach; Spring 2015, Spring 2014, and Spring 2013
I led a class which focused on introducing CS topics through the Lego NXT and EV3 programmable robots. The class normally met once per week for 6 weeks at several local elementary schools and a local homeschool group. There were approximately 10-15 students per class with 2-3 classes per year. Google CS4HS Workshop; July 2013 and July 2012
I assisted teachers during individual and group activities. The CS4HS workshop is a professional development workshop run at The University of Alabama sponsored by Google. The workshop spans 2 days and aims to introduce high school and middle school teachers to new environments and techniques for teaching CS at their school level.

Google CS4HS Workshop; July 2012
I assisted teachers during individual and group activities. The CS4HS workshop is a professional development workshop run at The University of Alabama sponsored by Google. The workshop spans 2 days and aims to introduce high school and middle school teachers to new environments and techniques for teaching CS at their school level.

Tuscaloosa Magnet Middle School Robotics Club; Spring 2012 and Fall 2011
I was one of 3 instructors which taught approximately 20 students new topics and helped to manage teams during activities. The Robotics Club was established at Tuscaloosa Magnet Middle School to introduce Middle School students to CS topics through the use of LEGO Mindstorm robots.

Afterschool Outreach Program for Elementary Students; Fall 2011, Spring 2011, and Fall 2010
I planned activities for approximately 40 elementary children (1st-5th grade), supervised the activities on-site, and coordinated with Tuscaloosa’s One Place to identify local elementary schools and schedule times for the activities. The outreach program focused on introducing elementary age children to CS topics and general computing skills through fun activities which utilized netbook computers. The outreach program was a part of the CS II course at the University of Alabama, CS 250: Programming II. Elementary students were mentored by undergraduate students from CS 250 who aided the elementary students in completing the activities.