Hey, I am Xuegang(Frank)

Web Development Lead

About Me

Here is my tech stacks and brief introduction.

My Profile Image

Name: Xuegang Wang

Profile: Web Development Lead

Email: darkcar88@gmail.com

Phone: (639)571-2408

Resume: View pdf


  • Proficient: Java, JSP, Servlet, JDBC, Liferay Platform, Portlet dev, Maven, Gradle; PHP(CodeIgniter, WordPress, Drupal), MySQL;JavaScript,ReactJS and ReactNative, AngularJS, Vue.js; HTML, CSS, Bootstrap4; Github;
  • Familiar: Spring, Spring MVC, Spring Boot, Hibernate, Struts2, Web Service; C#, Python, Swift; Herkou, Google Cloud, Azure, Firebase, PostgreSQL, Node.JS, MongoDB;
About Me

Hello, my name is Frank Wang. I came to Canada in 2014, and obtained my master degree in Computer Science at the University of Regina, in the year of 2016.

Before I came to Canada, I worked as a PHP developer in Beijing, China for one year. During that time, I have developed several web applications, and gained lots of web development experience.

After I graduated from UofR in 2016, I work for Saskatchewan Government Insurance as an Interaction Designer. After several months, I was promoted to the Web Development Lead position and led 7 members in the web team. At SGI, I have built the new web platform and saved 200,000+ budget.

Employment History

Work experience helps me to be more and more professional.


PHP Developer

  • 2014 (8 months)
  • FL Mobile LTD
  • Implemented two corporate web applications and developed one eCommerce website using programming langauge PHP.


  • 2018 - 2019
  • University of Regina
  • Taught three-credit Computer Science Course: Web and Database Programming, and got averge ratings of 3.7 out of 4.0.

Web Development Lead

  • 2016 - Present
  • SGI
  • Planned, developed, tested, deployed, and maintained high-traffic web applications for SGI, and much more.


The places where I get myself educated.

# Degree University Year GPA
1 Master of Science University of Regina Sept. 2014 to April 2016 91.2 out of 100
2 Bachelor of Engineering China University of Mining Sept. 2010 to June 2014 N/A


The projects that I developed for my employer or personal practice.


The way to help me find success.

Measure execution time for a method

The duration of running the method is the execution time [Figure below]. In Java, there are plenty of methods to measure the execution time.

Bucket Sort, Bubble Sort, Selection Sort, and Quick Sort

Sorting is really important in software development. This article brings the four sort algorithms, which are Bucket Sort, Bubble sort, selection sort and quick sort.

Java Reflection makes it possible to inspect

Reflection is an API which is used to examine or modify the behavior of methods, classes, interfaces at runtime. A class has multiple component…

Multiply Strings – Leetcode Medium

Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string.

Remove Duplicates from sorted LinkedList

Give a list of sorted numbers, delete all duplicates such that each element appear only once. Time complexity must be in O(n).

Binary search – locate target fast in O(logn)

Binary search is an efficient algorithm for finding an item from a sorted list of items. Here you will find several morphs with the source code.