Connor Kam-Cheong

Projects | Skills | Education | Qualifications | Experience | Interests

I am a full-stack junior software engineer with experience in Ruby, JavaScript, NodeJS, Python, Scala, TDD and OOD. I am a fast learner and am looking to improve my skills and grow as a developer.

I worked in customer facing roles in the climbing industry for 3 years as a rock climbing instructor and shop assistant. This is where I built my problem solving and logical thinking skills which are reflected in my programming projects. I focus on code that is clean, efficient and easy to maintain.

Projects

Project Description Development Time-frame Technologies Used
Acebook A Facebook clone focussing on Agile methodologies and teamwork 2 weeks Ruby on Rails, Rspec, Capybara, PostgreSQL, Travis CI, CodeClimate, Heroku
Gone With the Wind A library program to manage searches, lending and returning of books 1 week Scala, ScalaTest, sbt
Gilded Rose Refactoring exercise, practice at handling legacy code 3-4 days JavaScript, NodeJS, Jest
Orthogonal Quest Makers Academy final group project, top down, zelda-inspired adventure game 2 weeks Python3, PyGame, TravisCI, Code Climate, Pylint, AutoPep8

Skills

Communication & Adaptability

During my time as a climbing instructor, I used my knowledge and enthusiasm for climbing to advise and encourage clients of varying ages and abilities. I delivered clear and accurate instructions and adapted them to each individual group. This required a good understanding of the customers' needs, while making sure that my information was comprehensive, and keeping the health and safety issues involved in mind.

Attention to Detail

During my group project where we built a Facebook clone, we set up continuous integration with Travis CI but couldn't get our linter checks to pass. Initially, we came up with a workaround but we weren't satisfied with just disabling some of the linter rules. After some research, I discovered that some of offending comments were being automatically generated as part of the database migration. We then added the offending schema file to the list of ignored files and this allowed us to continue on with peace of mind knowing we'd tackled the problem correctly.

Education

Makers Academy (November 2018 to February 2019)

Highly selective 12-week intensive software development boot-camp teaching:

  • Languages: Ruby, JavaScript, HTML/CSS, SQL
  • Web Frameworks: Sinatra, Ruby on Rails
  • Databases: PostgreSQL
  • Testing frameworks: Rspec, Capybara, Jasmine, Jest
  • CI/CD: Travis CI, Codeclimate, Heroku
  • Ethos: Object oriented programming, Test/Behaviour driven development, XP values, Agile methodologies

Birkbeck University (2013 – 2016)
BSc Geology

Rheinische Friedrich-Wilhelms-Universität Bonn (2012 – 2013)
BSc Physics

Brunel University (2011 – 2012)
BSc Electrical Engineering

International School of Luxembourg (2009 – 2011)
International Baccalaureate: HL Physics (6), HL Chemistry (6), HL English (4), SL Maths (6), SL Geography (5), SL French A2 (5)

Qualifications

Climbing Wall Instructor (including abseil module) (Sep 2017)
Training in supervising safe climbing and abseiling sessions on purpose built artificial climbing walls and boulders.

ITC Level 3 Award in Outdoor First Aid Emergency Action (Feb 2017)
Expires February 2020

Experience

Castle Climbing Centre (2017 to 2018)
Rock Climbing Instructor
Instructing groups of up to 6 children and/or adults on indoor bouldering and top-rope walls. Courses included short, full day and repeating weekly sessions.

Castle Climbing Centre (2015 to 2018)
Senior Shop Assistant
Delivering friendly and efficient service to a range of customers during busy times. Cash handling in a retail environment. Source of knowledge on climbing equipment and advice on general climbing questions.

University College London Union - Mountaineering Club (UCLUMC) (2014 to 2016)
Communications Secretary
Point of contact between university club members, committee and the union. Regularly involved in teaching climbing safety and skills to individuals of different backgrounds and abilities. Answering questions and interacting with new members at events and by email to foster enthusiasm for the sport. Designing and writing a regular newsletter and management and editing of club official website.

Interests

  • Rock climbing: From trad climbing in Yosemite and the Peak District, to bouldering in Fontainebleau, I have been a keen climber since 2011, travelling and climbing around the world.
  • Puzzles: My modest collection of Rubik's cubes and burr puzzles is slowly overtaking all available shelf space.
  • Languages: Growing up in Luxembourg, I am fluent in French, German, and Luxembourgish.