2010 – 2013

 
Student  semester Course Number of Hours Comments
LLecture TTutorial LWLab Work EqHelpEquivalent – stands for the total amount of hours counting lecture hours with a 1.5 factor.
Professional bachelor
(course taught 3 times)
Programming by components 45     45 Preparation of lectures and lecturing, drawing up of lab work and of the project, drawing up of the exam and grading
Total     45  

After the end of my Teaching and Assistant position at IUT2, I went on being in charge of the Programming by components course, additionally to my Engineering position at Inria. Over the years, I kept the topic up-to-date with the technological evolution and made improvements to the contents, the way of presenting and the organization of the module. I give myself the lectures and work in collaboration with other teachers who supervise lab work.

Back to top
 

2008 – 2010

 
Student  semester Course Number of Hours Comments
LLecture TTutorial LWLab Work EqHelpEquivalent – stands for the total amount of hours counting lecture hours with a 1.5 factor.
S3
(course taught 3 times)
Object Development and Reuse     108 108 Supervision of lab work and projects, grading of exams and projects
S2 Language C 9   18 31,5 Lectures, supervision of lab work, drawing up of exams and grading
S2 Algorithmics and dynamical data structures   14 64 78 Supervision of tutorials and lab work, grading
Professional bachelor Distributed architectures     18 18 Supervision of lab work and projects, grading
Professional bachelor Programming by components 12     18 Preparation of lectures and lecturing, drawing up of lab work and of the project, drawing up of the exam and grading
S1 Understanding and using an operating system and a network     12,5 12,5 Supervision of lab work and grading
S3 Object oriented systems design 70 70 Lectures, tutorials, preparation of frequent quizzes, supervision and grading of the project
Total     336  

Object Development and Reuse – 36h × 3

During my first year as a teaching and research assistant at UPMF, I supervised the lab work sessions of the course Object Development and Reuse and of the associated project, followed by second year students (3rd semester). Later that year, I supervised the same classes for another group of students who had followed my C language course. During my second year, I taught that course again. This module is interesting because it is about introducing the very notion of object-oriented programming to students who only know functional programming. The project associated is quite interesting as well since its goal is to create an interpreter, enabling a deep understanding of the principles of computer languages to the students. It was enlightening to teach this course several times. The first time, students were few and I could comfortably grant a lot of time to every question. The second time was interesting because I knew the students from the C language course and I could more easily lead them from C to C++ and witness their progress. For this module, I only had to prepare one lab work subject, and I graded the exam and the project.

Back to Summary

Language C – 31,5h

The first course that I was responsible for at the IT department of the Institute of Technology was the C language course. I was in charge of the lectures as well as the lab work. I also drew up, from an existing base, a multiple choice questionnaire and the exam. This module was very important and appealing to me because it was about teaching low level, fundamental programming and conveying basic notions that will be useful to the students for many other subjects during their studies. The challenge in this class was the number of students and the discipline. In opposition to my previous experiences, students were numerous and quite young. I got to experience teaching in slightly more difficult conditions.

Back to Summary

Algorithmics and dynamical data structures – 78h

During the second semester of 2008-2009, I supervised the tutorials and lab work sessions of the course Algorithmics and dynamical data structures with first-year students. The ADA programming language was used for lab work. This module had in common with the C language module the teaching of very fundamental notions to beginners. This confirmed my interest for education and making full use of my teaching skills. It was crucial to explain basic notions using easy and accessible phrasing for beginners to fully understand them. For this module I didn't prepare documents but I graded the exam. In January 2010, I supervised a full week of lab work for this class. Students had the whole week blocked to complete a project and I could follow the progress of their work day after day. I supervised the lab work of this course the following year as well.

Back to Summary

Distributed architectures – 18h

During my first year as teaching and research assistant, I was in charge of classes at bachelor's level. The first course with this group was the supervision of lab work and of the project of distributed architectures. The difference between this course and the previous ones I had taught lay in the age and maturity of students (which impact positively on the motivation), and the technical nature of the subject. It is very pleasant to work with motivated students who are interested in the subject and are looking for in-depth knowledge. I was in charge of grading practical work and the project of this module.

Back to Summary

Programming by components – 18h

Last but not least of the courses that I was in charge of during my first year at the Institute of Technology was entitled precisely Development and Reuse of Components and was included in one of the second semester degree programs of the professional bachelor (LP). I was myself responsible of the lectures, delegating the lab work and project supervision to another teacher. I used existing material as a base, with the exception of one lecture, which content I changed completely and drew up from scratch in order to present to the students a new and emerging technology (OSGi). I also worked out practical questions, keeping existing parts but also adding exercises of my own composition. Moreover, I entirely drew up the project paper focusing on the use of OSGi. Finally, I was in charge of writing the examination question and of grading it. As for the previous course with bachelor's students, it was very pleasant to teach to students who are passionate about leading technologies and high-level concepts. Teaching OSGi has been a very rewarding experience. It has taught me to prepare a difficult lecture and a complex project paper from scratch. During class, I could notice the qualities and flaws of what I had prepared. It had been frustrating not to witness myself the students being confronted to the practice of what I taught. For that reason, the following year I requested to have the complete charge of this course. My additions to this module were very appreciated by the director of the Institute of Technology, to such good effect that he asked me to keep teaching it after I left the teaching and research assistant position. Hence, I kept teaching this course in 2011, 2012, and I will teach it again in 2013. My living in another city keeps me from conducting both lectures and lab work, but I take the journey to teach the lectures and I keep in close contact with the lab work supervisor. I also prepare and grade the exam. Teaching the same class over a few years is extremely beneficial. It taught me to enhance the material based on my experience in front of the students, and to continuously update lectures and practical papers to be up-to-date with current technologies.

Back to Summary

Understanding and using an operating system and a network – 12,5h

This lab work that I supervised at the beginning of the academic year 2009-2010, was intended for new coming students to the Institute of Technology. It was an introduction to the efficient use of the Linux operating system. Most students had never used this system before. Hence, the significance of this course for me lay purely in the educational point of view. I had to present to the students concepts, such as the command line, that were very new to them, and make sure that they acquired the right reflexes from the beginning.

Back to Summary

Object oriented systems design – 70h

The Object oriented systems design course carries a lot of weight and I was in charge of it during the first semester of my second year at UPMF. The course is taught throughout the whole semester and includes lectures, lab work and the supervision of the project. For this module, I prepared two quizzes (which I graded), created additional documents when I judged it useful and I contributed to the update of a lecture and of the project. I also took an active part in updating the common final exam in collaboration with the other teachers of this course. Finally, I graded exams and projects and I judged the oral presentations of the project in another group than mine. This course was interesting because it covers a long period of time, allowing to really follow the progress of students and to remedy the weaknesses in their proficiency. The subject taught is very conceptual: the notion of objects, then the UML language and design, and finally the Java language used to implement the project and to give concrete expression to the acquired concepts. It is crucial to get students to learn a clean and proper design process, going far beyond the sole teaching of a language. Another important aspect of this course was the team work with the teachers of the other groups. We were four teachers sharing the class and teaching in parallel. We needed to collaborate and synchronize our classes, while having the liberty to teach in our own ways. Additionally to this module, I accepted to supervise a group of students for their tutored project. For this project, they have to design and implement a complete software. I had to guide them from a distance, keeping an eye on the directions they were taking and anticipating the difficulties they were about to encounter, all the while leaving them a great deal of freedom for their project.

Back to Summary

Conclusion

The experience of these two years as Teaching and Research Assistant was extremely rewarding. I had a chance to teach various topics to students of different levels. From one side, I experienced teaching to students freshly out of high school, some unsure of their interests in IT. I could work on my art of teaching, doing my best to motivate them and making them understand the basic notions of computer programming. For the first time I was I confronted with discipline trouble and I got to develop some ideas to keep the students' interest up. From the other side, I could teach high level classes to motivated students. The challenge was in that case to always have something new to teach them. I greatly appreciated those two aspects of the teaching experience.

Back to top
 

2001 – 2008

 
College Year Course Number of Hours Comments
LLecture TTutorial LWLab Work EqHelpEquivalent – stands for the total amount of hours counting lecture hours with a 1.5 factor.
2007-2008 Elements of Object Programming – An Introduction to the Java language 19,5 12 7,5 46,25 Lecturing, continuous assessment, drawing up of exam, grading
2006-2007 Programming Graphical Interfaces 12 18   36 Lecturing, Continuous assessment, drawing up of project, grading
2006-2007 Personal support in object oriented programming / Java 30 30 Drawing up of revision notes and personalized exercises
2006-2007
2007-2008
Supervision of a practical session in algorithmics   30   30 Supervision and grading
2004-2005
2005-2006
2006-2007
2007-2008
Supervision of an introductory lab work to video games programming within the engineering week at Grenoble INP for high school students 59 59  Rephrasing of the topic and of the approach to be more educational
Total   201,25  
2001-2002
2002-2003
Private lessons in mathematics to high school students 100 100 Development of educational skills

Elements of Object Programming – An Introduction to the Java language (2007-2008) – 46,25h

During the first semester of 2007-2008, I was in charge of conducting entirely the object- oriented programming course of the professional bachelor WebDev at the Joseph Fourier University (UJF) in Grenoble, France. The goal was to teach object-oriented programming and the Java language to beginners who, for some, did not have any notions about programming or had only elementary knowledge of the C language. This course was composed of 13 calsses of 3 hours, each session being typically divided into a lecture part and a lab work part. Teaching material was provided to me and I edited it only slightly. No assessment method was imposed and I chose to have a 45 minutes quiz after only a few classes in order to reinforce the bases. I also organized a graded lab work session and one graded assignment to do at home. Finally, I constructed the written exam question. I graded all of these assessments. This module was my most complete experience of teaching, before my Teaching and research Assistant position at UPMF. The most difficult part was the drawing up of the exam question and of the grading scheme, especially because it was the first time I was doing these tasks. I could realize the factors to consider and the key points to respect in order to construct questions that are well adapted to the level of the students and the duration of the exam. This experience taught me a lot. I was very appreciative of working with beginner students because I could focus on the educational aspect of teaching and on expressing in the best way for the students the concepts of object-oriented programming. I found it very interesting to follow the students over a long period of time and to get to know their strengths and weaknesses in order to help them in the best possible way.

Back to Summary

Programming Graphical Interfaces (2006-2007) – 36h

My first real teaching experience was to be in charge of an entire option of the master CCI (Complementary Competence in IT) at UJF. I had 10 classes of 3 hours to share out among lectures and lab work. The goal was to teach graphical interfaces programming in Java. As for the course presented above, the teaching material was provided. Assessment was composed of 3 graded lab work sessions (which I graded) and, for the biggest part, of a project that I designed from scratch and that I graded. Designing a project topic was a very instructive exercise. This experience has been very motivating for me because, this being an optional class, students were truly interested by the subject and eager to learn. They had already solid knowledge in Java and were delighted to deepen and expand it.

Back to Summary

Personal support in object oriented programming / Java (2006-2007) – 30h

At the start of the academic year 2006, I accepted to provide personal support to a student on a special training track, allowed by her company to take a year off to complete her studies in the professional bachelor program TAI (later renamed to WebDev) of UJF. I was hired to give 30 hours of tutoring that I could distribute over the school year freely, depending on the student's needs. I decided to use these hours in weekly sessions of 1, 2 or 3 hours depending on the particular needs. The support program aimed first and foremost at the object-oriented programming course (the same one I was in charge of the following year), but could be extended to any other subject depending on the student's needs. Hence, we tackled her issues in the database and php courses. For this tutoring activity, I prepared additional documents summarizing classes or giving details on key points not well understood by the student. I also asked her to work on complementary exercises that I composed myself depending on her needs. My goal was for her to acquire perfectly all the basic concepts related to the Java programming language.

Back to Summary

Supervision of a practical session in algorithmics (2006-2007 and 2007-2008) – 30h

Two academic years in a row, I had the opportunity to supervise a lab work session of the algorithmics course in the second year of the Ensimag Telecom engineering school (students at bachelor's level). I was in charge of two groups. Here again, teaching material was provided and the practical question was well constructed over the years. This lab work is conducted over 2 sessions of 3 hours, each session being composed of a lecture part and a lab work part. The lecture part is useful to introduce the subject to the students and to get them to think about the question on paper before implementing a solution on a computer. Then, they would program the algorithms they had prepared in the C++ language. For the implementation, they started with a program skeleton because the problem was too ambitious for the given time to be started from scratch. I graded the short report they submitted after the lab work and the written code. I corrected, giving some feedback, and graded the work of my two groups. The challenge of this experience was to teach something to the students in a very short time. The topic, a computer vision problem, was complex and the students had very little experience with C++ (they had only used C before). During the first lecture session (approximately 1:30 hours), I presented them briefly the bases of object-oriented programming and I asked them to code a simple algorithm. This prepared them for the following week where the actual problem was tackled. In the computer room, I had to make sure they became familiar with the tools used and the C++ language. During the second session, I had to explain to them the problem to solve and let them think about the solution. Then, before entering the computer room, I presented them the skeleton they would work on. It was important to find the right balance and not give them the solution, but still explain them enough to enable tnem to complete the task in the given time.

Back to Summary

Supervision of an introductory practical session to video games programming within the engineering week at Grenoble INP for high school students (2005-2008) – 59h

Grenoble INP organizes once a year an event entitled engineering week and destined to ~15 year old high school students to help them discover various engineering professions. During one week, these high school students visit different engineering schools of the Grenoble INP group. The school Ensimag, specialized in IT, proposes a practical session that introduces some basic video games programming through a very simple language and software created specifically for this occasion and called MobiNet. Each session is 3 hours long and has 15 to 20 students, supervised by 4 teachers. During one week, this lab work is conducted with 4 groups. The first time I took on some teaching hours was this practical session during my Master's year, in April 2005. Since then, I took part in this event at every opportunity, cumulating in total ~59 hours. Among the 4 supervisors, one has a special role called “professor”. He is the one deciding on the rhythm of the session and speaking to the class. I played this role many times. This experience is very rewarding from the teaching point of view and distinguishes itself from my other experiences. In fact, students are very young and did not choose to participate. Some of them are not naturally interested by the topic and the supervisors have to find ways to capture their interest. The choice of video games programming is already a great help in that way. Moreover, the way to teach to high school students is very different from the way to teach at bachelor's or master's level. Over the sessions I noticed the importance of some details that I did not think about before. I had several ideas to improve the way to present the topic, which have been transmitted to the other supervisors. Besides, most students were without a clue about programming and the goal was for them to get a slight idea about the way it works. This subject was also a great opportunity to have them use mathematics and physics in a tangible context. My ability to explain concepts of programming in a very simple way was made full use of and grew a lot. Another difficulty that I faced was to supervise a very diverse group. Students have very different levels and make progress at different speed. The role of the professor is also to judge when to move on to the next exercise and introduce additional information in order to have the whole group making progress and finishing the topic in time.

Back to Summary

Private lessons in mathematics to high school students (2001-2002 and 2002-2003) – 100h

During my engineering studies, at bachelor's level, I decided to give private lessons in mathematics. Very quickly, I discovered my taste for teaching, the enjoyment of transmitting knowledge and the satisfaction when a student understands an idea that I have explained. I noticed during those lessons that I loved explaining, I enjoyed finding the right wording for the student and I developed my ability to put myself at the student's level of knowledge to explain a complex concept in simple words. I went through an agency named Complétude to give those lessons; this agency puts in contact families and teachers, and makes sure everything goes smoothly. During 2 academic years, I had 3 students at different levels of high school and overall I gave them approximately 100 hours of private lessons. I had to stop during my last year of engineering school (at master's level) because the classes and personal work took too much of my time, and because I had to leave in the middle of the school year for an internship.

Back to Summary

Conclusion

I have collected a broad palette of teaching experiences, from private lessons to high school students to lectures at master's level, including various lab work supervision with more or less well-disciplined and motivated students. I gave lectures and lab work sessions from provided material but I also composed lectures, practical and project topics and examination questions. Many times I graded exams and lab work. Every one of my teaching experiences was extremely rewarding. They all have taught me something, they were as many challenges to conquer, but the permanent feature is my taste for teaching. I enjoy teaching, I love finding a simple explanation accessible to every student. I find it motivating as well to enable students with a good knowledge level to go further. The reward is their understanding and success. I both enjoyed lecturing and supervising lab work. They are two very different sides of teaching but both demand the same reactivity to questions or mistakes, the same balance to adapt to the various levels of the students and, among other things, the ability not to give the solution but to guide them towards finding it themselves. I find that my experiences followed a progression in crescendo. With each experience I have had more responsibility and the task was more complex. I feel that I was always able to adapt gradually to the difficulties. My past experiences give me the confidence to face successfully future difficulties.

Back to top
 

Teaching project

 

The teaching that I have already been in charge of and, by consequence, that I am ready to take on are the following:

  • Programming and object-oriented programming;
  • Languages: Java, C, C++, ADA, PhP;
  • Graphical interfaces programming;
  • Object-oriented systems design and UML;
  • Distributed architectures;
  • Programming by components.

I take a special interest in teaching component-based systems and technologies such as OSGi and JEE 5, but an equal interest goes into teaching more fundamental subjects such as programming, design or databases.

Moreover, my professional experience allowed me to acquire knowledge that I am able to pass on to students at various levels in the following areas:

  • Databases;
  • Web-based technologies;
  • Systems and networks;
  • Multimedia;
  • Algorithmics;
  • Office automation.

My teaching experience enables me to teach at various levels, including first and second year, when the art of teaching plays a dominant role for the success of students. As much as I care about fundamental teaching, I also enjoy teaching at higher levels, where students are looking for expert skills. It is easy to notice that even for that kind of audience, the art of teaching is important. On the other hand, my experiences in building and organizing classes were also diverse. I have presented lectures or conducted lab work that were provided to me, but I also prepared lectures and various lab work and project topics, as well as examination questions and quizzes. I realize the amount of work that it requires. I estimate myself ready to take on the full charge of a course, even if I have to build it from scratch. I have a realistic idea of the work it requires and I feel ready and capable of handling this difficulty thanks to my experience and passion.

Back to top