An Android app to help people find their way around the San Diego Zoo by creating custom plans and finding the shortest paths between exhibits.

Role

Developer

Timeline
March 2022

Technologies

  • Java
  • Android

Tools

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

Background

I worked on Zooseeker to solve a common problem for zoo visitors: finding the best way to see all the animals without walking more than necessary. The goal was to build a tool that was easier to use than the official zoo app and more practical than a paper map. I worked with a team to create a navigation tool that actually helps you plan your day at the zoo.

Solution

The app lets you pick which animals you want to see and then calculates the shortest path between all of them. If you change your mind and add a new exhibit, the app updates the route automatically. I worked on the pathfinding code to make sure it always found a good route and helped build the interface so it was simple to select exhibits and follow the directions.

Process

We worked as a team to decide which features were most important, starting with basic navigation. I applied general programming patterns to keep the code organized and wrote a lot of tests to make sure the app was reliable. We used automated tools to run those tests every time we made a change. I spent time on the pathfinding logic and making sure the interface was easy to understand while you are walking around the zoo.

Final Product

Zooseeker final product

Impact

The project resulted in a functional tool that makes it much easier to explore the zoo. It successfully handles route planning and helps users save time and effort during their visit. It was a great way to see how structured development and testing can lead to a more reliable mobile app.

Reflection

Building this was a good lesson in how to work with others on a larger project. I improved my testing skills and learned how to use algorithms to solve a practical navigation problem. If I were to keep working on this, I would look for ways to make the route calculation even faster and add more details about the exhibits to the map.