Kim Wing Fung
Verified Expert in Engineering
Software Developer
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
Experience
Availability
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
Tech Lead (via Toptal)
Yara International - Farming Solutions
- Carried out a technical assessment of the current state of the client product. Required analyzing, evaluating, and reporting on the technical limitations, conditions, scalability, flexibility, and risks of the approaches, methods, and processes used.
- Supported web and mobile teams on numerous quality improvement initiatives. This involved working with the product and engineering teams to establish (and act upon) critical, essential, and high-priority fixes, improvements, and enhancements.
- Improved the foundations of the client platform continuously, supporting developer technical needs and desires, facilitating communications and writing, and promoting the sharing of documentation for various products and platforms.
- Supported a regionalization initiative responsible for establishing regional independence. Helped regional teams work on shared codebases, resolve conflicts in daily work, establish best practices, and improve processes and quality management.
- Provided technical customer support as the primary point of contact for all technical and operational inquiries. Ensured fast responses and resolutions to customer problems daily while improving customer support visibility.
- Managed and maintained release processes. This involved ensuring mobile and web releases occurred on a fixed schedule, generating release notes, communicating releases to key stakeholders, and working with the product and QA teams' testing cycles.
- Mentored, advised, and guided development team members on technical approaches. Reviewed engineering and quality management teams' documentation, code, and implementation details.
Python Back-end Developer
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.
Lead UI Developer
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.
Lead Full-stack Developer
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.
Confluence Developer
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.
Lead Developer
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.
Full-stack Developer
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 visualizations and tools using React, D3, and Stripe.
Director
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.
Senior Engineer
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.
Senior Designer
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.
Programmer
Frontier Developments plc
- Handled projects 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.
Experience
Meall
Real-time Body Tracking
Smart Heating
Underground Asset Tracking
Kinect Video Game UI
Education
Master's Degree in Computer Science
University of Cambridge - Cambridge, UK
Skills
Libraries/APIs
React, Node.js, OpenCV, Vue 2, REST APIs, D3.js, Stripe, Antd, SQLAlchemy, Stripe API, React Router
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, Auth0, ELK (Elastic Stack), Amazon EKS, CircleCI, Amazon CloudFront CDN, GitHub
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), Embedded C, Flash ActionScript, Swift, Solidity, Less, Go
Frameworks
Redux, Django, Titanium, React Native, AngularJS, Jasmine, Enyo, Koa, Panda3D, Qt, TestCafe, Protractor, Express.js, Bootstrap, NestJS, Spring
Paradigms
E2E Testing, Agile UX, Agile Software Development, REST, UI Design, UX Design, Functional Programming, Agile, Testing, Management, Unit Testing, DevOps
Platforms
Eclipse, Windows, Docker, iOS, Linux, Amazon Web Services (AWS), Mobile, MacOS, Visual Studio Code (VS Code), OS X, Android, Kubernetes, AWS Lambda, Apache Kafka, CleverTap
Storage
PostgreSQL, MongoDB, Redis, MySQL, Amazon S3 (AWS S3)
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, Software, Development, Functional Design, Hardware Design, Software Design, Zuora, Segment, API Integration, Accessibility, Localization
How to Work with Toptal
Toptal matches you directly with global industry experts from our network in hours—not weeks or months.
Share your needs
Choose your talent
Start your risk-free talent trial
Top talent is in high demand.
Start hiring