Jason Li
Verified Expert in Engineering
Software Developer
Shanghai, China
Toptal member since February 1, 2018
Jason has a decade of experience developing applications across various platforms including for the web using jQuery and React, the back-end using Node.js, J2EE, and PHP, and desktop development on Linux and Qt. He's always been an active learner and is willing to listen to the opinions of others. He understands the importance of responsibility and teamwork, and he loves to solve complicated problems and is happy to take on challenges.
Portfolio
Experience
- JavaScript - 9 years
- Java - 8 years
- Node.js - 6 years
- React - 6 years
- Amazon Web Services (AWS) - 6 years
- TypeScript - 5 years
Availability
Preferred Environment
Amazon Web Services (AWS), React, Node.js, Java
The most amazing...
...thing I've worked on was a private cloud storage platform which aimed at providing online cloud storage experience while hosted at the user's home.
Work Experience
Lead Software Engineer
Nike
- Led the construction of a back-end team based on Nest.js and AWS.
- Created a data crawler tool using the tool Puppeteer.
- Cooperated on the development of the company's new eCommerce website, including a PDP page, cart, and checkout.
- Participated in the development of the company's first WeChat mini-program.
- Built a Chrome extension for API developers to validate the API design in real time using the Swagger Editor in adherence to the company's principles.
Senior Software Engineer
Owtware
- Developed a client-based private cloud virtual desktop using Qt Designer. Implemented an instruction set for the virtual desktop experience, including basic image rendering, keyboard and mouse interactions, audio, and video.
- Built a Chrome extension for users to retrieve their virtual machines and get access with more convenience.
- Supported a client-based virtual desktop on WebSocket using Canvas. The instructions implemented were similar to the desktop ones.
- Rewrote the UI part of the virtual desktop management portal using Material Design. Re-implemented the front-end framework and maintained a reusable component set. Led the refactoring of the user experience.
- Participated in the design and development of a brand-new private cloud storage solution.
- Supported a file synchronization tool by utilizing Python and the rsync algorithm.
Software Engineer
Works Applications
- Contributed to the design and development of the "My Number Keeping System" platform, which improves the efficiency and transparency of personal information collection. It was accomplished by using Spring, DynamoDB, and other technologies.
- Developed an ERP software for a newspaper publishing company based on J2EE and Angular, including a web newspaper editor based on HTML5 canvas, a real-time chat system based on WebSocket, and other basic human resource management features.
- Built and designed, in a team, an Android app which used OCR technology to recognize characters on images; specifically developing an image crop component and leading the UI/UX design of the app.
- Helped to migrate a Java-based database during the development process.
- Participated in the development and design of an open source project.
Software Engineer
China Court System Project Team
- Supported a PowerBuild and Sybase based application for the court system of Jiangsu province.
- Created a database synchronization tool.
Experience
Crawler of eCommerce Websites (via Toptal)
Highlights of My Project Contributions:
1. Utilize a proxy service to solve the anti-crawling mechanisms of these eCommerce websites thoroughly.
2. Improve the speed of the crawler significantly by getting data from the product search result pages instead of scraping product detail pages one by one.
3. Create a website for users to visualize data, download data aggregations, check the status of the crawler, and manage users.
4. Create a CI/CD process based on CircleCI and AWS Elastic Container Service which improved the efficiency of development and deployment.
5. Introduce a mechanism to integrate our system with AWS Elastic Container Service which will be responsible to scale the EC2 instances used for crawling; only let them start when the crawler is running and scale the number of ECS services to 0 when crawling is finished. It will help save a significant amount in costs.
FileGear: Private Cloud Storage Hosted at Home
I developed most of the front-end functionality including file-and-folder uploads, drag-n-drop, copy, move, uploads, file tree, explorer, image navigator, and more. I also developed a reusable UI component set based on Material Design.
For the back-end part, I invented a progressive file hash calculation algorithm which improves the file upload experience a lot.
Rhinobird: a Tool for Teamwork
https://github.com/rhinobird-ioI created a web-based calendar for users to manage and share their activities, where users can also drag-n-drog around to easily create and update activities. I also supported a real-time chat tool similar to Slack.
Sybase ORM
Angular Infinite Scroll
https://github.com/RonaldoLee/angular-mobile-infinite-scrollCompany's React Foundation Library
Education
Master's Degree in Software Engineering
Nanjing University - Nanjing, Jiangsu, China
Bachelor's Degree in Software Engineering
Nanjing University - Nanjing, Jiangsu, China
Skills
Libraries/APIs
React, REST APIs, Puppeteer, Material Design Lite, Redux Form, React Router, Node.js, WebGL, Restify, jQuery UI, jQuery, Scikit-learn, GitHub API, Polymer, PhantomJS, Apache Lucene, React DnD
Tools
JavaScript Debugging, NPM, Chrome Developer Tools, Git, Webpack, Redux Thunk, Qt Creator, Bitbucket, Canvas 2D, PM2, Sequelize, Vim Text Editor, Atom, Shell, Jenkins, Fluentd, NGINX, Cocos Studio, Mocha, AWS ELB
Languages
JavaScript, CSS, ECMAScript (ES6), HTML, GraphQL, Java, PowerBuilder, ES7, Bash Script, C++, SQL, PHP, XML, Python, YAML, TypeScript, VBScript, Ruby
Frameworks
Express.js, Redux, Ant Design, Yarn, Angular, NestJS, Bootstrap, Qt, Jest, Next.js, React Native, Spring, AngularJS, Chrome
Paradigms
Responsive, Responsive Layout, RESTful Development, Microservices Architecture, Socket Programming, Unit Testing, E2E Testing, Functional Programming, Agile Software Development, Testing, Photoshop Design
Platforms
Amazon Web Services (AWS), AWS Lambda, MacOS, Linux, Linux CentOS 7, Jakarta EE, Android, Docker, Cocos2d-JS, Kubernetes
Storage
JSON, MySQL, NoSQL, Redis, Amazon DynamoDB, Elasticsearch, Sybase, SQLite, MongoDB, PostgreSQL
Other
Responsive UI, WeChat Mini Programs, Lint, Chrome Extensions, GitFlow, Data Structures, Algorithms, Machine Learning, Software Development, Mobile Web, HTTP, WebSockets, UI Testing, Android Development, Deep Learning, Design, Accessibility, HTTP 2, Enzyme, Network Protocols, User Authentication, WeChat Pay
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