About Me

I am a software engineer living in Melbourne, Australia. Also, I got my PhD from the University of Melbourne. During my PhD study, I worked with Professor Lars Kulik and Professor Rao Kotagiri in sptio-temporal data mining, such as traffic data analytics and predictions, geospatial map applications, geospatial data visualization, and etc.

My current interests are:

  • Distributed systems;
  • Real-time stream data processing;
  • Docker, kubernetes, and container related techniques;
  • Scalable and maintainable data systems;
  • Recommender systems

Email:
Github: github.com/HengfengLi

A pdf version of my CV can be downloaded here.

Education

Ph.D. in Computer Science, The University of Melbourne, Australia (thesis approved on Nov 2016)
M.E. in Distributed Computing, The University of Melbourne, Australia 2012
B.E. in Software Engineering, Beihai College of Beihang University, China 2010

Publications

  • Li, Hengfeng, Lars Kulik, and Kotagiri Ramamohanarao. “Automatic Generation and Validation of Road Maps From GPS Trajectory Data Sets.” Submitted to the 25th ACM International Conference on Information and Knowledge Management (CIKM 2016) (pp. 1523-1532). ACM. [PDF]
  • Li, Hengfeng, Lars Kulik, and Kotagiri Ramamohanarao. “Robust inferences of travel paths from GPS trajectories.” International Journal of Geographical Information Science (IJGIS) 29, no. 12 (2015): 2194-2222. [PDF] [Code]
  • Li, Hengfeng, Lars Kulik, and Kotagiri Ramamohanarao. “Spatio-temporal trajectory simplification for inferring travel paths.” In Proceedings of the 22nd ACM SIGSPATIAL International Conference on Advances in Geographic Information Systems ( SIGSPATIAL 2014), pp. 63-72. ACM, 2014. (Acceptance rate: 21.2%) [PDF] [Data]

Professional Experience

Redbubble Ltd.
Software Engineer
Sep 2018 — Present
Responsibilities:
  • Developing event-based data pipeline with techniques like AWS Kinesis, Firehose, S3, and etc.
  • Building and maintaining ELT processes between database, such as AWS RDS, and data warehouses, such as Redshift and BigQuery.
  • Deploying with Docker and Kubernetes and provisioning infrastructure resources with AWS CloudFormation.
  • Monitoring data flows via CloudWatch metrics and alarms.
  • Developing ELT jobs with AWS Glue (managed Spark service) and querying structured files on S3 via AWS Athena.
Tech Used: Python, Ruby on Rails, Scala, Docker, Kubernetes, MySQL, AWS (Kinesis, CloudWatch, CloudFormation, Athena, Firehose, S3, Glue, Redshift, etc), Jenkins, GCP (Cloud Storage, BigQuery)
Ladoo Pty. Ltd.
Software Developer
Oct 2016 — Aug 2018

I mainly work on developing and maintaining a social media archiving platform, Brolly (https://brolly.com.au/).

Achievements:
  • Architected, built, and tested the new data capture pipeline based on an event-stream architecture with techniques like AWS Kinesis, DynamoDB, Celery, RabbitMQ.
  • Implemented new data crawlers for Facebook, Twitter, Instagram, and YouTube.
  • Worked on containerizing the monopolistic application into microservices via Docker and AWS ECS.
  • Worked on the export service to query and process data from ElasticSearch and generate an offline HTML app.
  • Created and maintained a suite of automated tests, including unit tests and integration tests.
Tech Used: Python, Celery, Docker, PHP, Symfony, MySQL, AWS (ECS, Kinesis, Dynamodb, SQS, ElastiCache, Elastic Beanstalk, CodePipeline, CodeBuild, etc), ElasticSearch, RabbitMQ, JavaScript, Backbone.js, Flask, Jenkins
The University of Melbourne
Tutor/Head Tutor
Mar 2013 — Jul 2016
Achievements:
  • Head Tutor for COMP90020 Distributed Algorithms (2016 Semester 1).
  • Tutor for COMP90038 Algorithms and Complexity (2016 Semester 1).
  • Tutor for COMP90018 Mobile Computing Systems Programming (2015 Semester 2).
  • Lab demonstrator for GEOM90042 Spatial Information Programming (2015 Semester 1).
  • Tutor for COMP90017 Sensor Networks and Applications (2013 Semester 2).
  • Lab demonstrator for GEOM90042 Spatial Information Programming (2013 Semester 1).
Tech Used: Python, Java, Swift, iOS programming
The University of Melbourne
PhD Candidate
Jul 2012 — Jun 2016
Research Project: Road Maps Generation from Imprecise GPS Trajectory Data [Poster'16]
Achievements:
  • Processed and cleaned a large amount of GPS trajectory data.
  • Developed an algorithm to infer road maps from GPS trajectory data.
  • Designed and implemented evaluation experiments.
Tech Used: Python, Numpy, Matplotlib, scikit-learn, Scipy
Research Project: Mining Large-scale GPS Trajectory Data Sets [Poster'14][Poster'15]
Achievements:
  • Processed and analyzed map data from OpenStreetMap.
  • Designed and developed inference algorithms to reconstruct travel paths from imprecise trajectory data.
  • Measured the performance metrics and evaluated the accuracy.
Tech Used: Java, Python, Numpy, Matplotlib
Distributed Microscopic Traffic Simulator [Poster'13][Demo A][Demo B]
Achievements:
  • Refactored the core part of microscopic vehicle simulation.
  • Developed a web application for visualizing the movement of vehicles.
  • Processed and analyzed the complex traffic data generated by the simulator.
Tech Used: JavaScript, Processing.js, jQuery, OpenStreetMap, Java, Apache Thrift, PHP
Baidu Inc.
Front-end Engineer (Intern)
Dec 2011 — Feb 2012
Achievements:
  • Implemented and maintained web pages for important public activities and events.
  • Developed an internal tool to manage the usage of multiple development servers.
  • Added new features to the internal project management system, such as asynchronous data update and autocompletion.
Tech Used: HTML, CSS, JavaScript, PHP, Python, Shell script, jQuery, Ajax

Awards and Scholarships

  • Excellence in Tutoring Award in the Department of Computing and Information Systems in 2016 SEM1.
  • Best poster award on CIS Doctoral Colloquium in the University of Melbourne in 2014, 2015, 2016.
  • Student volunteer for ACM SIGMOD 2015 (Melbourne, Australia).
  • Recipient of the scholarships MIRS and MIFRS by the University of Melbourne, 2012.
  • One of Part 2 winners in IBM Master the Mainframe Contest Australia 2012.
  • Recipient of the Dean's Honor Award (top 5% student) in the School of Engineering in 2011.
  • The 2nd National Award on CUMCM (China Undergraduate Mathematical Contest in Modeling) in 2008.

Projects