×
Hou Tianze

Hou Tianze

Full Stack Developer


Background


About

About

I enjoy creating things, solving problems and learning new skills. Software development makes those achievable at one's fingertips, that's why I like it.

Work Experience

Work Experience

  • Software Engineer, 

    Nov, 2017 - Present

    Worked as a full stack developer on the Market Commentary, Customer Investment Profile and Personalized Investment Ideas projects. The back-ends are developed using Spring Framework in Java and Scala, whereas the front-ends are developed in AngularJS using JavaScript and TypeScript. The team follows quite tightly the Scrum process of the Agile methodology.

    • Personalized Investment Ideas: Implementing new features in each Sprint according to the planning. For example, adding new APIs, UI components and logics, integrating the portal in Mobile Banking and other projects.

    • Customer Investment Profile: Migrating the UI to a completely new back-end (The APIs are incompatible).

    • Market Commentary: Enhancements including: Adding Google Analytics in UI, Migrating code from OSGi to Spring-boot, Adding new features like notifications.

  • Staff Software Engineer, 

    Apr, 2014 - Oct, 20173 years 6 months

    Worked mainly on back-end on WebSphere® using Java and DevOps automation.

    • Developing the DevOps onboarding portal using JavaScript technologies (Node.js as back-end, Vue.js as front-end).

    • Writing automation scripts, configuring CI tools (RTC, Jenkins, etc) and utilizing Docker to create DevOps pipelines

    • Creating REST APIs for the Inventory Validation process, using JAX-RS, JPA, etc.

    • Creating test cases for the Java web-based application called GPO (Global Process Optimization), including developing the JSON (comparison, sorting, etc) module.

  • Software Engineer II, 

    Jan, 2008 - Mar, 20146 years 2 months

    Worked on several projects, most of which about communicating with equipments on Windows, using C/C++ and C#/.NET.

    • Developing several test cases and enhanced the UI for a test software called ScopeSuite, using WPF (C# 4.0).

    • Co-Developing a SwissQual™ QualiPoc® to R&S ROMES® file format converter. Working on both the console engine (written in C++ with QT) and the GUI (written in WPF / C# using the MVVM pattern).

    • Developing a DLL in C++ with Boost, to provide APIs of the R&S WiMAX scan / demodulation solution to third parties.

    • Developing alone a 4-channel camera test monitoring software from scratch using C++ with MFC/Win32 APIs.

    • Writing several small programs for different test projects in C / Java.

  • R&D Software Engineer, 

    Oct, 2005 - Dec, 20072 years 3 months

    Worked on developing modules to enhance the Signaling Analyser® software, which performs mobile protocol analysis, using C/C++.

    • Adding detailed information display to call trace sequence diagrams in MFC Doc / View codes.

    • Writing several protocol-decoding scripts for companies like Ericsson™, Nokia™, Siemens™, etc.

    • Writing several Perl/JavaScript scripts to automate daily tasks, e.g. code cleanup/migration, build automation, etc.

  • Software Engineer, 

    Feb, 2005 - Jul, 20056 months

    Developed a lift-monitoring program in C (cross-compiled using some GCC tool chain) on UNIX (OpenBSD)

Projects Experience

Projects Experience

  • ByPy

    Jan, 2015 - Present

    Python Client for Baidu Personal Cloud Storage

    • As of Apr-2020, it has received more than 5000 stars ★

    • Reliable transfer even under poor networks

    • Full Unicode support

    • Caching for performance improvement on less powerful devices such as raspberry pi.

    • Comparisons and verifications so you can be sure that your files are properly synced.fluency

  • DBUnit Patch

    Sep, 2017 - Oct, 20171 month

    This patch adds support for the PostgreSQL OID data type for this famous Java database unit-testing library

  • CCoolFX

    Jul, 2009 - Jul, 20178 years

    With this class, a developer can add water/fire/plasma effect to his static control by changing just one line of code

Skills

Skills

  • Fundamentals

    Data Structures & Algorithms

    Design Patterns & Idioms

    Object-Oriented Design

    Functional Programming

  • Programming Languages

    Java

    Scala

    Python

    JavaScript

    TypeScript

    HTML

    CSS

    C/C++

  • Frameworks

    Spring

    JUnit

    Angular

    jQuery

    React

    Karma

    Jest

  • Tools & IDE

    Shell

    Git

    Maven

    Gradle

    Docker

    Vim

    VS Code

    IntelliJ

Education

Education

  • Electrical & Electronic Engineering (Major: Computer Engineering), Bachelor, Nanyang Technological University

    Aug, 2000 - Feb, 2005