Listing details
- Last verified Oct 29
About the job
SpotHero is more than a parking app, we’re reshaping how cities move. As urban transportation evolves, we’re leading the way with tech that makes parking seamless for millions every day. We’re looking for engineers who thrive on building complex, high-availability systems that connect software with real-world infrastructure.
Whether you’re into distributed systems, data science, or reverse engineering, there’s space for your curiosity and craft here. Join us to create products that make parking effortless, so people can eliminate parking stress and focus on where they’re going. What the Team is Saying "I've worked for many companies in the past, but SpotHero has definitely been the best in terms of how people are valued, respected, and interacted with.
I'm certainly privileged to work with such talented, devoted, and selfless people that are doing their best to make people's lives easier on a daily basis." Mo, *Software Engineer* “SpotHero fosters an environment of psychological safety and embraces curiosity. For the last six years, I’ve learned so much and grown professionally because I’ve been given a chance to feel empowered to try new things, not be afraid to fail and learn from my mistakes.” Robert, *Engineering Manager* "SpotHero is the place to come if you're in search of a new and interesting problem set. There are opportunities to engage at all levels, technical and otherwise, to help make our product and organization the best they can be.
I always appreciate the transparency from leadership on all of our initiatives and their reliance on the engineers on the ground for feedback." Noah, *Software Engineer* How Does Engineering Structure Itself The Engineering Department is broken up into Leagues. Within each League, there are multiple Squads with a team of diverse humans and engineers. Each League is led by a Director of Engineering.
Our Tech Stack Drivers League The Drivers League at SpotHero is responsible for all aspects of the driver’s experience. This league is responsible for building Heroic experiences on both the web (desktop and mobile) and native mobile apps (Android & iOS). We don’t stop there, we also strive to create a painless experience while parking at garages.
This League cares about quality and SpotHero’s value of *#GiveDriversTheRightOfWay*, which means to us that we take the Hero in our name seriously, and we go the extra mile to make sure our drivers have an experience we’re proud of. Our Front End Stack is: Frontend is a React Single Page App (SPA) that runs on Node.JS and a statically generated Next.JS App. We build in React/Redux, Sass, Jest/React Testing Library/Cypress, and Webpack.
We maintain a private npm repository with shareable UI components, utility functions, Babel/ESLint/Prettier configurations, and custom tasks. Our Android Stack is: Entirely built in Kotlin, using a MVI architecture. We use Retrofit and OkHTTP for network connections to our backend systems and utilize ObjectBox for data persistence.
We currently use Dagger for dependency injection, but actively looking into updating to Hilt or Koin in the near future. We are always looking to adopt and change our codebase to be up-to-date with the latest industry standards and look to our engineers to lead changes within our tech stack and codebases. Our iOS Stack is: Swift using MVC architecture, CoreData for Local Storage, XCUI for UI Testing, XCTest for Unit testing, SPM for Package Management, Fastlane for app automation and building scripts, Bitrise for CI/CD, and Sentry for crash reporting.
For more info, see iOS Overview. Our Back End Stack is: Monolith using Django/Python/PostgreSQL. We are moving our Monolith to a Modular Monolith, using Domain Driven Design.
We also use Docker and deploy our apps via Kubernetes. We use Kafka for asynchronous-, and gRPC for synchronous service-to-service communication. Operator League The Operator League is the connected backend Kotlin/JVM ecosystem that enables drivers to experience seamless entry into each parking spot!
We are the teams that make this two-sided marketplace come to life! The life and blood of SpotHero are our Integrations Squads who ensure data flows between us and our Parking partners. We provide best-in-class reporting, visual analysis, and management tools for owners to make their parking spot available on our platform and services that process secure and seamless payments.
We know which bits and bytes to send to garages to make it easy for you to park. This League is adaptive and resourceful and we *#DontGetStuckinTraffic*, which means we love solving gnarly problems. Our Back End Stack is: Mostly Kotlin/JVM but we also work with Monolith using Django/Python/PostgreSQL.
We are supporting the moving of our Monolith to a Modular Monolith, using Domain Driven Design. When relevant we extract specific domains to Services currently using Kotlin. We also use Docker and deploy our apps via Kubernetes.
We use Kafka for asynchronous-, and gRPC for synchronous service-to-service communication. Our Integrations are on .NET Core, moving to Kotlin. Engineering Enablement League The focus of this league is to support and raise the quality of the work of all engineers in our Leagues and Squads and fellow SpotHero employees across all departments.
Whether it be scalability, tooling, automation, or security, the Engineering Enablement League (EEL) is focused on making it easier for other engineers to add functionally to their platforms. EEL also owns our Search functionality and provides our SpotHero API to our partners. Our Back End Stack is: Monolith using Django/Python/PostgreSQL.
We are moving our Monolith to a Modular Monolith, using Domain Driven Design. When relevant, we extract specific domains (e.g. Search) to Services currently using JVM/Kotlin and Go.
Kafka fulfills our asynchronous communication needs-, and gRPC for synchronous service-to-service co