Charlee Li, Developer in Toronto, ON, Canada
Charlee is available for hire
Hire Charlee

Charlee Li

Verified Expert  in Engineering

Software Developer

Location
Toronto, ON, Canada
Toptal Member Since
October 11, 2018

Charlee is a full-stack developer specializing in web development (Angular/React, Django, and other Python frameworks). To every project, he brings several years of hands-on experience as well as his extensive knowledge and skills which spans from software design to deployment.

Portfolio

Self-employed
React, JavaScript, Amazon Web Services (AWS), REST APIs, SQL...
Juice Mobile
PostgreSQL, JavaScript, Angular, Django, Python, React, TypeScript, Redux...
Envisage Engagement Technologies
Android, JavaScript, Django, Python, REST APIs, SQL...

Experience

Availability

Part-time

Preferred Environment

Visual Studio Code (VS Code), Git, Linux, Web Development, CSS, JavaScript, Amazon S3 (AWS S3), APIs, Databases, GitHub, JSON, Front-end Development, PWA, Front-end, HTML

The most amazing...

...thing I've done was to integrate popular frameworks and best practices into projects and reliably and quickly reform them into better shape.

Work Experience

Freelancer

2019 - PRESENT
Self-employed
  • Developed a web app in the security field for Deloitte. The main technologies used include React, AWS Lambda, and Python.
  • Founded Intelliavant and served a couple of small businesses by creating web apps and websites for them, including a management app for a client's delivery service and several corporate portals. Tech keywords are React, Python, Django, and WordPress.
  • Co-founded another software company and ran a private SaaS service. Tech keywords are React, Python, Django, and AWS.
Technologies: React, JavaScript, Amazon Web Services (AWS), REST APIs, SQL, Object-relational Mapping (ORM), GraphQL, Next.js, Web Development, Go, Technical Writing, Node.js, Amazon DynamoDB, MySQL, CSS, Redis, Amazon S3 (AWS S3), APIs, Databases, GitHub, JSON, GitHub Actions, Figma, Front-end Development, Jest, PWA, Front-end, Tailwind CSS, HTML, NGINX, Bootstrap, SQLite, MongoDB, Full-stack

Principal Engineer

2016 - 2019
Juice Mobile
  • Collaborated with the product manager to develop features.
  • Analyzed the requirements and estimated the effort.
  • Designed the software architecture, then coded the feature. Also wrote the unit and E2E tests.
  • Led a refactoring project on the front-end. The old codebase was based on AngularJS, which lacked modularity and had a lot of coupling.
  • Analyzed the requirements and our current architecture. I then borrowed concepts from React/Redux and designed a new architecture for our codebase.
  • Created a customized web component (AngularJS and Redux) to make the codebase more modular and much easier for future development.
  • Migrated the current product, which was in AngularJS, and rewrote every screen from scratch with Angular 6.
  • Migrated some UI logic from the old codebase. Used Angular and ng2-redux.
Technologies: PostgreSQL, JavaScript, Angular, Django, Python, React, TypeScript, Redux, Amazon Web Services (AWS), REST APIs, SQL, Object-relational Mapping (ORM), Web Development, CSS, Amazon S3 (AWS S3), APIs, Databases, GitHub, JSON, GitHub Actions, Front-end Development, Jest, PWA, Front-end, HTML, NGINX, Bootstrap, SQLite, Full-stack

Senior Software Engineer

2012 - 2016
Envisage Engagement Technologies
  • Built a CMS system with Python/Django (back-end), jQuery (front-end), and MySQL/Redis (database).
  • Supported the CI team for deployment of the CMS and integration with other systems.
  • Developed a document-sign system for a mobile application with Python/Django (back-end) and AngularJS (front-end).
  • Designed a RESTful API for document management.
  • Conducted corporate research, specifically exploring AR (Augmented Reality) SDKs and created an AR proof of concept on the Android phone.
Technologies: Android, JavaScript, Django, Python, REST APIs, SQL, Object-relational Mapping (ORM), Web Development, CSS, jQuery, APIs, Databases, GitHub, JSON, Front-end Development, Front-end, HTML, Bootstrap, SQLite, Full-stack

Software Engineer

2011 - 2012
Douban, Inc.
  • Designed and implemented a management system with Python for an online music service. The back-end was built with Python and a customized framework which provided the admin UI as well as a RESTful API for a streaming service. The front-end was built with HTML and jQuery for the admin UI.
  • Created a framework to simplify the operations of executing queries and utilizing caches, while making them much more efficient (Python, MySQL, Memcached); this was due to lack of an object-caching mechanism in Django (back in 2011). The framework has a built-in object-cache to support massive concurrent accesses (the service has about 500,000 unique daily users).
  • Designed and implemented the server side with Python for an LBS service operated by Douban (Python and Django).
  • Implemented in this system an algorithm called GeoHex to encode a geolocation to a single string so that locations could be effectively indexed by a database.
  • Developed campaign web pages based on the mockups provided by product managers and UI designers whenever necessary such as top ten songs every year or campaigns with other partners such as MSN. Most of the web pages were built with HTML and CSS while some required Python-based back-end functionalities.
Technologies: JavaScript, Python, REST APIs, SQL, Web Development, jQuery, APIs, Databases, Front-end Development, HTML

Project Manager

2007 - 2010
NEC Soft (Jinan) Co., Ltd.
  • Handled the outsourcing of the software development and QA.
  • Managed several teams to develop several applications, including a webmail system, a report-printing system, a display system, and a cell phone.
  • Negotiated the requirements, specifications, and costs with clients.
  • Analyzed and managed the scope, budget, expenditure, and risks of projects.
  • Recruited and evaluated engineers, project leaders, and Japanese translators.
  • Evaluated the requirements and designed the architecture of the systems.
  • Developed the webmail system with Perl and JavaScript.
  • Implemented a report-printing system with C. The system was done on Solaris which takes a printed document from the API and converts it to printer commands.
Technologies: JavaScript, Perl, C++, C, Web Development

System Engineer

2003 - 2007
NEC Soft (Jinan) Co., Ltd.
  • Developed a webmail system (JavaScript, HTML, and Perl); implemented and tested the front-end (JavaScript, HTML, CSS, AJAX, and some Flash) and the back-end (Apache, Perl).
  • Implemented and tested several applications for an NEC-branded featured phone (embedded Linux/C).
  • Built a middle layer which adapts a CPU to the application layer of a DVD recorder (C).
Technologies: C, JavaScript, Perl, Web Development

Digital Media Advertising Platform

I developed and maintained a digital media advertising platform that helps advertisers to find the most appropriate publishers based on their interests and budgets. The codebase was AngularJS but I integrated Redux to AngularJS as well as other modern front-end technologies such as CSS modules, Webpack, web components to enable a better-managed data flow, a well-structured UI, and ensured that future development could be implemented easily.

The main technology stack involved AngularJS, Redux, and a CSS module along with some of the original component system (AngularJS 1.5); the build tool was Webpack.

Online Shopping and Delivery Management System

I developed a delivery management system for my client who owned a small delivery business. The system can manage the life cycles of the delivery orders but the most important feature is the Shopify integration. It can synchronize the purchase orders that customers made via my client's Shopify storefront and create delivery orders automatically based on the purchased content and the destination. Other features included inventory and gift card management.

The main technology stack was Python/Django for the back-end, React for the front-end, and Jenkins for continuous integration.

Languages

CSS, JavaScript, Python, TypeScript, SQL, HTML, C, Go, GraphQL, C++, Perl, Java

Frameworks

Django, Redux, Jest, Bootstrap, Angular, Tailwind CSS, Next.js

Libraries/APIs

jQuery, React, REST APIs, Node.js

Tools

Git, GitHub, NGINX, Jenkins, Figma

Paradigms

Object-relational Mapping (ORM), Test-driven Development (TDD), Agile Software Development

Platforms

Linux, Docker, Amazon Web Services (AWS), Android, Jupyter Notebook, Visual Studio Code (VS Code)

Storage

Amazon S3 (AWS S3), Redis, MySQL, Databases, JSON, SQLite, PostgreSQL, Amazon DynamoDB, MongoDB

Other

Web Development, APIs, GitHub Actions, Front-end Development, PWA, Front-end, Full-stack, Technical Writing, Artificial Intelligence (AI)

2018 - 2020

Master of Engineering in Computer Engineering

Unversity of Toronto - Toronto, Ontario, Canada

1999 - 2003

Bachelor's Degree in Computer Science

Beijing University of Posts and Telecommunications - Beijing, China

JULY 2005 - PRESENT

The Sun Certified Java Programmer Certification, Version 1.4

Sun Microsystems

JUNE 2005 - PRESENT

Oracle Silver Fellow (Oracle 9i)

Oracle University

MAY 2005 - MAY 2010

LPI Certificate Level 2

Linux Professional Institute

APRIL 2005 - MAY 2010

LPI Certificate Level 1

Linux Professional Institute

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