Skip to Content
All Projects

Google Maps Reverse Geocoding CLI

 · Part of my work at DJP

Abstract:  Developed a sophisticated command-line tool to reverse geocode latitude/longitude coordinates into full addresses using the Google Maps API.

Tech: #PHP#Symfony#Go#Docker#PostgreSQL#Redis#GCP

The Challenge

During the COVID-19 pandemic, there was a business need to monitor employee locations for safety and logistical purposes. The raw data consisted of a large volume of latitude and longitude coordinates. Manually converting these coordinates into meaningful addresses was not feasible. An efficient, automated solution was required.

The Solution

I engineered a powerful Command-Line Interface (CLI) tool to automate the process of reverse geocoding. The tool was designed to be robust, efficient, and easily deployable, leveraging a modern tech stack to handle the task.

Architecture & Technology

  • Symfony Framework: The core CLI application was built on the Symfony framework, providing a solid structure for commands, dependency injection, and configuration management.
  • Google Maps API: The tool integrated directly with the Google Maps Geocoding API to perform the reverse geocoding lookups.
  • Performance: A component of the tool was written in Go to handle high-performance processing tasks.
  • Containerized: The entire application was containerized using Docker, making it completely portable and easy to run in any environment without dependency conflicts.
  • Data Persistence: The tool used a PostgreSQL database for storing and managing the coordinate and address data, and Redis for caching to reduce API calls and improve performance.

This project was a prime example of building a modern, containerized, and polyglot application to solve a specific and critical business problem.