David Barrera is an assistant professor in the School of Computer Science at Carleton University. He is the co-director of the Carleton Internet Security Lab, where his research analyzes security and privacy issues in emerging network environments such as the Internet of Things (IoT). Dr. Barrera was previously an assistant professor in the computer and software engineering department at Polytechnique Montréal and a visiting scientist at IBM Research in Zürich. He was also a postdoctoral researcher in the Network Security Group at ETH Zürich. Dr. Barrera obtained his Ph.D. from Carleton University in 2014.


David Barrera est professeur adjoint à l’école d’informatique de Carleton University. Il co-dirige le laboratoire de Sécurité Internet et ses recherches visent à améliorer la sécurité des réseaux émergents (tels que l’Internet des objets). Il occupait précédemment le poste de professeur adjoint au département de génie informatique et de génie logiciel à Polytechnique Montréal. Il a aussi travaillé en tant que chercheur visiteur au sein d’IBM Research Zürich pour y développer des solutions de sécurisation des infrastructures critiques et a été chercheur postdoctoral dans le groupe de sécurité réseaux à l’École polytechnique fédérale de Zurich. Dr Barrera est titulaire d’un Doctorat obtenu en 2014 à l’université de Carleton.


David Barrera es profesor asociado en la escuela de ciencias computacionales en Carleton University en Ottawa. El Dr. Barrera es co-director del laboratorio de investigación de seguridad en Internet, donde su investigación analiza problemas de seguridad y privacidad en redes computacionales emergentes como el Internet de las Cosas. El Dr. Barrera ha sido profesor asociado en la escuela de ingeniería en sistemas del Polytecnico de Montréal e investigador en IBM Research en Zürich. También fue investigador postdoctoral en el grupo de seguridad de redes en ETH en Zürich. Obtuvo su doctorado de Carleton University en 2014.


I obtained a B.Eng (Honours) in Electronic Systems Engineering from the Tecnológico de Monterrey (Mexico City Campus) in December 2006. After that, I obtained a graduate diploma in Information Security as well as miscellaneous IT certifications while I worked for Cisco Systems in Mexico City.

Industry turned out to not be a good fit for me at the time, so in 2007 I moved to Ottawa to pursue a Masters degree in Computer Science at Carleton University. I was fortunate to be advised by Dr. Paul van Oorschot. During my Masters, I developed data visualization systems for network security, exploring ways to add IPv6 support to IPv4-only visualization tools. I graduated in August 2009.

In 2010, I started my Ph.D., continuing under supervision of Dr. van Oorschot but changed research directions. My research proposed OS-level mechanisms (mostly transparent to the user) for improving the security of software installation and software updates, focusing on Android. I also worked on a few side-projects involving password management, mobile anti-virus, full disk-encryption, and the usability of Bitcoin. In May 2014, I completed my Ph.D.

Shortly after completing my Ph.D., I spent 3 years in Zürich. The first 2 were spent as a postdoc in the Network Security Group at ETH Zürich building new security tools, protocols, and defenses on top of the SCION future Internet architecture. I spent the following year as a visiting scientist at IBM Research in Zürich where I started working on IoT security and privacy.

From August 2017 to June 2019, I was an assistant professor in the Computer and Software Engineering Department at Polytechnique Montreal. I taught an undergraduate course in computer security and a graduate course in operating systems security. I was awarded the 2018-2019 Meritas Award in the category of Best undergraduate professor in Computer Engineering.

As of July 2019, I’m an assistant professor in the School of Computer Science at Carleton University, where I co-direct the Carleton Internet Security Lab. Our research analyzes security and privacy problems in emerging networking environments such as the Internet of Things.

Things I’ve Built

The Android Observatory. Daniel McCarney and I set up and maintained The Android Observatory, which is a public resource for Android application metadata. Users submit their APKs to the Observatory where we extract all app metadata (permissions, signing information, version, UID), store it, and cross-reference it with other apps. For example, you can find all apps signed by Google, or show all the permissions requested by Facebook v145. Development and maintenance of the Android Observatory was taken over by Ilja Gerhardt in October 2017.

SCION on Mininet. I co-developed and maintained the infrastructure necessary to run SCION on the Mininet network virtualization engine. This is currently the easiest way to experiment with the SCION future Internet architecture, and allows fine-tuning the network topology. The code is available on the SCION Github repo.


  • I speak English, Spanish, and French. I was lucky to be raised speaking the first two languages, and learned the third while living in Brussels when I was young.
  • I’m fortunate to have a job that allows me (or sometimes forces me) to travel. My most recent trips were to: Montreal, Geneva, Tokyo, and Ottawa. I’ve logged 100+ flights since 2013. Here’s an interactive map of those flights.