Adjunct for Python Programming Course
![]() | |
![]() United States, Pennsylvania, Pittsburgh | |
![]() 5000 Forbes Avenue (Show on map) | |
![]() | |
Carnegie Mellon University: Heinz College Location Pittsburgh, PA Open Date May 14, 2025 Description The Heinz College of Information Systems and Public Policy at Carnegie Mellon University seeks an adjunct instructor for Python Programming for students in Heinz College of Information Systems and Public Policy Management. We invite professionals with deep experience and demonstrated leadership in the field to apply. The ideal candidate for the Python Programming position will have a background in software engineering frameworks and in Python programming. The candidate must be capable of teaching programming as a problem-solving tool, fostering a mindset that integrates computational thinking with creativity and critical analysis. The instructor will be responsible for developing and delivering coursework and assessing student performance. Our students are primarily at the masters level, with a diverse range of education and backgrounds, some of which will be prior programming experience and others not. Key Responsibilities: Teach Python Programming: * Guide students in developing Python algorithms to address real-world challenges in data analysis, software development, and decision-making. * Understand the concepts and use the constructs of Python libraries, including pandas, numpy, matplotlib, seaborn, and scipy * Provide experiential opportunities for students to load, cleanse, and manipulate data, including using web API's and scraping. Preferably have some experience with quant finance applications. * Expose students to the Software Development Lifecycle (SDLC) to understand how software applications are authored in the industry. * Introduce students to industry-standard tools and relevant Python IDEs, for effective software development, debugging, and testing * Guide students in forming and manipulating collections of data, including lists, tuples, sets, dictionaries, NumPy arrays, Pandas Series and DataFrames. * Emphasize the importance of writing clean, maintainable, and well-documented code. * Teach students collaborative development workflows using Git and GitHub, including branching, merging, pull requests, and managing team-based projects within integrated development environments (IDEs). * Introduce students to AI-enabled practices such as automated code generation, AI-assisted debugging, and intelligent testing tools. * Teach best practices for code management, including branching, merging, and pull requests. We prepare students to understand and leverage technology responsibly to effect change in business and society. We train our students to collect and analyze data in pursuit of positive transformation. We teach a set of data governance and analytical skills with a focus on the effectiveness, equity, and integrity in the decision process and its ramifications. Armed with this unique set of skills, Heinz College graduates are in great demand across all sectors of the economy. The course is a half semester (i.e. 7 weeks) during either two starts in the fall and two in the spring semester. Course times could be afternoons (two 80 minute class sessions per week) or evenings (one 170 minute class from 6:30-9:20 PM, inclusive of a break, per week), as preferred. The course design should at minimum include relevant readings (textbook, research papers, news articles, etc.), in-class discussions, and appropriate evaluations of mastery of concepts for grading purposes (homework, quizzes/exams, etc.). Given the focus of Heinz College graduate programs, utilization of data, strategic thinking, and application of leadership skills are highly encouraged to be integrated into the course. About Heinz College The Heinz College of Information Systems and Public Policy is home to two internationally recognized schools: the School of Information Systems and Management and the School of Public Policy and Management. The unique colocation of these two schools sets Heinz College apart to tackle society's most complex problems by teaching our students a firm understanding of policy, technology and analytical foundations, and the management skills to deploy solutions for maximum impact - the intersection of people, policy, and technology to approach complex societal problems. For more information, please visit www.heinz.cmu.edu. Qualifications A background in software engineering frameworks and in Python programming. The candidate must be capable of teaching programming as a problem-solving tool, fostering a mindset that integrates computational thinking with creativity and critical analysis. |