Career Profile

I am a Senior Software Developer for both mobile and platform sides. With 6+ years of hands on extensive experience with mobile development including iOS, Android and Hybrid Technologies. Working on System WebService Design and Implementation using Microsoft Technologies like ASP.NET Core/.NET 5 and Azure. Looking for new ventures where I can apply my expertise, learn and evolve.

Experiences

Senior Software Engineer

2020.11 - 2021.9
Plexure, Auckland

Working on Product-Catalog APIs and Database for Grocery and QSR merchants; Notify other Microservices when products changes happen by using EventGrid.

  • Design and Implement relational database using Sql Server, and use entity framework core to manipulate data
  • Use OData API to provide more customisable query/post requests for internal micro services
  • Publish events to Event Grid when products changes happen so that cache builder function can subscribe it and update products redis cache for stores
  • Write Specflow Test Framework to help QAs write test scenarios easily

Working on both Store Consumer and Management APIs, using redis and redis search to improve performance.

  • Design and Implement Store Database using Sql Server, and use entity framework core to manipulate data
  • Design cache builder function to update redis cache and support redis search to improve query performance

Technologies: .NET 5(C#), Azure, OData/GraphQL, Entity Framework Core, Redis/Redis Search, NUnit, SpecFlow,

Senior Mobile Engineer

2019.8 - 2020.11
Plexure, Auckland

Design and Implement a high-performance dynamic architecture based on VIPER. Render UI Components(tiles) from skeleton file and load static data from configuration files such as Language, Text and Constants. Design and Implement Local Cache System for both iOS and Android. Serve over 1 million customers for our client in Indonesia by using this white-label app.

  • Design and Implement CacheManager to cache Offers data for offline usage
  • Design and Implement Network layer, SSL Pinning, and etc
  • Implement Render Engines such as ThemeEngine, DisplayEngine, LanguageEngine, and etc
  • Design and Implement Routing system including Deep link based on VIPER Pattern

Technologies: Swift, Kotlin, Coroutines, AppCenter, Realm, Instruments, Memory Graph Debugger. Swift Package, Cocoapods, Carthage.

Senior Mobile Developer & Scrum Master

2016.9 - 2019.8
Fiserv, Auckland

As the core member in Retail team, I lead and join several key features for the whole product team in both iOS and Android, such as Native UI Automation Implementation, Marketing Module, Deep Linking, Secure Chat, and etc. As part of feature team, I also act as Scrum Master during the daily developing, and facilitating Agile Ceremonies, as well as maintaining the team backlog and coordinating with stakeholders. I was also selected for two-month with the Enterprise Architecture Team and UX team to create proof of concept and prototype for the whole company, which enhances the modularity and flexibility of our app.

As the core member in License team, I do feature development work including transfer, bill payments, send money, and card control, etc. And lead the MiSnap Integration using cocoapods to replace previous remote deposit capture implementation. Responsible for CI works in the whole team, write ruby and groovy code to support fastlane builds and Jenkins facade; fix Jenkins scripts' issue, and ensure Jenkins' build works everyday for both License and Sustained Engineering team. Responsible for improving our products such as removing memory leaks. Also do knowledge transfer with India team so that they can be familiar with License works as soon as possible.

As the core member of BASP team, I do feature development work such as transfer and payments, and accessibility in both iOS and Android. And lead Biometric ID Module development. Also help Costa Rica team familiar with BASP works as soon as possible.

As a mobile developer in Skunk team, I implement many modern features using cutting edge technologies, such as core animation, deep link, graphql, siri shortcut, etc. I also write lots of new components such as ui components(shapelayer, shadowlayer, gradientlayer and custom transitioning animator, etc) and utility components, which will be used in our new component sdk, and can help our product evolution.

Technologies: Swift, Objective C, Kotlin, Java, Ruby, Groovy, RxJava, Core Animation, fastlane, Jenkins, Instruments, Memory Graph Debugger, Accessibility, GraphQL, Apollo.

Software Developer

2015.11 - 2016.9
MEA Mobile, Auckland

Implement the company's first AppleTV application called Printicular tvOS, which connects seamlessly with Facebook photos and lets users simply search Flickr for favorite photos. The tvOS app automatically selects the print size which is perfect for users' pictures, and also helps find users' nearest Walgreens store based their location. The app also supports dictation feature which simplifies the user's input process. Once users' photos are printed they will get an email notification to confirm to come collect their prints.

Implement the company's first photo collage application called Photo Collage Portrait Studio, which lets users make cool collages, add stickers, resize, rotate or flip photos, change the pictures to black and white, switch between templates, add texts, effects, backgrounds, frames, borders and much more. After editing and stitching photos into a cool collage, the app also supports to share it with your friends or print at Walgreens.

Technologies: Objective C, PhotoKit, Core Animation, AFNetworking 3.0, SDWebImage, FBSDK.

iOS Contractor (part time)

2015.12 - 2017.9
SLAT PLUS, Auckland

Develop a NZ news application with community feature using Swift, along with one other team member who wrote the server part of this application. This application aims at helping local Chinese immigrants getting to know their local community better, and also introduces a range of information of New Zealand to other Chinese people who are interested to come to this country. There are more than 5000 articles being posted on this application and all of them are being grouped under 8 categories, which eases the users to search on articles base on their interests in a shorter period of time. Forum is open for users to feel free to comment and ask question. It also supports users to post, actively discuss and share interesting fact and topics to the other users.

Technologies: Swift, Core Text, Core Animation, Realm, Alamofire, JSONSwift, SDWebImage.

Projects

Mobile Banking App - Develop a cross-platform mobile banking app using React Native. This application implements partial functionalities of Mobile Banking in Fiserv, including login flow such as registration, challenge, whatsnew, etc, also accounts, transfer pages. In this app, users can login with their credential and do internal transfer after login success. And I am keep working on it with other good practices.
NetworkTransport Library - Develop a light weight network library for company's API service based on Promise & Future technology from JavaScript, which is more user friendly and robust.
Math Teach - Develop an iOS application aimed at helping student teachers and parents teach children mathematics. This application supports 5 different mathematical topics based on the mathematic course outline of New Zealand such as Numbers, Measurement, Geometry, Algebra and Statistic, and each of them has 9 different levels knowledge. Also 3 components including general goals, advice and corresponding tasks are attached alongside with each level of knowledge.

Skills & Proficiency

Mobile Development

Frontend Development

Backend Development

Cloud Computing (Azure)