An Android app to enhance the San Diego Zoo visitor experience by creating custom exhibit plans and optimizing routes for minimal walking distance.

Role

Software Developer

Timeline
March 2022

Technologies

  • Java
  • Android

Tools

  • Git
  • GitHub
  • Android Studio
  • JUnit
  • Espresso
  • Robolectric
  • Zenhub
  • Github Actions CI

Background

The official San Diego Zoo mobile app was reported as cumbersome and difficult to use, causing visitor frustration and a reliance on paper maps for navigation.

Solution

Zooseeker enhances visitor experience with superior navigation. Users can create a custom plan of exhibits, and the app calculates the shortest path to see them all, automatically re-routing if the plan changes.

Process

  • Followed an Agile methodology, creating user stories and BDD scenarios while managing the project with ZenHub and GitHub.
  • Applied key object-oriented design principles and the MVC pattern to ensure the code was modular, maintainable, and scalable.
  • Developed a robust testing suite using JUnit, Robolectric, and Espresso, automated with GitHub Actions for continuous integration.

Final Product

Zooseeker final product

Impact

  • Built a comprehensive, automated testing pipeline with unit, integration, and UI tests to ensure app quality.
  • Defined clear project scope and requirements by creating detailed user stories and BDD scenarios.
  • Effectively managed the project backlog and tracked progress using ZenHub and GitHub Issues to keep the team aligned.

Reflection

  • Gained invaluable experience in Agile software development, from planning iterations to collaborating effectively in a cross-functional team.
  • Developed strong project management skills and technical familiarity with continuous integration and Android testing frameworks.