chris

Hi, I'm Chris :) I'm a 20-year-old student at Imperial College studying Computing. Besides coding, I like spending time playing badminton, swimming and watching (a bit too much) Youtube videos at home. Learn more about my projects and experiences below!

I'm currently looking for a 5-6 month placement for summer 2020! Here is my CV. If you're a recruiter and like what you see, please contact me!

Education


Imperial College London

Computing MEng (Hons)

September 2017 - Present

First year modules: Programming (Haskell, Java, C), Mathematical Methods, Discrete Structures, Logic, Hardware, Computer Architecture, Databases, Graphs and Algorithms, Reasoning about Programs, Ethics in Computing, Computing Topics
Outcome: First class (76%)

Second year modules: Software Engineering Design, Algorithms II, Operating Systems, Models of Computation, Compilers, Networks and Communications, Probability and Statistics, Computational Techniques, Japanese L1
Outcome: First class (77.4%)

Third year modules: Robotics, Operations Research, Japanese L2

  • Societies: Robotics society, IndoSoc, Badminton society

Concord College

A-Levels (Sixth Form)

September 2015 - June 2017

4A*, 1 Distinction: Maths, Further Maths, Physics, Economics, AEA Maths

Singapore School, Pantai Indah Kapuk

IGCSEs (Secondary)

July 2006 - June 2015

10A*: First Language English, Chinese, Indonesian, Physics, Chemistry, Biology, Extended Maths, Additional Maths, Economics, ICT

  • Highest mark in Indonesia for IGCSE Extended Maths
  • First honours (highest overall grade) in Secondary 3 and 4
  • Valedictorian

Experience

#imperial

Imperial College London

Programming Undergraduate Teaching Assistant

September 2019 - Present

Running weekly small-group tutorials for 1st year students.

Teaching key programming concepts through grading and giving constructive feedback on Haskell and Java exercises.

#google

Google

Software Engineer (STEP) Intern

July 2019 - September 2019

Worked in Chrome Enterprise team to improve management of the Linux container in Chrome OS devices.

Implemented policy to control whether users are allowed to install their own Debian package in the Linux container.

Created mechanism for managing software packages in the Linux container to allow admins to configure what Linux applications are available on the Chromebooks that they manage.

Projects

cinect

Cinect   Github

2019

Cinect aims to help groups of friends decide on a movie to watch together. Visit the Github link to find out more.

imperial

WACC Compiler

2019

Created a compiler from scratch for a simple While-like language with Java, using ANTLR as a parser generator with grammar written in EBNF.

Implemented syntax and semantic checking with error reporting, and code generator that outputs ARM11 assembly. AST (Abstract Syntax Tree) is built during semantic checking and is converted to an intermediary assembly representation before being written as ARM11 assembly.

imperial

PintOS

2018

Extended an operating system framework to support advanced features such as priority scheduling, running user programs and virtual memory management in C.

#Plan

#Plan (Facebook Hack-a-Project)   Github

2018

#Plan. Helps you find time for what really matters.

#Plan asks you for what you want to make time for. It suggests optimal times to do them based on your calendar, how long the event takes, and the type of event. It will then help add it to your calendar. Perfect way to start your day!

Pi-ano

Pi-ano (ARM Project)

2018

Developed an ARM emulator and assembler from scratch using C.

Designed an interactive musical keyboard for the Raspberry Pi using LEDs, buttons and a GUI to teach users how to play simple melodies.

Calore Camera

Calorie Camera (Health Hack 2018)   Github

2018

Health app that detects and recognises different food items (using phone's camera) to display its nutritional content.

Native Android mobile app built with Java, image classifier using Microsoft's Computer Vision API.

Fire

Fire (IC Hack 2018)   Github

2018

Simple shooting arcade game with voice-activated controls.

Native Android mobile app built with Java.

Languages and skills

Programming languages
  • Java
  • C
  • C++
  • JavaScript
  • Python
  • Haskell
  • Swift
Tools and Technologies
  • Vim
  • Git
  • IntelliJ
  • HTML5
  • CSS
  • Bootstrap
  • React Native
  • Firebase
  • Django
  • SQL
  • Docker
  • Ansible