About
Tao is a senior full-stack developer and architect who worked on over 14 million lines of code on large-scale, real-time acquisition software projects. He primarily focused on the back end for more than 11 years. Tao's expertise is mainly in C++, C#, Java, Python web development, performance optimization, and troubleshooting in Azure and AWS.
Experience
About 25.4 yrs of professional experience, estimated from the roles below (overlaps counted once).
- Jan 2021Present
Principle Software Engineer
Oracle
Developed a highly available, high-performance, and highly scalable REST API service in Oracle OCI using Go language and Java in the back end to provide an authorization service for internal clients. Developed and maintained CI/CD pipeline build scripts to deploy REST API services in Kubernetes pods running in Oracle OCI, and troubleshot issues using the Kubernetes CLI. Designed an async API to support bulk operations for clients importing or uploading large amounts of data to our authorization service and storing the data in an Oracle database. Used Codex with OpenAI GPT-5 to generate unit and integration test code, and automated DevOps manual steps using Python, JavaScript, and TypeScript.
- Jan 2020 – Jan 2021
Senior Software Engineer
JPMorgan Chase
Provided a scalable, highly available, and low latency data transformation web service in a public and private cloud with a Java back end. Worked on performance enhancement and troubleshooting to better support more than 1000 TPS during peak time. Built-up a CI/CD pipeline to generate metrics data for every build, unit test/integration test execution, deployment, and more. Also, achieved zero downtime during every deployment.
- Jan 2019 – Jan 2020
Senior Software Engineer
P97
Developed a web service for a mobile payments app in .NET/.Net Core and C# running in Azure. Utilized SQL Server DB, Azure Cosmos DB, Redis Cache, and In-memory cache as a data storage strategy to achieve the best performance. Applied the blue-green deployment strategy in Azure to ensure zero downtime during app service deployment, web jobs, azure functions, etc. Created web jobs in Azure to communicate with different payment hosts by different payment types, such as Google Pay, Apple Pay, Samsung Pay, or Chase Pay. Used C# to create a new payment workflow with Worldpay. Got payment info from the Service Bus topic and packed them into ISO 8583 message format, sent to WorldPay server, and returned transaction result as Service Bus message. Implemented in-memory cache with TTL in C#. An LRU cache can get data from SQL Server and Cosmos DB. It also supports REST API to access the cache. Used Service Bus to support event-driven workflow to combine different web jobs to finish payment workflow. Each web job will be a consumer and producer of a specific Service Bus message. Worked on a data analysis project which tries to gather performance metrics data by different payment workflows. Data came from Cosmos DB with indexes created to get better performance.
- Jan 2019 – Jan 2019
Developer
Palmetto Wood Shop, LLC
Extracted Excel data and processed it using VBA script. Utilized CorelDRAW API to automate interaction with CorelDRAW UI. Integrated CorelDRAW and ShipStation. Used hashmaps, collections, arrays, and data structures to process and convert data from ShipStation to CorelDRAW.
- Jan 2007 – Jan 2019
Senior Software Engineer
Schlumberger
Redesigned data structure, re-architected software, and introduced parallel programming in the back end to improve the performance of web services and desktop apps. Improved performance from 30%-80% in a large-scale real-time acquisition system. Set up the CI system to improve development efficiency for a large population of the community. Improved the development lifecycle time from 3-7 hours to 10-60 minutes, which saves a lot of money for the projects. Worked as one of the authors to write C++ and C# coding standards for projects. Around 150 developers all over the world followed this coding standard in daily work and code review sessions. Created a web service to host an automatic log file analysis and dump file analysis. Promoted the project troubleshooting and monitoring to a higher level and saved a lot of money for the project. Introduced the static code analysis tool Coverity to the project for C++, C#, and Java. It was integrated into the CI system in 2009 and still acts as one of the most important metrics used to measure code quality. Worked as a full-stack developer to create REST APIs with Java, Node.js, and JavaScript to support real-time monitoring and alarms. Created a service that provides a good view of the healthy status of all apps running in either the cloud or on desktop. Implemented a tool control system via sockets in C++. Controlled hardware behavior by sending commands to the device and reading messages from it to determine the real-time status. Used Amazon Lambda to host a small web service in Java to maintain hardware inventory information. Compared Lambda and EC2 and chose Lambda due to its lower cost and fast deployment.
- Jan 2004 – Jan 2007
Senior Software Developer
Nortel Networks
Designed an Oracle database and developed stored procedures. Programmed in Java to add new features for the network and telecommunication device management system. Utilized Solaris/Linux commands and Bash shell as a small tool in daily development. Programmed in C++ to create an interface between hardware and the Java application. Used Eclipse as an IDE to do the coding work for C++ and Java.
- Jan 2001 – Jan 2004
Senior Software Developer
HInnovation
Designed MySQL database tables and developed stored procedures to support a medical remote diagnostic system. Developed ASP web pages with JavaScript to provide query and statistic functions. Developed COM objects as back-end or business logic layer in C++. Those COM objects acted as a small service to combine the whole workflow together. Created IP phone functionality based on the H.323 protocol. Integrated with a highly efficient compression and decompression algorithm. Also integrated with the echo elimination algorithm. Created a C++ program based on different medical image formats, such as CT and MRI. Created an automated fax module by integrating it with hardware in C++. Converted text into a TIFF file, sent it to the hardware, and forwarded it to the target fax machine.