Projects/ Best Buy Computing Sale Tracker

Problem & Scope

Best Buy tracks sales internally with their reporting software. Microsoft provides labor for the store and I saw that their associates can have a more realtime report on the performance of the stores if store associates track their sales directly instead of tallying them on an erasable card. I developed a web app using React, Express, and MongoDB that keeps track of products and services sold in individual sales made by employees in the computing department. It aims to simplify the tasks of the representatives that Microsoft sends to each Best Buy market in the country. I worked with the Microsoft representative that visits our store to add features that would benefit them and pilot the app's use in other stores within the market. The app's backend generates and emails a report to the representative every morning for the previous day with a breakdown of sales by employee and calculates key performance indicators. At its peak it was in use by three stores in Colorado, on track to becoming a standard procedure, but is now defunct with my departure from the company.

Core Features:
  • Installable progressive web app.
  • Track sales of Windows computers, Microsoft Office, XBOX, and Best Buy Geek Squad Protection or Total Tech Support plans.
  • Multiple stores and supports different time zones.
  • Automatic calculation and tracking of key performance indicators based on the ratios of the different kinds of units sold to each other.
  • End of day automatic reporting with Excel file generation that is then emailed to a set of admin emails (myself and the third-party Microsoft associates).
  • Simple PIN authentication to avoid scanning and use by customers and other unauthorized users.
This project was not compensated for by management and was done for entertainment and as an excercise of my skill.

Front End

ReactJS front end with tags and manifest file for it to function as an "installable" progressive web app for Android and Apple iOS devices. Mobile first design as the app is going to be used on the smartphones of the retail sales associates in the department and not the computers.

Screenshots
Screenshot of the sale tracker app

Back End

I chose to implement the backend in Node.js using the ExpressJS framework. Data is stored in a MongoDB database for its parity with the rest of the JavaScript stack.

An NGINX instance acts as a reverse proxy for the Node.js service. The application itself is hosted on a Linux VPS.

Email sending is handled by Mailgun using their Node.js API. Report XLSX files are attached to the email API payload as base64 data instead of a binary stream as it is more portable this way.

Recognition & Expansion

After being implemented it garnered the attention of the Microsoft representatives that visit my store. I worked with them to implement multi-store capability and email reporting. We rolled it out to two additional stores.

Present

After a loss of interest by the Microsoft vendors in August and my departure from Best Buy/Geek Squad in December of 2021 for my new position at NCH Software, use of the app dwindled and associates reverted to the paper tracking system.

Source Code

When the project/app was actively being used I had the source code private. Now that its use has concluded, I have made the GitHub repostiory public, available here: https://github.com/kzaremski/bbytoolbox.

Copyright © 2020-2025 Konstantin Zaremski — All rights reserved. Styles by Neumorphism UI Bootstrap.