EXPERIENCE

Test Engineer Tech Lead at Fiserv

Making decisions on critical technical details on automated testing and DevOps strategy. Skill up fellow QAs to have both technical skills and mentality. Raising awareness of defining clear boundaries and writing testable code among developers. Reducing human errors and boost the confidence of releasing products by automating things sensibly.

Senior Test Engineer at Fiserv

Built the whole ecosystem for automated tests including web UI test, mobile (iOS & Android) UI test, API test and unit test. Optimised the workflow for QAs to better triage issues, increase the visibility of test results.

Senior Developer at Sinosoft

Writes C/C++, C#, Java, python, customise Linux kernels for weird hardware, implemented full-fledged in-memory DB for maximised performance, just to name a few of interesting and challenging projects. Learnt to do whatever it takes to ship the products.


EDUCATION

Master of Software Engineering

University of Auckland

Bachelor of Computer Science

Liaoning University


SKILLS

I Build Modern Websites/Web apps

reactreduxwebpackbabelES6

I have been keeping up with the latest web development technology (so far) due to my fascination with web development. React.js, Redux, Server Side Renderingis my Jam. Created and maintaining open source projects. Contribute to existing ones when necessary.

I Build iOS Apps

SwiftReactive ProgrammingUIKitSwiftUIMVVM

Familiar with Apple's design language. Efficient with UIKit and all surrounding technology. Was a big fan of reactive programming when RxSwiftand ReactiveCocoa was the only option, and now super excited with the first-party solution - Combine and SwiftUI. Model Junky and Performancefanatic.

I Build Backend Services

LinuxDockerAWSRailsNodeSQLNoSQL

I lived the recent history of technology, all the way from bootstrapping my own OS with gentoo (later Arch Linux), compiling all packages by hands, to virtual machines hosted on the clouds (aws ec2, linode), all the way to the trendy container tech. Built a couple of complete backend solutions withRails (ruby), Express.js (node.js), Django (python). Had experiences with traditional SQL DB like mySQL and SQLServer, also played with NoSQL (MongoDB).

Advanced Programming Knowledge

ProceduralOOPFPVMCompilerGarbage CollectionARCConcurrency

Had experience with different programming paradigms through real project experiences. Possess advanced knowledge about details of various languages from their syntax, type system, memory management system, to error handling, concurrency, compiler optimisation.

I Do Testing and DevOps

testingCICD

Designed and lead the implementation of:

  • Efficient frameworks to write reliable tests (unit, integrated and UI);
  • CI systems to trigger necessary tests in reaction to code changes;
  • Tools to visualise the results and generate quick feedback for the teams;
  • Delivery pipeline to push products out of the door (deployed to production or submitted to App Stores) automatically and accurately with minimal surprises.