About me

My name is Zhewei Hu. I am 26 years old. I was born and grew up in Cixi, Zhejiang Province, China.

In 2016 Spring semester, I received the degree of Master of Science in Computer Science from North Carolina State University. My master thesis is "Scaffolding the Grading Process for Peer Review Assignments: A Pluggable Reputation Web-Service Approach". During 2016 summer I interned as a Software Engineer at Offers.com in Austin, TX. During 2017 summer I interned as Aspera Software Engineer at IBM in Emeryville, CA. Currently, I am a second-year Ph.D. student majoring in Computer Science at North Carolina State University.

I started to "play" with Ruby and Rails in Nov. 2014, so it is almost 4 years now. Since that time, I began to work on an open source project named Expertiza. Expertiza is a web application supported by NSF written in Ruby on Rails framework through which students can submit and peer-review learning objects (articles, code, websites, etc). Now I am the chief maintainer and contributor of Expertiza and contributed more than 800 commits to Expertiza master branch on GitHub. And I designed and deployed several key features, such as multi-part rubrics, team lazy initialization, automatic review mapping strategy, student-suggested topics, staggered-deadline assignment, course project bidding, etc. I am familiar with the RSpec testing framework. I continuously create and merge pull requests to increase the test coverage from 28% to 47%. And I also used Rubocop auto-correction functionality to enforce ruby coding guidelines.

During 2016 summer, I interned as a software engineer at Offers.com in Austin, TX. During this period, I utilized Ruby on Rails, Sequel, and PostgreSQL to build a Key Performance Index (KPI) report for the marketing team. And I also fixed more than 15 issues from JIRA scrum board with Agile methodology. What is more, I implemented Rubocop on 6 projects to enforce coding guidelines (corrected more than 7000 LOC) and created a pre-commit git hook to ensure the code quality of each commit.

In 2017 summer, I interned as an Aspera Software Engineer Intern at IBM in Emeryville, CA. During this period, I closely worked with other team members and finished 2 projects. The first one is related to automated configuration management tool named Chef. I created an infrastructure test suites written by InSpec testing framework to verify configuration results converged by Test Kitchen or configured by Chef. I also set up a cron job to achieve real-time monitoring. My second project is related to container orchestration tool named Kubernetes. I migrated a big data sharing platform to Kubernetes cluster with etcd as distributed key-value store and Calico as CNI network plugin. I also replaced Nginx service with Nginx Ingress Controller that manages Ingress rules enabling inbound traffic to applications.

My skills

Language: Ruby, Java, Python
Web Dev Tools: Ruby on Rails, Node.js
Database & Cache: MySQL, PostgreSQL, Redis
Testing Tools: RSpec, FactoryBot, Capybara, InSpec, Test Kitchen, Selenium, Mocha
DevOps Tools: Git, Kubernetes, Chef, Ansible, Docker, Vagrant, Jenkins, Capistrano, AWS Elastic Beanstalk, Heroku

My publications

My presentations

  • Jun. 29th, 2016 - Education Data Mining (EDM) CSPRED workshop at Raleigh, NC. (slide)
  • Oct. 15th, 2016 - IEEE Frontier in Education (FIE) at Erie, PA. (slide)
  • Nov. 18th, 2016 - Faculty Open Source Workshop (FOSS) at Redhat, Raleigh, NC.(slide)
  • Oct. 23rd, 2017 - SPLASH 2017 SPLASH-E at Vancouver, Canada.(slide)
  • Nov. 17th, 2017 - Faculty Open Source Workshop (FOSS) at Redhat, Raleigh, NC.(slide)

Finally, to contact me please send an email to zhu6 AT ncsu.edu or look me in one of my social networks.