Teaching Assistant – CSCI 2081: Introduction to Software Development
Undergraduate course, University of Minnesota, Department of Computer Science & Engineering, 2026
I served as an Undergraduate Teaching Assistant for CSCI 2081: Introduction to Software Development at the University of Minnesota during Spring 2026. This course is part of the Computer Science minor and Data Science curriculum, introducing students to software development practices, object-oriented programming in Java, and fundamental data structures and algorithms.
Course Topics
The course covers key concepts used in modern software development, including:
- Java programming language and object-oriented programming
- Fundamental data structures such as lists, stacks, queues, and hash maps
- Algorithmic techniques including searching and sorting
- Program efficiency and algorithmic complexity
- Software development tools and practices (IDE usage, debugging, documentation)
- UML for object-oriented program design
- Software testing with JUnit
- Version control systems for collaborative software development
Teaching Responsibilities
As a teaching assistant, my responsibilities included:
- Assisting students during weekly lab sessions held in Walter Library
- Helping students debug and improve Java programming assignments
- Supporting students with data structures implementation and algorithm design
- Holding office hours to answer questions about lectures, labs, and programming projects
- Providing feedback and grading assistance for assignments and lab exercises
- Helping students understand software development workflows and debugging strategies
Teaching Focus
In working with students, I focused on helping them:
- Translate algorithmic ideas into correct Java implementations
- Develop systematic debugging and testing practices
- Understand when to choose appropriate data structures for software problems
- Build confidence in solving programming problems independently
This experience strengthened my interest in teaching computer science and mentoring students in computational thinking and software development practices.
