Developer
Edward Steere
Front End Developer
111 12th St, Parkhurst, Randburg, 2193, South Africa
Front End Development
Systems Development
Algorithms
Research
Javascript
Scala
React
NodeJS
Linux
Bash
CSS
HTML
ZIO
HTTP4S
About
Edward is a South African Electrical Engineer with a passion for programming and software development. He has five years of experience in the the consulting and product development industries where he worked on everything from monolithic, legacy systems to greenfields, lightweight Javascript web and desktop applications.
Skills
Languages
Javascript, Scala, Common Lisp, Python, Haskell, ELisp, Rust, C++, Bash, Clojure, Ruby
Frameworks
React, Play, Webpack, BackBone JS
Libraries/APIs
HTTP4s, Babel, ZIO, Cats, JQuery, RequireJS, Jest, Enzyme
Paradigms
Functional Programming, Object Oriented Programming, Meta Programming
Platforms
GNU/Linux, Mac OS, Windows
Storage
MongoDB, PostgreSQL, OracleDB
Tools
Emacs, IntelliJ
Experience
JavaScript
5 years
Scala
2 years
HTML
7 years
Java
3 years
NodeJS
3 years
Docker
3 years
React
4 years
Hightlight Projects

Interactive Dual SIRD

Implement website to demonstrate progression of COVID-19 interactively
University of the Witwatersrand COVID-19 Modelling Team
University of the Witwatersrand COVID-19 Modelling Team
  • design, implement and deploy website;
  • implemented RK-45 integrator and full reproduction of model in Javascript;
  • provision infrastructure and deploy website automatically using AWS (Cloudfront, IAM, S3 & Lambda) and Terraform;

Risk Tollerance Questionnaire

Port an existing workflow from server-side generated to an embedded, single-page application
Jemstep by Invesco
Jemstep by Invesco
  • sandbox legacy BackboneJS components;
  • implement new designs and advanced UX features;
  • embed workflow in new version of website;

Front Channel Authentication

Implement front channel authentication for existing system
Jemstep by Invesco
Jemstep by Invesco
  • refactor hundreds of source files;
  • retro fit source files to OIDC front-channel authentication;
  • collaborate with infrastructure team to integrate with OIDC Identity Provider;

Test Harness

Implement test harness for legacy monolithic system
Entelect
Entelect
  • Docker images for database and other services;
  • comparison front end tool for test results versus expected results;
  • reverse engineer legacy system and dependencies;

Desktop Application in Javascript (purpose under NDA)

Implement desktop application in Javascript
Entelect
Entelect
  • design and implement application UX and windows with Electron, Microsoft Fluent UI and React;
  • event sourced data storage architecture;
  • implement database encryption and authentication;
Work Experience
Volunteer/Associate Researcher
University of the Witwatersrand
|
May 2020 - Aug 2020

Volunteer in University of the Witwatersrand COVID-19 Modelling Team.

  • upskill colleagues in software engineering and automation;
  • develop interactive demonstration of model for general public;
  • automate verification of core model;
  • design and automate deployment of cloud infrastructure via AWS with Terraform;
  • design and implement tool to improve adherance to social distancing at universities;
Javascript
AWS
Scala
Python
Research
Terraform
React
Webpack
Scikit Learn
Senior Software Engineer
Jemstep by Invesco
|
Apr 2018 - Apr 2020

Product development responsibilities:

  • developed new features to integrate with financial custodian and streamline web experience;
  • maintain legacy Javascript front end;

Developer productivity responsibilities:

  • develop scripts and tools to automate developer tasks;
  • develop libraries to streamline development with Redis and MongoDB;
  • advocate for better approaches to software engineering across organisation;
  • large scale refactors and fixes to thousands of source files to improve testability of code;
  • develop abstraction over web framework as library to enable transition from one framework to another;
Scala
Play
Cats
ZIO
React
Javascript
Backbone
AKKA
MongoDB
Ansible
Intermediate Software Engineer
Entelect
|
Apr 2015 - Apr 2018

Consultant on variety of projects for clients in Johannesburg and Cape Town.

Responsibilities:

  • maintain monolithic legacy Java system;
  • develop test harness (disposable mock environment) for monolithic system using Docker.
  • simulate complex billing process;
  • develop desktop application with Electron (purpose under NDA);
  • train other developers in Functional Programming paradigm;
Javascript
Java
Spring
SQL
Electron
Express
FeathersJS
Education

University of the Witwatersrand

Johannesburg, South Africa
|
Jan 2013 - Jul 2015
Master of Science in Electrical Engineering (Distinction)

University of the Witwatersrand

Johannesburg, South Africa
|
Jan 2009 - Dec 2012
Bachelor of Science in Electrical Engineering

Michaelhouse

Kwazulu Natal, South Africa
|
Jan 2004 - Dec 2008
Matric (subject prizes in Physical Science, Visual Art and Information Technology)
Certifications

Algorithms, Part I (Princeton University)

- Permanent
Coursera

Algorithms, Part II (Princeton University)

- Permanent
Coursera

Functional Programming Principles in Scala (École Polytechnique Fédérale de Lausanne)

- Permanent
Coursera

Learn and Understand NodeJS

Mar 2017 - Permanent
Udemy

Building Microserivces with Clojure

Apr 2017 - Permanent
Udemy

Scala Applied, Part 3

Mar 2018 - Permanent
Udemy

Scala Applied, Part 2

Mar 2018 - Permanent
Udemy

Scala Applied, Part 1

Mar 2018 - Permanent
Udemy

The Rust Programming Language

Apr 2020 - Permanent
Udemy

Machine Learning, Data Science and Deep Learning with Python

Apr 2020 - Permanent
Udemy