Kim Wing Fung, Developer in Cambridge, United Kingdom
Kim is available for hire
Hire Kim

Kim Wing Fung

Verified Expert  in Engineering

Software Developer

Location
Cambridge, United Kingdom
Toptal Member Since
March 28, 2018

Kim is a software engineer with more than 15 years of experience developing front-end and back-end technologies, along with user interfaces and tools for a wide range of applications, including video games, augmented reality, mobile platforms, and web apps. He has worked with various programming languages, including JavaScript, TypeScript, Python, Kotlin, Java, Lua, C, and C++. Kim is also fluent in software development approaches, including Agile, Waterfall, and XP.

Portfolio

Via - Logistics
Python, Go, Java, Kubernetes, Amazon Web Services (AWS), TypeScript, Node.js...
Powercosts
Team Mentoring, React, Less, Antd, Web Dashboards, Styled-components...
Spaw Technologies, Inc.
Management, React, Amazon Web Services (AWS), CI/CD Pipelines, Web Dashboards...

Experience

Availability

Part-time

Preferred Environment

JavaScript, Visual Studio Code (VS Code), MacOS, TypeScript, Kotlin, Git, Android Studio, React, React Native

The most amazing...

...thing I’ve done is an embedded C-IoT firmware for indoor location tracking with a full-stack REST API, Bluetooth signal tracking, test suites, and a modern UI.

Work Experience

Python Back-end Developer

2022 - 2023
Via - Logistics
  • Developed, tested, and maintained a complete service for managing company-wide configurations and settings as the basis for a SAAS transition of existing company services.
  • Wrote and maintained technical documentation for a broad audience.
  • Worked as part of a team to support, inform and improve technical standards for software development.
  • Designed and architectured scalable systems for managing huge quantities of unstructured data.
  • Provided guidance, advice, and knowledge for junior team members to quickly onboard and train them.
Technologies: Python, Go, Java, Kubernetes, Amazon Web Services (AWS), TypeScript, Node.js, DevOps, Serverless, Apache Airflow, GitLab CI/CD, SQLAlchemy, Redis, MySQL, PostgreSQL, MongoDB, E2E Testing, Agile, React, Jira, User Interface (UI), Full-stack Development, Back-end, SQL, HTML, Full-stack, APIs, CI/CD Pipelines, AWS Lambda, REST APIs, Architecture, REST

Lead UI Developer

2020 - 2021
Powercosts
  • Collaborated with product owners to design and implement numerous data-dense user interfaces for the electricity industry.
  • Used an agile approach to ensure deliverables were always on a strict deadline.
  • Managed and mentored a team of developers to establish best practices and standards for developing data-dense web-based user interfaces.
  • Established a suite of testing approaches, encompassing unit, integration, end to end, and visual testing to ensure high software quality.
  • Created dashboards and data visualizations using AmCharts, AgGrid, React styled-components, and less.
  • Assisted in establishing the hiring process for additional team members to join various UX/UI-focused teams.
Technologies: Team Mentoring, React, Less, Antd, Web Dashboards, Styled-components, Unit Testing, Visual Regression Testing, Integration, User Experience (UX), Data Virtualization, Testing, End-to-end Implementation (E2E), Agile UX, User Interface (UI), CSS, HTML, Software Architecture, Leadership, UI Design, UX Design, Front-end, Front-end Development, Data Visualization, AWS Lambda, Web Development, Team Leadership, Web UI, Web UX, REST

Lead Full-stack Developer

2019 - 2020
Spaw Technologies, Inc.
  • Managed and mentored a team of developers to build a complete eCommerce platform for pet grooming services.
  • Designed and implemented the back-end API services to provide access to scheduling information, analytic data, customer relations, and product inventory.
  • Collaborated with a UI designer to fully specify front-ends for a customer-focused web app and mobile app, as well as an administrator-facing dashboard.
  • Integrated the Stripe payment service to manage all transactions fully.
  • Created the full technical documentation for detailing back-end APIs.
  • Established multiple CI/CD pipelines using AWS and Docker to create production, staging, and development deployments.
  • Integrated sentry.io on the customer-facing web app to improve software quality.
  • Used React Native to develop and integrate an iOS and Android app into the eCommerce platform.
Technologies: Management, React, Amazon Web Services (AWS), CI/CD Pipelines, Web Dashboards, React Native, Documentation, Python, Django, User Authentication, Antd, Stripe, Sentry, iOS, Android, Testing, User Interface (UI), Full-stack Development, Back-end, CSS, HTML, Full-stack, Technical Leadership, Software Architecture, APIs, Leadership, UI Design, UX Design, Front-end, Front-end Development, Data Visualization, User Experience (UX), Web Development, REST APIs, Architecture, Mobile, Team Leadership, Web UI, REST

Confluence Developer

2019 - 2020
Toptal
  • Developed a bespoke Confluence extension for managing confidential and tracked documents.
  • Collaborated with a team of developers, stakeholders, and managers to ensure the development was at a high standard of quality and reliability.
  • Worked with the primary stakeholders to establish a robust testing approach using a combination of integration and manual testing methodologies.
  • Adhered to strict deadlines to ensure the rollout of software was managed quickly and effectively.
Technologies: React, Confluence, Styled-components, Testing, Agile, User Interface (UI), CSS, HTML, Front-end, Front-end Development, Web Development, ECMAScript (ES6)

Lead Developer

2018 - 2019
Queen Rania Foundation
  • Managed and mentored a team of developers to develop an English language learning web app for an established LMS.
  • Worked closely with a UI/UX designer to establish exact user experience requirements.
  • Used an agile development approach with Jira to track and meet strict deadlines for deliverables.
  • Handled front-end implementation using React, CSS, and HTML and back-end extensions using Python.
Technologies: Learning Management Systems (LMS), Python, React, Agile, Jira, CSS, HTML5, User Interface (UI), Full-stack Development, Back-end, HTML, Full-stack, Technical Leadership, Software Architecture, Leadership, Front-end, Front-end Development, Web Development, Team Leadership, Bootstrap, Web UI

Full-stack Developer

2018 - 2018
Peripatetic
  • Developed a complete platform for financial modeling tools.
  • Designed and implemented an API back-end for providing user authentication, permission control, financial data access, and payment management.
  • Created and developed a front end centered around managed data visualisations and tools using React, D3 and Stripe.
Technologies: Django, Python, React, D3.js, Stripe, User Interface (UI), Full-stack Development, Back-end, CSS, HTML, Full-stack, Software Architecture, APIs, Leadership, UI Design, UX Design, Front-end, Front-end Development, Data Visualization, Web Development, REST APIs, Architecture, Web UI, REST

Director

2017 - 2018
Sesilio Limited
  • Designed, developed, and maintained a bespoke ticket sales and admittance system for events with more than 1,000 attendees using Photoshop, AngularJS, and Sass.
  • Completed a full web app design in Photoshop for an online food marketplace and was implemented with React, Node.js, Stripe, and SASS.
  • Implemented and integrated an iOS app for an online food marketplace with React Native and Objective-C.
Technologies: Sass, Webpack, React, Koa, Node.js, React Native, Objective-C, iOS, User Interface (UI), GraphQL, HTML, Software Architecture, APIs, Leadership, UI Design, UX Design, Front-end, User Experience (UX), Express.js, Web Development, REST APIs, Architecture, Mobile, Web UI, Web UX, REST

Senior Engineer

2014 - 2017
Cambridge Consultants Ltd
  • Designed, developed, and tested firmware for a Bluetooth Smart device used for indoor location tracking using RSSI signal strength and intelligent cloud-based algorithms. The firmware needed to work in a dense radio space with hundreds of other identical devices, reliably communicate with bespoke hub devices and required user interaction design for screen-less user feedback and accelerometer-based user input.
  • Developed bespoke Bluetooth Smart communications channels for managing reliable app and firmware data transfers between an iOS app and a Bluetooth Smart-based underground cable locating device; used a combination of Objective-C, JavaScript, and the Titanium framework.
  • Used Python, Panda3D, Blender, and Qt to produce a real-time data visualizer for a body movement detection material project.
  • Produced a prototype Android application for interfacing with both a Bluetooth Smart insulin pen and a Pebble smartwatch in order to visualize real-time data for a smart health application project; used Java, JavaScript, and Cordova.
  • Created a complete end-to-end system for managing workload planning amongst large divisional groups. This involved working in a small Agile team, building from the ground up, both the front-end and back-end design and implementation, setting up and working with continuous integration systems and deployment of production quality software. Technology stack was JavaScript, AngularJS, Python, and Django.
  • Worked closely with a user experience designer and using JavaScript, AngularJS, Java, and Eclipse to produce an Eclipse plugin for a Bluetooth Smart Profile creation wizard. This had an emphasis on ease of use and as a lead-in for developers working with Bluetooth Smart devices for the first time.
  • Used MATLAB, Python, and OpenCV and collaborated with user experience designers to create numerous data visualisations of audio source location data.
  • Worked in a large Agile team involving many user experience designers and used JavaScript, HTML5, Sass, AngularJS, and Protractor to build a user-friendly web application for controlling a cloud-based intelligent home heating system. Additionally, used React.js and Redux to create a visualization of a simulation of the intelligent home heating system.
  • Created a game application for a biosynthesis demonstration project; used JavaScript, React Native, and Objective-C.
Technologies: Redux, React Native, React, Protractor, Sass, HTML5, OpenCV, MATLAB, Eclipse, Django, AngularJS, Android, Cordova, Java, Qt, Panda3D, Python, Titanium, JavaScript, Objective-C, Bluetooth, C++, User Interface (UI), Microsoft Visual C++, Full-stack Development, Back-end, HTML, Full-stack, APIs, UX Design, Front-end, Front-end Development, Data Visualization, User Experience (UX), Express.js, REST APIs, Architecture, Mobile, Web UI, Web UX, REST

Senior Designer

2013 - 2014
Frontier Developments plc
  • Designed, implemented, and maintained user interfaces for two Android game applications.
  • Used highly object-oriented design patterns to effectively manage user interface software engineering.
  • Collaborated with artists, designers, and producers to create requirement specifications and work schedules.
  • Implemented the custom GUI components in ActionScript and C++ to rapidly prototype user interfaces.
  • Optimized, refactored, and standardized in-house UI frameworks using ActionScript and C++.
  • Mentored team members in effective software design and implementation.
Technologies: Scaleform GFx, Flash ActionScript, Lua, C, C++, User Interface (UI), HTML, UI Design, UX Design, Front-end, User Experience (UX), Game Development

Programmer

2008 - 2013
Frontier Developments plc
  • Handled projects from end to end to provide effective support for in-house user interface implementations.
  • Created the requirement specifications and designed, developed, documented, and maintained a 3D GUI framework.
  • Used specialist profiling tools to determine software changes required to optimize animation performance issues.
  • Organized and effectively managed large numbers of game resource files using numerous self-written tools.
  • Refactored and optimized game resource compilers, working with XML and binary resources.
  • Created tutorials, technical guides, and documentation for bespoke authoring tools.
Technologies: Scaleform GFx, Lua, Flash ActionScript, C, C++, User Interface (UI), Microsoft Visual C++, Game Development

Meall

An online food marketplace designed and implemented using the latest in web technologies. The back-end uses PostgreSQL, Docker, and Koa to provide secure user authentication and authorization. The front-end uses React.js, Sass, GraphQL, Apollo Client, and Redux to create an efficient, clear, and user-friendly user experience. The front-end uses a fully responsive design to allow for a seamless transition between mobile devices and traditional desktop computers.

Real-time Body Tracking

https://www.cambridgeconsultants.com/press-releases/innovation-wearable-tech
Using a combination of lasers, fiber optics, and clever algorithms, we produced an inexpensive body movement tracking fabric. I worked on the data visualization to show in real time, the body movements reported from the fabric. The data visualizer used Python, OpenCV, Panda3D, Blende,r and QT to create a pleasing and attractive presentation.

Smart Heating

https://www.cambridgeconsultants.com/insights/exploring-new-ways-of-delivering-home-energy
A large-scale project involving hundreds of homes looking into and researching the nature of comfort, energy costs and user experience. I was completely responsible for taking the front-end designs and implementing, supporting, testing, and updating them for use on a range of devices including Android tablets and Windows laptops. The front-end work used AngularJS and directly interacted via a REST API to the smart algorithm's back-end. The front-end had full code coverage, complete end-to-end testing, and both mocked and live integrated tests, all running on a continuous integration system.

Underground Asset Tracking

Underground asset tracking is a huge issue when it comes to such things as digging in the ground and trying to avoid hitting existing utilities. I worked on a universal mobile app which allows engineers to query and locate any underground cabling. The app initially targeted the iPad but was built with technologies which allowed for its subsequent port over to Android. The Titanium framework was used together with Java, Objective-C, and JavaScript to bring together all the essentials in connecting an iPad to a Bluetooth device and data visualizations for the assets via the Google Maps API.

Kinect Video Game UI

The Xbox video games system introduced a very novel method of interacting in video games. It used Kinect technology to allow the user to use their full body motion to play games. I worked on integrating and adapting user interfaces to better suit the use of this technology and allow a more intuitive and fun experience. The user interface was largely built using Scaleform, ActionScript, and Flash for the visual elements and C++ for lower level optimizations and communication.

Languages

C, Python, JavaScript, TypeScript, HTML5, Haskell, GraphQL, Sass, Lua, ActionScript 3, C++, Objective-C, Java, ML Programming Language, Kotlin, CSS, SQL, HTML, ECMAScript (ES6), Flash ActionScript, Swift, Solidity, Less, Go

Frameworks

Redux, Django, Titanium, React Native, AngularJS, Jasmine, Enyo, Koa, Panda3D, Qt, TestCafe, Protractor, Express.js, Bootstrap

Libraries/APIs

React, Node.js, OpenCV, Vue 2, REST APIs, D3.js, Stripe, Antd, SQLAlchemy

Paradigms

E2E Testing, Agile UX, Agile Software Development, REST, UI Design, UX Design, Functional Programming, Agile, Testing, Management, Unit Testing, DevOps

Other

Web Development, Web App Development, User Interface (UI), Full-stack Development, Back-end, Full-stack, APIs, Leadership, Front-end, Front-end Development, Architecture, API Testing, Bluetooth, CI/CD Pipelines, User Experience (UX), Technical Leadership, Software Architecture, Data Visualization, Team Leadership, Game Development, Web UI, Web UX, UX Testing, Cordova, Learning Management Systems (LMS), Styled-components, Web Dashboards, Documentation, User Authentication, Team Mentoring, Visual Regression Testing, Integration, Data Virtualization, End-to-end Implementation (E2E), Serverless

Tools

Cucumber, Mocha, Git, Xcode, Android Studio, Android Jetpack, Jira, Microsoft Visual C++, Scaleform GFx, MATLAB, Webpack, Photoshop CC, Webpack 2, Confluence, Sentry, Apache Airflow, GitLab CI/CD

Platforms

Eclipse, Windows, Docker, iOS, Linux, Amazon Web Services (AWS), Mobile, MacOS, Visual Studio Code (VS Code), OS X, Android, Kubernetes, AWS Lambda

Storage

PostgreSQL, MongoDB, Redis, MySQL

2000 - 2003

Master's Degree in Computer Science

University of Cambridge - Cambridge, UK

Collaboration That Works

How to Work with Toptal

Toptal matches you directly with global industry experts from our network in hours—not weeks or months.

1

Share your needs

Discuss your requirements and refine your scope in a call with a Toptal domain expert.
2

Choose your talent

Get a short list of expertly matched talent within 24 hours to review, interview, and choose from.
3

Start your risk-free talent trial

Work with your chosen talent on a trial basis for up to two weeks. Pay only if you decide to hire them.

Top talent is in high demand.

Start hiring