Kim Wing Fung, Software Developer in Cambridge, United Kingdom
Kim Wing Fung

Software Developer in Cambridge, United Kingdom

Member since March 28, 2018
Kim is a software engineer with more than twelve 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.
Kim is now available for hire

Portfolio

  • Powercosts
    Team Mentoring, React, Less, Antd, Web Dashboards, Styled-components...
  • Spaw Technologies, Inc.
    Management, React, AWS, CI/CD Pipelines, Web Dashboards, React Native...
  • Toptal
    React, Confluence, Styled-components, Testing, Agile

Experience

Location

Cambridge, United Kingdom

Availability

Part-time

Preferred Environment

JavaScript, Visual Studio 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.

Employment

  • 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, UX, Data Virtualization, Testing, End-to-end Implementation (E2E)
  • 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, AWS, CI/CD Pipelines, Web Dashboards, React Native, Documentation, Python, Django, User Authentication, Antd, Stripe, Sentry, iOS, Android, Testing
  • 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
  • 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
  • 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
  • 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
  • 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++
  • 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++
  • 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++

Experience

  • 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
    http://www.utto.com/solutions/utto-underground-asset-mapping/#intro

    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
    https://www.frontier.co.uk/our-games/our-gameography/#zootycoon

    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.

Skills

  • Languages

    C, JavaScript, TypeScript, Haskell, GraphQL, Sass, Lua, ActionScript 3, C++, Python, Objective-C, Java, ML Programming Language, Kotlin, Flash ActionScript, HTML5, Swift, Solidity, CSS, Less
  • Frameworks

    Redux, Titanium, React Native, Django, AngularJS, Jasmine, Enyo, Koa, Panda3D, Qt, TestCafe, Protractor
  • Libraries/APIs

    React, Node.js, OpenCV, Vue 2, D3.js, Stripe, Antd
  • Paradigms

    E2E Testing, Agile UX, Agile Software Development, Functional Programming, Agile, Testing, Management, Unit Testing
  • Other

    Web Development, Web App Development, API Testing, Bluetooth, UX Testing, Cordova, Learning Management Systems (LMS), Styled-components, AWS, CI/CD Pipelines, Web Dashboards, Documentation, User Authentication, Team Mentoring, Visual Regression Testing, Integration, UX, Data Virtualization, End-to-end Implementation (E2E)
  • Tools

    Cucumber, Mocha, Git, Xcode, Android Studio, Android Jetpack, Scaleform GFx, MATLAB, Webpack, Photoshop CC, Webpack 2, Jira, Confluence, Sentry
  • Platforms

    Eclipse, Windows, Docker, iOS, Linux, MacOS, Visual Studio Code, OS X, Android
  • Storage

    PostgreSQL

Education

  • Master's Degree in Computer Science
    2000 - 2003
    University of Cambridge - Cambridge, UK

To view more profiles

Join Toptal
Share it with others