Andreopoulos, William

Assistant Professor, Department of Computer Science




Preferred: 408 924-5085

Office Hours

Wednesday 1:30-3:00pm in MH416. Friday 14:00-15:30pm online:

Teaching - Spring 2023

CS271 - Topics in Machine Learning
CS149 - Operating Systems

Teaching - Fall 2022

CS131 - Processing Big Data
CS149 - Operating Systems

Teaching - Spring 2022

CS286 - Topics in Sequence-based Machine Learning for Bioinformatics
CS149 - Operating Systems

Teaching - Fall 2021

CS185C - Command-line and Systems Programming for Data-Intensive Applications
CS149 - Operating Systems
BIOL221T - Advanced Bioinformatics for Biotechnology

Teaching - Spring 2021

CS286 - Topics in Sequence-based Machine Learning for Bioinformatics
CS149 - Operating Systems

Teaching - Fall 2020 

CS149 - Operating Systems
CS147 - Computer Architecture
BIOL221T - Advanced Bioinformatics for Biotechnology

Teaching - Summer 2020 

CS149 - Operating Systems - Section 80

Teaching - Spring 2020

CS146 - Data Structures and Algorithms - Sections 2 & 3
CS149 - Operating Systems - Section 2

Teaching - Fall 2019

CS146 - Data Structures and Algorithms - Sections 6 & 8
BIOL221T - Advanced Bioinformatics for Biotechnology

Research Interests

Machine learning, software engineering, bioinformatics


Ph.D. Department of Computer Science and Engineering, York University, Toronto, Canada (2006)

M.Sc. Department of Computer Science, University of Toronto, Toronto, Canada (2001)

B.Sc. Department of Computing and Software, McMaster University, Hamilton, Canada (1999)


Licenses and Certificates

Advanced Biosciences Program, UC Berkeley Extension (2017)

Advanced Program in Software Development, UC Berkeley Extension (2017)



Prior to joining SJSU I worked as a data scientist/software developer at the Joint Genome Institute, Lawrence Berkeley National Laboratory, for 8 years. There I wrote software pipelines for automated processing of high-throughput sequencing data, and assembled and analyzed hundreds of novel genomes and transcriptomes. Before that I was an associate research scientist at Columbia University for 1.5 years doing large scale analysis of cancer data. Prior to that I worked in Dresden, Germany as a software architect at a spin-off of the TU (Technical University) Dresden for 2.5 years developing software for protein structure data analysis. Previously, I was a post-doc in the Bioinformatics group of the Biotechnology Center of the TU Dresden for 2 years. My teaching experience includes serving as Adjunct Professor at Diablo Valley College, lecturer at York University, Toronto (2 years), teaching assistant at University of Toronto and McMaster University (4 years), as well as giving workshops at UC Berkeley.


Google Scholar