Electrical and Computer Lab Instructor

American University of Iraq–Baghdad (AUIB)Baghdad, BaghdadRemote, On-siteFull-timeMid level, 2–5 yearsListed 5 hours ago

Apply now

About this role

Position Title:
Electrical and Computer Lab Instructor

Position Summary:
The Electrical and Computer Lab Instructor will serve as a full-time instructional staff member within the Department of Electrical and Computer Engineering at the College of Engineering. Reporting to the Department Chair, the position focuses on teaching laboratory and recitation sections that support theoretical coursework in electrical engineering, computer engineering, and computer science, including programming, data structures and algorithms, software engineering, computer architecture, operating systems, networking, databases, and applied artificial intelligence. The instructor will prepare and manage hardware and computing lab environments, develop lab manuals and programming assignments, assess student work, ensure compliance with safety and acceptable use regulations, and maintain necessary supplies, equipment, and software. The role also includes assisting in the planning of lab offerings, participating in departmental meetings and committees, and collaborating closely with faculty and lab staff to enhance the student learning experience.

Key Responsibilities:
1. Teach Laboratory Courses : Conduct undergraduate Electrical Engineering, Computer Engineering, and Computer Science lab sessions in coordination with theoretical course instructors and coordinators.
2. Teach Computer Science Labs and Recitations: Deliver hands-on sessions in introductory and intermediate programming (Python, C/C++, Java), object-oriented design, data structures and algorithms, discrete structures, software engineering, operating systems, databases, computer networks, and web development, using live coding, worked examples, and guided problem solving.
3. Support Emerging Computing Areas: Lead lab activities in artificial intelligence, machine learning, data science, and cybersecurity, including Jupyter-based data analysis, model training and evaluation, and controlled security exercises in isolated lab environments.
4. Develop Lab Materials : Design and update laboratory manuals, programming exercises, starter code, test suites, and safety procedures for assigned courses, aligned with course learning outcomes and ABET student outcomes.
5. Prepare Lab Setups: Organize equipment, hardware kits, development boards, and software environments (IDEs, compilers, virtual machines, containers, and cloud accounts) for laboratory sessions and ensure readiness for instruction.
6. Assess Programming Work : Grade lab reports and code submissions using clear rubrics, automated testing, and code review, and provide timely, actionable feedback on correctness, design, style, and documentation.
7. Uphold Academic Integrity : Apply code similarity checks and authentic assessment practices, and guide students on the responsible and transparent use of AI coding assistants in line with AUIB policy.
8. Maintain Safety Standards : Enforce and monitor lab safety and acceptable use policies, including electrical safety and responsible use of computing resources, ensuring adherence to institutional and regulatory guidelines.
9. Manage Supplies and Equipment : Coordinate with the lab manager and IT services to identify material, hardware, and software licensing needs, maintain inventory, and assist in procurement.
10. M aintain Technical Proficiency: Complete required training and certification on all existing and newly introduced laboratory equipment, software, and experimental procedures. Demonstrate operational competency before independently supervising lab activities.
11. Participate in Departmental Activities : Contribute to departmental and college meetings, committees, and planning initiatives.
12. Support Student Learning : Provide supervision, guidance, and mentorship to students in lab environments and during scheduled office hours, fostering computational thinking, systematic debugging, scientific inquiry, and safety awareness.

Ideal Candidate Profile:
• Solid knowledge of electrical and computer engineering laboratory design, instrumentation, and safety protocols.
• Strong command of core computer science subjects, including programming fundamentals, object-oriented programming, data structures and algorithms, discrete mathematics, computer organization, operating systems, databases, and computer networks.
• Proficiency in at least two programming languages commonly used in undergraduate teaching (e.g., Python, C/C++, Java), with the ability to write clean, well-documented example code and debug student programs efficiently.
• Working knowledge of software engineering practices and tools, including version control (Git and GitHub), unit testing, debugging tools, the Linux command line, and integrated development environments (e.g., VS Code, Eclipse, IntelliJ).
• Familiarity with AI, machine learning, and data science tools (e.g., Jupyter, NumPy, pandas, scikit-learn, TensorFlow or PyTorch) and with hands-on cybersecurity lab platforms.
• Knowledge of effective computer science pedagogy, including live coding, pair programming, scaffolded and project-based labs, formative assessment, and strategies for supporting novice programmers.
• Experience with learning management systems and automated grading platforms (e.g., Canvas, Moodle, GitHub Classroom, Gradescope).
• Familiarity with teaching practices within the American higher education system, particularly in lab-based instruction and ABET-aligned assessment of student outcomes.
• Proficiency in using computers and engineering software for lab instruction, simulation, and data management (e.g., MATLAB, Multisim, LTspice, Quartus, Arduino IDE, or similar tools).
• Excellent written and verbal communication skills in English, with the ability to clearly explain technical concepts to students.
• Strong time management and organizational skills, with the ability to plan, deliver, and assess laboratory sessions effectively.
• Ability to collaborate closely with faculty and lab staff to support course objectives and improve instructional delivery.
• Competence in guiding, supervising, and mentoring students in a laboratory setting, ensuring both learning outcomes and safety compliance.

Education and Experience:
Education (Minimum / Preferred):
Master’s degree in computer engineering, computer science, or a closely related field from a reputable and accredited university.

- Experience (Minimum / Preferred):

Minimum of 2 years of college or university-level teaching or lab instruction experience, including programming or computer science laboratory courses; prior experience managing computing or electronics lab setups preferred.

#LI - REMOTE