Curriculum Vitae

Information for prospective employers in both academia and industry.
See the Portfolio page for a showcase of projects demonstrating the skills listed here.


Personal Details

NameAdam Rehn
Location  Cairns, Queensland, Australia


  • Queensland Certificate of Education (OP 2) Cairns State High School | Graduated 2008
  • Bachelor of Information Technology with Honours (Class 1A) James Cook University | Graduated 2013
  • Doctor of Philosophy (Information Technology) James Cook University | Graduated 2017


  • Sessional Lecturer James Cook University | 2013 - 2017
  • Casual Research Assistant James Cook University | 2017 - Present
  • Independent Consultant (Sole Trader) Various Clients | 2016 - Present
  • Co-Founder and Director TensorWorks Pty Ltd | 2017 - Present

Volunteer Work

  • James Cook University Student Mentor Program 2009 - 2016
    Mentored groups of new students during their first semester to support their transition into university study.
  • Smithfield State High School 2016
    Assisted in teaching Grade 12 students the principles of web development with HTML, CSS and jQuery.
  • Freshwater State School Code Club 2016
    Assisted in teaching Grade 4, 5 and 6 students the basics of programming using the Scratch programming language.
  • Redlynch State College P-6 Code Club 2017
    Assisted in teaching Grade 6 students the basics of programming using the Scratch programming language.


  • Excellence in Information Technology Award Business Liaison Association | 2008
    Awarded to a high school student interested in pursuing a career in IT who had demonstrated significant achievement in their IT-related school studies.
  • Don Close Prize in Software Engineering University Award | 2010
    Awarded to the student with the highest grade for the subject CP2013: Software Engineering.
  • Prize for Excellence in Third Year Bachelor of Information Technology (Cairns) University Award | 2011
    Awarded to the student with the highest overall GPA for their third-year undergraduate IT coursework subjects.
  • University Medal University Award | 2013
    Awarded to students graduating with First Class Honours whose thesis grade fell within the top 10% across the entire university.

Teaching Experience

I have taught the following subjects in my capacity as a member of the sessional teaching staff at James Cook University:

  • CP3311/CP3408: Game Engine and Simulation Semester 1 2013, 2014 & 2015 (Lab Instructor) | Semester 1 2016 & 2017 (Lecturer + Lab Instructor)
    Taught students how to develop 2D and 3D games using the Unity3D game engine.
  • CP1300: Programming II Semester 2 2013 & 2014, Semester 1 2015 (Lab Instructor)
    Taught students object-oriented programming principles using the Java programming language.
  • CP1200/CP1404: Programming I Semester 1 2014, Semester 2 2015 (Lab Instructor)
    Taught students the basics of programming using the Python programming language.
  • CP1500: Database Management Semester 2 2014 (Lab Instructor)
    Taught students the principles of designing and querying relational databases using SQL.
  • CP3307: Mobile Programming Semester 1 2015 (Lab Instructor)
    Taught students mobile application development for both the Apple iOS and Google Android platforms.
  • CP2402: Hardware and Software Fundamentals Semester 2 2016 (Lecturer + Lab Instructor)
    Taught students about the structure and function of operating systems, with a focus on IPC, synchronisation and memory management.
  • CP3402: Content Management Systems Semester 1 2017 (Lab Instructor)
    Taught students how to create websites and custom themes using the Wordpress CMS.
  • CP5310: E-Business Technologies Semester 1 2017 (Lab Instructor)
    Taught students about various web technologies, including client-side and server-side web languages, interchange formats, and protocols.

Technical Experience

I have extensive experience working under and developing software for the Microsoft Windows, Apple macOS, and Linux operating systems, as well as experience developing for the Apple iOS and Google Android mobile platforms. I have developed cross-platform libraries and command-line tools, as well as servers and graphical applications, in a wide variety of programming languages.

Listed below is a brief selection of the programming languages, libraries and frameworks that I have experience with.

Programming Languages

  • C / C++ (including C++11/14/17)
  • JavaScript / TypeScript
  • Python
  • Java
  • C#
  • R

Engines & Libraries

  • Unreal Engine 4
  • Unity3D
  • Electron
  • LLVM / Clang
  • SciPy Ecosystem

Machine Learning Frameworks

  • TensorFlow
  • Caffe


For a complete list of my academic publications, see the Publications page.