Teaching & Mentorship

I teach computer science as a practical discipline: students should understand the logic, write working code, debug with confidence, and connect classroom concepts to real systems. My teaching sits at the intersection of programming, data, cybersecurity, and applied AI, with an emphasis on clear thinking, ethical computing, and project-based learning.

Programming

C++, Java, Python, object-oriented programming, debugging, and software design fundamentals.

Data & Analytics

Database systems, SQL, data mining, data analysis, dashboards, and reproducible workflows.

AI & Security

Applied AI, NLP, cybersecurity, digital forensics, secure software development, and responsible computing.

Teaching Philosophy

My classroom approach is built around applied understanding. I want students to learn not only what a programming concept means, but also why it exists, where it appears in real software, and how to reason through mistakes when the code does not behave as expected.

I use step-by-step examples, visual explanations, debugging walkthroughs, and project-based assignments to help students move from syntax memorization toward software reasoning. I also emphasize responsible use of AI tools: students may use AI to support learning, but they must understand, explain, test, and defend their own work.

Courses I Teach

John Jay College of Criminal Justice (CUNY) — Undergraduate

Courses taught or scheduled at John Jay College of Criminal Justice (CUNY).

CSCI 271 - Introduction to Computing and Programming Spring 2026

Introductory programming course focused on computational thinking, algorithmic problem solving, control structures, functions, arrays, and core programming foundations using C++.

  • C++
  • Programming Fundamentals
  • Algorithms
  • Problem Solving
View Full Syllabus
CSCI 272 - Object-Oriented Programming in C++ Fall 2025, Spring 2026, Fall 2026

Object-oriented programming course covering class design, encapsulation, constructors, composition, operator overloading, inheritance, polymorphism, file handling, debugging, and multi-file program structure.

  • C++
  • OOP
  • Debugging
  • Software Design
  • Git/GitHub
CSCI 362 - Database & Data Mining Fall 2026

Scheduled course covering relational database concepts, SQL, data preparation, data analysis, and introductory data mining workflows. The course connects database fundamentals with practical analytical thinking and responsible data use.

  • SQL
  • Databases
  • Data Mining
  • Data Analysis
CSCI 377 - Computer Algorithms Fall 2026

Scheduled course exploring recursive algorithms, complexity analysis, and parallel and distributed algorithms. Topics include searching, sorting, recursive descent parsing, pattern recognition, network and numerical algorithms, and encryption schemes, with attention to algorithms used in the design of secure information systems for law enforcement and public agencies.

  • Algorithms
  • Complexity Analysis
  • Parallel Computing
  • Encryption

Open Learning Resources

Free, step-by-step materials students can use before class, during practice, or when setting up a first development environment. Begin with the interactive source control guide, choose the setup guide for your operating system, and use the responsible AI guide to support learning. The full printable ebook lives in the Books section below.

Start Here

Git, GitHub & VS Code Source Control

Interactive beginner guide to version control, commits, GitHub publishing, branching, common fixes, and the visual Source Control workflow inside VS Code.

  • Git
  • GitHub
  • VS Code
  • Beginner
Open Interactive Guide
Windows Setup

C++ in VS Code on Windows

Step-by-step setup for compiling and debugging C++ using MinGW-w64, GCC, GDB, tasks, and launch configurations in Visual Studio Code.

  • C++
  • Windows
  • GCC
  • Debugging
Open Windows Guide
macOS Setup

C++ in VS Code on macOS

Step-by-step setup for compiling and debugging C++ using Clang, LLDB, build tasks, and launch configurations in Visual Studio Code on macOS.

  • C++
  • macOS
  • Clang
  • LLDB
Open macOS Guide
Study Practice

Responsible AI Prompting Guide

Classroom-oriented guidance for using AI to clarify C++ concepts, test understanding, and improve study workflows while maintaining academic integrity.

  • Responsible AI
  • Prompts
  • C++ Learning
  • Integrity
Open AI Study Guide

Free Tools for Students

Developer & AI Essentials

A curated list of free and discounted tools for students across development, AI, cloud, productivity, and design. Highlights include GitHub Education, JetBrains, Azure for Students, and other resources useful for building real technical projects.

Open Student Tools

Books

Long-form guides for general readers and students alike.

Kindle Edition

Cybersecurity Fundamentals: A Practical Guide for Everyone

A jargon-free guide to passwords, phishing, scams, identity theft, data backup, and consumer privacy rights — written for everyday internet users, not tech experts.

  • Cybersecurity Awareness
  • Online Safety
  • Consumer Protection
Learn More
Cover of Cybersecurity Fundamentals: A Practical Guide for Everyone, by Avijit Roy
Free Ebook

Saving Your Work Like a Pro: Git & GitHub for C++ Students

A formal, 17-chapter ebook on Git and GitHub for C++ students, with practical workflows, recovery guidance, command reference material, and a print-ready PDF layout.

  • Git
  • GitHub
  • C++
  • Printable Ebook
Read the Ebook
Cover of Saving Your Work Like a Pro: Git & GitHub for C++ Students, by Avijit Roy

Curriculum Development

Selected Topics in Computer Science

CSCI 380 - Agentic AI Systems

Developed curriculum concepts and instructional materials for an Agentic AI Systems offering under the selected-topics computer science format. The course concept introduces students to AI agents, LLM workflows, tool use, prompt engineering, retrieval-augmented systems, evaluation, and responsible AI deployment.

  • Agentic AI
  • LLM Workflows
  • Applied AI
  • Responsible AI
Open Educational Resources

CSCI 271 Instructional Materials

Created instructional materials for introductory programming with an emphasis on accessibility, practical examples, modern C++ foundations, Git/GitHub workflows, and student-centered explanations that reduce the gap between lecture concepts and working code.

  • OER
  • C++
  • Git
  • Student Support

Teaching Interests

Areas I am prepared to teach or develop at the undergraduate or graduate level, depending on departmental need.

Programming & Software Design

C++, Python, Java,object-oriented programming, data structures, debugging, software engineering, Git/GitHub workflows, and secure coding practices.

Data Systems & Analytics

Database systems, SQL, data mining, data analysis, dashboard development, data quality, and practical analytics workflows using tools such as Tableau, Power BI, Python, and SQL.

Artificial Intelligence

Graduate-level Python, applied AI, machine learning foundations, NLP, transformer-based systems, LLM-assisted workflows, AI evaluation, and responsible AI deployment.

Cybersecurity & Digital Forensics

Cybersecurity fundamentals, digital forensics, secure software design, authentication, access control, evidence handling, privacy-aware systems, and applied security tooling.

Mentoring & Student Development

I mentor students through practical computing projects with clear technical goals, reproducible workflows, and outcomes they can explain, demonstrate, and continue improving after the course or research period ends.

Django Secure Single-Session Auth System

A production-oriented authentication system built with Django, enforcing one active session per user, tracking login activity, and supporting suspicious-access awareness. The project emphasizes secure session handling, schema design, reproducible development, and deployment-ready documentation.

  • Security
  • Authentication
  • Django
  • Python
  • PostgreSQL

Object-Oriented Programming Hackathon & CTF

Organized and led a student-centered programming event focused on object-oriented reasoning, debugging, problem solving, and applied computing challenges. The event encouraged students to work collaboratively while translating course concepts into timed, hands-on technical tasks.

  • OOP
  • CTF
  • Debugging
  • Student Engagement