Box Tops for Education

The API and services that power the Box Tops for Education mobile app and website.
View Box Tops for Education.

Task

  • Enable app features via API development
  • Refactor legacy code and processes
  • Stand up infrastructure to support app services

Tech

  • .NET
  • SQL
  • Postman

As a developer on the Box Tops team, I split my time between a variety of tasks. They can be summarized as building new functionality and improving existing code and systems. Building new features has encompassed small changes like building queries to retrieve user earnings data, making calculations, and then returning it as a response to an API GET call. To more advanced projects that involve integrating with 3rd party API’s, standing up database tables and queries, and writing the backend code to process the API requests. I make sure to focus on testing and performance. Testing involves creating unit tests, integration tests using Postman, and then end to end testing using a QA environment.

A favorite project of mine was building the Unlock Brighter Futures campaign. This campaign was launched nationally as an initiative to reward new and existing Box Tops for Education users and their schools. At a high level, the campaign would allow app users to scan a QR code, or enter a code found on General Mill’s products for a chance to win a prize. Eligible products would be on shelves in major retailers for a 6 month period. Sweepstakes campaigns of this magnitude involve many parties working together. As the developer building the backend of the API to power the campaign, I worked closely with internal and external teams to coordinate implementation and testing of the combined systems. My focus on communication and attention to detail were pivotal in the success of this campaign. I was proud of the end result and the teamwork it took to get there.

Other projects of mine on the Box Tops team involved refactoring and cleaning up existing code. I have always enjoyed the process of improving code, so these projects were a highlight for me. Due to lack of tests in legacy code, I would often need to write characterization tests to verify that my refactor would not impact the production API. The refactors included updating code libraries, reworking architectures, making code more readable and performant, and writing tests.

My time working on the Box Tops for Education platform exposed me to a lot of new skills, tools, and technologies. It greatly increased my experience as a full-stack developer.

Homepage of Box Tops for Education website