I'm a self-motivated man who loves very much about programming.
I do always learn before I invent so that my colleagues don't have to deal with "genius" code.
Programming skills are like wands for wizards, they can help build many amazing things in a fantastic way.
But unlike magic, programming is about simplicity, readability.
And that's what I do, build awesome(hopefully) things with simple readable code.
Email: [email protected] Phone: 18627036360 (China)
-
Frontend engineer in HangbanGuanjia for 16 months.
- A single page web application based on Mithril framework
Including routers, state management, session restore, complicated user-interactive components.
- Maintenance of the company's Gitlab and Gitlab CIs
Including docker related problems debug, Gitlab upgrading, moving issues.
- Express & Node.js based backend for rendering pages and API rerouting
Including request tracing, request caching, javascript and CSS packing. Supporting dynamic module loading from the browser, typescript transpile.
-
Backend engineer in YueRanXinDong 7 months ago till now.
- Express & Node.js based API server for Neon, Meetstar, and other Apps
Other than above, there is long async flow managing, composition with golang, python. Interactive with DynamoDB with node. Deploying with lambda, ELB, and containers.
- Gin & Golang based API server for a Tinder-like App
API routing with Gin. Interactive with Postgres and DynamoDB, query and calculate GEO information with PostGIS. Building and delivering golang applications automatically with Jenkins.
- Maintenance of AWS dynamoDB, RDS, Lambda, EC2, Kenisis etc.
-
Research Engineer in Big data institution of Wuhan University till now
- Neo4j, gstore, MySQL based billion level document analysis and visualize system
Using Rust as backend and all the graph algorithms, wasm, and zoomcharts for frontend
- CNN based image classification
Mainly just stack convolution layers and pooling layers. Solves brain tumor diagnosis which is just a binary classification problem. Tring to detect tumor with YOLO, still working.
-
CTO in Chenwu Tech.
- tox and rust based distributed communication system
Impl tox based p2p communication system.
- tokio and rust based communication framework
The framework is divided into frame layer, codec layer and router layer. The frame layer is built on top of the bluetooth protocol and audio protocol.
- bert based entity and event extraction
Prepare the data, build and train the model.
- resnet50 based smoke detection
Prepare the data, build and train the model.
- dynamo.cli query AWS dynamoDB with SQL in a prompt
Analisis and convert SQL to DynamoDB APIs.
Multiple query task and prompt integration with goroutines.
- siteWarden monitor website changes with Chrome puppeteer and image diff algorithm (This one is currently deleted because there is a leak of password)
Logging in websites with Chrome puppeteer.
Sending an email with node-mailer.
- NSFW image rating a tensorflow and Yahoo's open-nsfw based nudity detection
Gather training set with crawlers.
Building model and training with Tensorflow.
Serving as HTTP API with flask and gunicorn.
- HTML/CSS/SCSS Layout and styling pack
Read and write HTML pages, CSS frameworks, solve issues with different browsers.
- Javascript in browsers
Working with built-in javascript API, MVC frameworks like React, Vue, Mithril etc.
Knows about web assembly, asm.js. Knows how to optimize javascript in browsers.
- Javascript in Node.js(Quiet different)
Working with Express, KOA, and other HTTP routing frameworks.
Knows stream programing in node, async flow control, and event loops.
- Golang
Working with Gin, Beego and other HTTP routing frameworks.
Working with tui-go, go-prompt and other go command line application frameworks.
Knows internals of slice, goroutine, channel, and interface.
Knows how to debug goroutine leaks, channel deadlocks.
Knows how to test, profile, benchmark go programs.
Knows how to interact with databases both SQL and NoSQL with go.
- Rust
Graph algo
- Python
Tensorflow & keras & flask
- Reason
I'm 29.