Tips Jar
Challenges & Solutions
As the lead developer, Store Manager was my first project. It was a challenging yet rewarding experience that taught me valuable lessons in project direction and architecture. Despite the complexity, the app became widely popular and continues to be used today.
I learned about the OAuth process for major payment providers like PayPal, Stripe, and Square, and updated our tech stack to migrate from NVP to Rest API. Additionally, I created a secure vault database to store payment tokens, protecting them from external requests.
During the app development cycle, I incorporated data-driven analytics, including A/B testing and tracking page views and events to measure the usage of different features. I believed that incorporating data-driven ideas in our meetings would be beneficial. Additionally, I used this data to further develop our in-house design language, HotPot.
To accommodate our clients who often have large product catalogs and want to display them on the homepage, I focused on optimizing the database and SQL scripts for performance. This was crucial to ensure the site loads quickly and does not overload the server. Additionally, we implemented a reverse proxy to cache site content and requests, further improving site speed.
Features
One of the most popular features in our store manager was the abandoned checkout functionality. It allows store owners to send a follow-up email with a coupon code to clients who left the checkout process before completing their purchase. While the logic behind this feature was simple, I spent time preparing the database to ensure a smooth development process.
Implementing a product discount feature that includes taxes and shipping, along with various types of discounts, may sound easy, but it was actually quite complex. Despite the challenge, I was able to develop a solution that covered most use cases while keeping the coupon creation interface user-friendly for the site owner. This feature became quite popular among our clients.