Skip to content

Instantly share code, notes, and snippets.

Embed
What would you like to do?
{
"basics": {
"name": "JiachenNing",
"label": "Java Software Engineer",
"picture": "https://avatars3.githubusercontent.com/u/3176871?s=460&v=4",
"email": "jiachenning@gmail.com",
"phone": "(86) 15800800838",
"website": "https://rnd.app",
"summary": "A broad-skill dev with seven year experience in analysis, design, implementation, testing. Be proficient with Java, Android",
"location": {
"address": "",
"postalCode": "",
"city": "Shanghai",
"countryCode": "CN",
"region": "JingAn"
},
"profiles": [{
"network": "StackOverflow",
"username": "ninja",
"url": "https://stackoverflow.com/users/1323374/ninja"
}, {
"network": "GitHub",
"username": "ninjachen",
"url": "https://github.com/ninjachen"
}]
},
"work": [{
"company": "Onecan",
"position": "Java Engineer",
"website": "http://www.jijigugu.club",
"startDate": "2018-09-25",
"endDate": "2019-07-31",
"summary": "We made a social app called onecan, which provides chat services to ones have social anxiety. I was the server side engineer which provides the solid apis to clients. And did the technical research on some tools and distribution database.",
"highlights": [
"Refactored and maintained the whole auditing report management system. Features in the management system are authentication, access control, post filter, user report, topic operation, high quality post recommendation, user feedback, etc",
"Migrated the big table from Mysql to HBase, about 0.6 billion records. Planed the whole migrate process, include rowkey design, performance testing, edge case testing, new data double writing, old data migrate",
"Setup HBase cluster. Customized the Spring Data Hadoop framework, which provides some common logic, for example HBase client reconnect and CRUD apis easy to use. Designed rowkey to fit the query requirements. Created table with region pre split, to prevent the region split which may bring performance issues.",
"Maintened Instant Messaging system based on Protocol Buffer",
"Installed the CI/CD deployment chain based on Jenkins, Gitlab and Supervisor",
"Researched on pt-online-schema-change, and use it as our online schema change tool. The native Mysql DDl might produce the lagging replication when the load is high. And pt-osc brought less load and traffic.",
"Wrote groovy scripts to generate POJOs from Mysql table, avoid repeatable work.",
"Wrote bash scripts to simplify the deploy and server mataince. Such as scheduling backup database, clean up old logs, scheduling update HTTPS certification files, monitor errors in server logs"
]
}, {
"company": "Zeonic",
"position": "Software Engineer",
"website": "",
"startDate": "2016-07-01",
"endDate": "2018-09-25",
"summary": "Zeonic was a startup based on public traffic, such as bike, bus, metro info service. Recently we were focused on mobile payment. If you use our app and show the qr code, you could get on the taizhou's bus with no cash nor transportation card.",
"highlights": [
"Developed the algorithm for locating running bus, and calculate the time to arrive the stop",
"Designed the qr code payment system, which can work offline because the bus may has no internet connection",
"Provided the Oauth2 service to the partners. And use the RFC7662 Token Introspection to fit the situation on mobile phone.",
"Optimized the android application with smooth operation and nature animation ",
"Built Java project from zero, it's SpringBoot based, date access use the JPA, and Gradle to build the project. Try to introduce the ProtoBuf to reduce the data exchanged",
"Developed the NFC adapter which can operate the transportation card, include checking and loading card balance",
"Wrote the unit tests, installed the ci/cd based on Jenkins, installed Bitbucket, wrote some backup scripts"
]
}, {
"company": "cLink Finance",
"position": "Android Developer and PHP Developer",
"website": "https://www.40jr.com/",
"startDate": "2015-07-01",
"endDate": "2016-03-30",
"summary": "I joined Clink Finance at very early stage. We helped our customers which are also startupers to coding their dreams. I played the role as an android developer, a php developer and a general technical support in our team.",
"highlights": [
"Developed hybird app. Union the native app login and webapp login",
"Developed js bridge to send message between android and js",
"Developed the order system by infinite state machine",
"Developed distribution cluster to split the platform-server and client-server which use the same code base. Use http-digest and md5 to validate certification to each other in the cluster."
]
}, {
"company": "Geex Finance",
"position": "Full Stack Engineer",
"website": "https://www.geexfinance.com/",
"startDate": "2014-09-01",
"endDate": "2015-07-01",
"summary": "My second job was working for a startup called Geex Finance. It was an Internet Finance company with series A term raised by Sequoia Capital. We helped merchant to build their website and apps, sold our loan product by the way.",
"highlights": [
"Built loan app in android pad",
"Built loan app server side",
"Built wechat based web app",
"Fixed IE compatibility with web engineer when it is at top priority.",
"Built non-block order process system, use Crontab and Redis."
]
}, {
"company": "Wondersgroup",
"position": "Java engineer",
"website": "http://www.wondersgroup.com/",
"startDate": "2012-07-01",
"endDate": "2014-09-01",
"summary": "My first job was coding for enterprise software. One project was for NanJing Airport which using algorithm to deal daily shift schedule and alarm delay flights.",
"highlights": [
"Built Spring based JavaEE program and Java pc client",
"Wrote Oracle procedure and view to modeling the data, and export the report as pdf",
"Migrated Groovy and Java code at one project",
"Debugged in ios code"
]
}],
"volunteer": [],
"education": [
{
"institution": "Shanghai University",
"area": "Computer Science",
"studyType": "Bachelor",
"startDate": "2008-09-01",
"endDate": "2012-06-01",
"gpa": "",
"courses": [
"Linear Algebra",
"Operating System",
"Relational Database",
"Data Structure"
]
}
],
"awards": [],
"publications": [],
"skills": [{
"name": "Java",
"level": "Senior",
"keywords": [
"SpringBoot",
"Mysql, Redis, Mongodb",
"HBase",
"Dubbo",
"pt-online-schema-change",
"Gradle",
"UnitTest"
]
}, {
"name": "Android",
"level": "Senior",
"keywords": [
"Dagger",
"Retrofit",
"Lottie",
"ReactNative"
]
}, {
"name": "Web",
"level": "Junior",
"keywords": [
"Angular",
"Gulp",
"Bootstrap",
"Webpack"
]
}, {
"name": "PHP",
"level": "Junior",
"keywords": [
"Codeigniter",
"Infinite state machine",
"Composer",
"Crontab",
"Nginx+fpm"
]
}],
"languages": [
{
"language": "Chinese",
"fluency": "Native speaker"
},
{
"language": "English",
"fluency": "Conversational"
}
],
"interests": [
{
"name": "Reading",
"keywords": [
"Fiction",
"Design"
]
}
],
"references": [],
"meta": { "theme": "kwan" }
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment