AI for Software Developers (COMP 377)
An advanced technical elective that equips software engineering students with the skills to integrate modern artificial intelligence techniques into real-world software systems.
Course Description
COMP 377 introduces software developers to the principles and practice of artificial intelligence, with a strong emphasis on practical application. Beginning with foundational concepts in machine learning and supporting mathematics, students progress to building and deploying AI-enabled software systems.
The course covers neural networks, deep learning architectures, transformers, large language models (LLMs), and agentic retrieval-augmented generation (RAG). Learners gain hands-on experience with industry tools such as TensorFlow, LangChain, and LangGraph, and use AI-assisted development tools, including GitHub Copilot, to accelerate implementation workflows.
Topics also include cloud deployment, local model inference, and ethical considerations in AI-driven systems, preparing students for professional roles in AI-enhanced software development.
Course Learning Outcomes
Upon successful completion of this course, students will be able to:
- Differentiate major subfields of artificial intelligence and analyze their applications in modern software development.
- Compare types of learning in AI and examine the machine learning lifecycle through practical software-based examples.
- Apply fundamental mathematical concepts, including linear algebra, probability, and calculus, to machine learning problems.
- Implement and evaluate multilayer perceptron (MLP) and convolutional neural network (CNN) architectures for classification and prediction tasks.
- Integrate advanced deep learning models, including transformers and large language models, into applications for complex classification and generation tasks.
- Build generative AI applications using LLMs for dynamic user interaction, content creation, and language-based assistance.
- Design and implement agentic AI systems that support autonomous decision-making and automation workflows.
- Construct AI-powered agents capable of multi-step reasoning and tool use within full-stack software applications.
- Assess ethical implications of AI systems and propose strategies to mitigate bias and unintended consequences.
Further Learning – AI Frameworks and Platforms
The following frameworks, platforms, and research resources support continued learning and experimentation in modern artificial intelligence.
- TensorFlow – Open-source machine learning framework for research and production systems.
- DeepLearning.AI – Courses and learning resources led by AI researchers.
- OpenAI Research – Research advancing large-scale generative models.
- LangChain – Tools supporting the development of AI-powered applications and agents.
- LangGraph – Framework for building structured, controllable agentic AI systems.
Course Materials
Reference Textbooks
- Bonnin, R. Machine Learning for Developers. Packt Publishing, 2017.
- Goodfellow, I., Bengio, Y., Courville, A. Deep Learning. MIT Press, 2016 – Read online
- Cai, S., Bileschi, S., Nielsen, E. D., Chollet, F. Deep Learning with JavaScript. Manning Publications, 2020.
- Alammar, J., Grootendorst, M. Hands-On Large Language Models. O’Reilly Media, 2024.
- Rothman, D. Transformers for Natural Language Processing and Computer Vision (3rd ed.). Packt Publishing, 2024.
- Oshin, M., Campos, N. Learning LangChain. O’Reilly Media, 2025.
Supplementary Learning Resources
- Python and NumPy Tutorial
- UFLDL Tutorial (Stanford)
- Differential Calculus (OpenStax)
- The Hundred-Page Machine Learning Book
New Developments in Artificial Intelligence
- The Batch (DeepLearning.AI) – Weekly updates on cutting-edge AI research, tools, and industry trends.
- OpenAI Research – Frontier research on large language models, multimodal AI, and agentic systems.
- Google DeepMind Research – Advances in foundation models, reasoning, planning, and scientific AI.
- Anthropic Research – Research on safe, interpretable, and controllable large language models.
- Hugging Face Research & Blog – Open-source model releases, benchmarks, and modern AI tooling.
- Stanford Human-Centered AI (HAI) – Research on AI impact, evaluation, and governance.
- arXiv – AI & Machine Learning – Latest preprints on emerging AI methods and architectures.