The Michaels Stores
Software Development Engineer II
Full Stack Development – Michaels.com eCommerce (Feb. 2021 – Aug. 2022)
-
Participated in the design, development, improvement, testing, and deployment of the large-scale Java
Spring Boot backend microservices and React frontend UI, enhancing the entire online shopping experience
for millions of users.
Third-party Service Integration (Nov. 2021 – Aug. 2022)
Java
SpringBoot
Python
Redis
Apache Airflow
Datadog
Google Tag Manager
-
Implemented a robust global third-party API gateway and management service, integrating PayPal
(payment), Affirm (financing), Attentive (text), Fusion92 (offer), Tibco (loyalty), and SheerID (ID
validation). Streamlined API usage, authentication, authorization, rate limiting, and metric analysis.
-
Led the development of the data retrieving APIs and data uploading/syncing up pipelines for 3rd-party
service data access.
-
Introduced cache system to store the frequently accessed data and avoid long query.
Greatly reduced the average API data retrieving time from 1000ms to 10ms.
Shopping Cart Development (Feb. 2021 – Oct. 2021)
Java
SpringBoot
Redis
Cassandra
Google Spanner
MongoDB
Kafka
Jenkins
Google Cloud
-
Designed, developed, tested, and deployed of the shopping cart system and RESTful APIs using Java,
Spring Boot including initialize shopping cart, add/remove product, change quantity, inventory check,
etc.
-
Worked with the front-end team to discuss API design such as HTTP method, request/response format, and
error handling, etc. Optimized the structure of request
and response (params/JSON), reduced the amount of transmitted data, and achieved faster API access.
-
Incorporated Kafka as message broker and data buffer for decoupling checkout and shopping cart
microservices. Implemented shopping cart cache with Redis which increases performance and reduce
response time by 92%.
-
Cooperated with the DB team to migrate item table from MySQL to MongoDB using primary-secondary
mechanism. Constructed the new shopping cart table schema and index strategy. Managed to merge the
separated shopping cart tables (course products, project products, and SKU products) into one standalone
table by normalizing the optional tables and extracting the same entities. Reduced the average long
query times by 50% (from 3x to 1.5x).
-
In charge of: using (TDD) Junit and Mockito to keep unit tests light and non-invasive, using SonarLint
for code style check, writing swagger API doc, conducting the CI/CD pipeline from dev to QA, and
integrating Datadog for API monitoring.
iOS Mobile Development (Aug. 2020 – Feb. 2021)
iOS
Swift
Objective-C
XCode
UIKit
RxSwift
SDWebImage
SnapKit
Alamofire
-
Worked in a 16-person mobile development team, contributing to design, development, testing and delivery
of the new Michaels app, participating in the startup of the iOS team, and collaborating on the
selection of mobile development frameworks (hybrid vs native, Storyboard vs Swift UI), iOS programming
languages (Swift, Objective-C), coding styles, code structure patterns, version-control flow,
third-party libraries, and the CI/CD pipeline.
-
Led the development of the "In-Store Scan & Go" feature from scratch, implementing GPS, Wi-Fi SSID,
Bluetooth beacon, and Geofence to enhance in-store detection speed. Researched, compared, and integrated
barcode formats and scanning solutions (Apple Vision, Google MLKit), significantly improving scanning
and item retrieval speeds.
-
Contributed critical, shared components to multiple features of the mobile app, including a reusable UI
component library, global data transformation, presentation, cache, persistence, and network
communication libraries, improving overall app modularity and efficiency.
-
Collaborated closely with the backend team on API design and contracts and worked with the UI/UX team to
integrate the app’s user interface and prototype, ensuring a seamless and engaging user experience.