Skip to content

Latest commit

 

History

History
140 lines (94 loc) · 9.57 KB

Curriculum Vitae.md

File metadata and controls

140 lines (94 loc) · 9.57 KB

Curriculum Vitae

About me:

In short, I'm an alumnus of the University of Cape Town, who studied Electrical and Computer Engineering before pursuing a career in software development. I'm an old boy of Michaelhouse in the KwaZulu-Natal Midlands, and a Zimbabwean expat. I'm a creative problem solver who enjoys a challenge, and I'm going to make a difference.

Professional Career

Work Experience Within 💻
  • ZappiStore - Software Developer (2016-Present)
  • OfferZen Make - Make Master (2017-Present)
  • Aerosud - Junior Engineer (2016-2017)
  • Headquarters - Bartender (2014-2016)

Tech Stack: Whilst I try my utmost to be a polyglot, I have worked most extensively with the following technologies: Ruby, Ruby on Rails, Python, Javascript (React), C, C++, MySQL, Chef, K8s, Amazon Infra (S3, AWS, EC2 etc.).

I am keen to work with technologies such as GoLang, Rust, and would like to further my experience in Python.

ZappiStore (2016-Present)

I'm currently employed as a 'full stack engineer' at ZappiStore, a London based tech company, in the business of automating market research, however, I spent most of my time involved with the backend and in high level architectural design. I was the second developer employed to have made meaningful contribution to all areas of the tech ecosystem, and did so in my first year of employment.

Roles + Responsibilities
  • Technical Positions Held:

    • Performance team: Focused on improving performance of platform, more than halved the load times of the main reporting platform functions. We achieved this through clever caching strategies, out of band computation, smart data transformation, SQL optimizations etc. Have given talks about some of this work @ conferences/meetups. (Python, Ruby, MySQL). Team of 3 developers.
    • Pro Platform API Team: Rewrote the backend of the pro platform API to be more performant, readable, maintainable etc. There was a fair amount of tech debt as this API was built primarily during startup phase, which we needed to resolve. (Ruby on Rails, SQL). Team of 2 developers.
    • Tooling team: Wrote various tools for devs to inspect and investigate data modelling, caching of data models etc. (Ruby on Rails, React). Team of 2 developers.
    • Internationalization Team: Lead developer on a project that involved automating the provision of translations to survey responses for clients to and from languages of their choosing through an external provider. (Ruby on Rails, Angular, MySQL). Team of 4 developers.
    • Sampling Team: Lead developer on various projects relating to sample acquisition and management thereof (Ruby on Rails, React, MySQL). Team of 7 developers.
  • Non Technical Positions Held:

    • Technical Interviewer: I acted as a technical interviewer for ZappiStore, interviewing candidates for engineering positions.
    • Cultural Interviewer: I wrote our company handbook, which is used as a reference and introduction for new joiners and employees. As such, I was involved in phase 2 of many interviews, which was focused on assessing cultural fit of candidates.
    • Onboarding: I crafted a lot of our training material for developers, which has been used to help get junior/senior devs alike up to speed on the company's tech stack.
Offerzen Make (2017-Present, Part Time)

Occasionally, I act as a 'Make Master', a developer coach if you will, for the Make Days hosted by OfferZen. These are day-long courses on varying topics (AR, NLP, IoT) that help developers learn something new and encourage creativity.

Roles + Responsibilities
  • Make Master:
    • Assist in creation of Make Day Course Material
    • Coach/teach/help developers during the make days
Aerosud (Late 2015 - Early 2016)

I was taken on as a junior engineer on the AHRLAC project during its prototyping phase, undertaken by Aerosud and Paramount. This was to be South Africa's first homegrown fighter aircraft, spearheaded by the same engineers that built the Rooivalk helicopter.

Roles + Responsibilities
  • Junior Engineer:
    • Aircraft Avionics: I was responsible for building a telemetry system that helped facilitate reliable reception of sensory data during flight tests. This was accomplishing by building a tracking pedestal coupled with a bipolar antenna and bidirectional telemetric communication system. The telemetry system was built using FPGAs and custom-designed microelectronics programmed in C. The system tracked the aircraft in a range of up to 130kms (displacement) and up to 16000ft in altitude, with an error of 6 degrees.

Education

Education Within 🤓
  • University of Cape Town, B.Sc. Eng. (Hons), Electrical + Computer Engineering:

    • Final Year Thesis Mark: 1st (75%+)
    • Leadership: Deputy Head Student of University House (Resigned)
    • Course Representative for Computer Science, Physics
  • Michaelhouse, Matric

    • Marks Achieved: 6 Distinctions (80%+), 2 Merits (79%, 76%)
    • Top 50 in South Africa, De Beers English Olympiad
    • Top 100 in Province, Mathematics Olympiad
    • Academic Honours, Community Service Colours
    • Toastmasters Society (2x Best Prepared Speaker), 1st Team Debating, 1st Team Waterpolo, 2nd Team Squash Gabriel Massey Award for Academic Excellence, Academic Student Leader

Community Outreach

Outreach Endeavours Within 🤗
  • Post University

    • Code4CT, course facilitator focusing on teaching girls from underprivileged backgrounds the fundamentals of computer science. This happened on an adhoc basis depending on the organization's needs.
    • Round Table, a non-political, non-denominational association of young men between the ages of 18 and 40 embracing representatives of nearly every profession and occupation, and whose objectives encompass the encouragement of high ethical standards. As a member of the CT9s, we endeavour to improve public welfare in the greater Cape Town area through a variety of community-based events, fundraisers etc.
  • University of Cape Town

    • As a member of the surfing team/society, I helped facilitate outreach sessions every Friday/Saturday. The aim of this was of course, to teach children from underprivileged backgrounds to surf, but moreover to be someone with whom they may discuss their aspirations, what studying at university is like etc. Children from poorer communities in South Africa benefit hugely from the opportunity to broaden their mind and improve social awareness, so that was the main focus.
  • Michaelhouse

    • Peter Brown Award for Community Service: Endeavoured to provide a basic music department for one of the local rural schools - Crystal Springs Primary. Featured in local newspapers.
    • SMILE Literacy Program, helping to improve the English literacy of Zulu speaking primary school children through reading/conversational exercises.

Personal Projects & Extra Curricular

My personal endeavours + interests 🏄‍
Personal Projects

(It's worth noting, many of these are still WIP)

  • Whismur:

    • I built this because my mother was frustrated with the audio balance of David Attenborough's Planet Earth II (loud music, quiet narration). It's an audio analysis library written in Python that attempts to classify a soundwave as music or speech using a variety of techniques:
      • Feature extraction (Mel-frequency cepstrum, Zero-crossover, Spectrogram Analysis, Chromatic Analysis)
      • K-NN Classification, Supervised Segmentation, Unsupervised Segmentation, Audio Regression Models
    • Using a Raspberry Pi with a microphone + transmitter, it tries to adjust volume on the television in realtime based on the characteristics of the soundwaves emitted.
  • Theia:

    • This was an experiment in Machine Vision, that used a simple SVM and linear regression written in Python to perform realtime vehicle detection.
  • Robbibot:

    • A learn-it-myself experiment when I was interested in ActionCable and its inner workings, I built a lightweight chatbot for Slack that connected to a Raspberry Pi in the coffee shop down the road, so I could order things from the coffee shop by chatting to the bot on slack. Written in Ruby.
  • Mandala-Sphero:

    • An experiment in IoT written in Javascript, whereby a simple HTML5 Mandala-drawing canvas was provided, input from the user was published to an AWS topic, and then read by a Raspberry Pi, which controlled n-Spheros. The end goal is to do long-exposure/time-lapse aerial photography of the n-spheros developing a mandala that mimics the one the user drew.
Additional:

I'm big into hiking and surfing, these are things that are pretty much a staple if you live in Cape Town, and play a lot of golf. It helps me get used to managing frustration!

  • Misc Certifications:
    • PADI Certified Advanced Diver, RSM Gr3 Drums, VW Driving Academy High Performance and Defensive Driving Certifications, Shakers IBT Certification

References

References available upon demand.