Hackathon Winners Part 6: Scheduling Price List Updates in Storefronts
Meet the team who won the award for solving a particularly intimidating challenge.
Welcome to the last, but not least, installment in our six-part Hackathon series.
Related Articles: Meet Our Hackathon Winners
Today, you'll meet The Time Turners. They won The Weiss-ly Done Award, which honors the team who solves a particularly intimidating challenge. If you'd like to learn more about our Hackathons, check out the Hackathon Details section in part one.
This team will walk you through the details of their project, but before we jump into that, let's take a moment to meet each member.
Meet The Time Turners
Brian Davenport, Software Engineer II on the Pricing Team
Background: I started at BigCommerce in 2014 in customer support, with some HTML and CSS under my belt from making a website for my band in high school, and some basic scripting from making games. I studied Psychology in school, and my work background was mostly retail and customer service.
Thanks to the awesome people around me at BigCommerce, I was inspired to keep on learning about programming and found ways to apply this knowledge to my job. Even though we don't officially support code customizations over the phone, the knowledge was invaluable for contextualizing conversations and understanding the needs of our customers.
As the business moved up-market, these skills became more valuable, especially in conversations with enterprise-level merchants and our pivot towards API-driven solutions to support their needs.
I worked as a Product Support Engineer for a few years, identifying bugs, curating feature requests, and supporting merchants with complex integrations. Eventually, I was granted read access to the codebase, which helped me identify bugs and their root causes faster, while also improving my overall understanding of the platform.
My job increasingly involved fixing bugs and building new features driven by merchant requests. Thanks to this experience, I was able to join the Pricing team as an Engineer at the end of 2021. After all this time, people here are still encouraging and helpful, and I've been able to continue growing my skills.
Fun fact: Music is a big part of my life. I've been playing guitar and piano for over twenty years, and I also produce my own music. I also like to dance West Coast Swing.
Role in this project: I modified the Price Lists UI to support scheduling assignments.
Connect with Brian on LinkedIn.
Tulasi Anand, Software Development Engineer in Test II on the Pricing Team
Background: I’ve been a Software Development Engineer in Test for about eight years now, and two of those years have been at BigCommerce. I’ve worked across multiple platforms (mobile app, frontend, API testing), mostly on test automation with occasional manual testing as well.
Related Video: Learn More About Tulasi
Fun fact: I trained in one of India’s classical dance forms called Bharat natyam for about fifteen years (started when I was five-years-old).
Role in this project: I worked on the project presentation.
Connect with Tulasi on LinkedIn.
Meg Desko, Lead Software Engineer on the Pricing Team
Background: My undergraduate degrees are in Chemistry and German, and I earned my Ph.D. in Bioorganic Chemistry. I taught organic chemistry at Cal State East Bay and at UC Berkeley Extension, and taught science at the Asian University for Women the first year it was open.
I got into tech accidentally; a friend hired me as a temporary office manager while I was looking for a science job. That made me start looking for roles that combined science and tech. A small company that does clinical research data management called QuesGen hired me as a Project Manager, and they taught me how to code. I’ve been in tech since then.
I’ve been at BigCommerce for eight-and-a-half years. I started as a Software Engineer II and now am a Lead Software Engineer.
Related Video: Get to Know Meg Even More
Fun fact: I love to read. In fact, I read around 100 books in 2022!
Role in this project: I hacked on the API. We all hacked on the scheduling.
Connect with Meg on LinkedIn.
The Time Turners' Project
Just like the Bertie Bott’s Bit Bandits, this group kept the team vibe going by answering all of these questions together.
How did you come up with your team name?
We wanted something that goes with the theme of the Hackathon and was related to time, because of our team’s project.
What is the name of your project?
Price List Portkey
Please describe your project.
We added the ability to schedule price lists to change prices on a merchant’s storefront and cart. Merchants can pre-populate a price list with prices of their choosing, and then add a scheduled price list assignment, which will be active during a certain period of time.
What inspired you to choose this project?
We've always liked the idea of being able to automatically schedule sales, especially based upon conversations with merchants who would want to update entire categories or rely upon customer group discounts creatively who want to streamline the process of putting things on sale. We also had recent requests come in to support massive concurrent updates of prices across the catalog that could be simplified by pre-populating a price list in advance and making a single API call instead. Being able to schedule this to activate automatically simplifies it for merchants — no setting alarms on sale day or relying on just-in-time updates of thousands of price records.
Which pain points does your project solve?
It saves the time and effort for merchants who need to enable/disable price list assignments at a preset time. This is especially beneficial around sales periods and holiday seasons.
Open Roles: Explore Your Next Engineering Opportunity
Which challenges did you face while you were developing your project?
Our developer environments don’t like when we make changes to more than one service at a time, and we needed to make changes to two services.
We also ran up against adding new elements to the Price Lists UI while trying to avoid breaking the state.
How did you overcome these challenges?
During a window where all of the development services were running, we pre-recorded a video just in case it crashed before the live demo. 😀
What’s the one thing you’d change about this project?
The scheduler — we used Akka scheduler because we could implement it without much effort, but it “forgets” what it was doing if a server reboots. We will use something more robust when we build the tool for production usage.
What are the next steps for this project?
The next step is that we’re partnering with our Product Manager to work scheduled price lists into our roadmap, and not just try to hack on it for another week (The Weiss-ly Done Award allows us to work on our project for one extra week). We think it could be useful for merchants who want to change prices all at once or run a sale.
What advice would you give to an engineer who is about to participate in a Hackathon?
Don't worry about making code pretty. Brute force!
Also, try to keep other things off your plate during the Hackathon.