Staff Engineer, Backend (SpotHero IQ)
SpotHero is seeking a Backend Engineer to join its SpotHero IQ squad. Similar to hotel and airline online marketplaces, the prices in parking should automatically change based on demand based Machine Learning models. SpotHero IQ is our dynamic pricing platform, generating optimized parking rates based on historical and real-time data which helps to create the best prices for Drivers and maximize revenue for Operators.
You will have over ten years of engineering experience, worked for a few companies as a software engineer, and are on your way to becoming an Expert or a Polymath in Software Engineering in Python/Django or Java/Kotlin.
The SpotHero IQ squad interacts with a number of data consumers such as Data Science, Machine Learning, Data Engineering and our Business Analyst team to provide data platform solutions that meet their day-to-day needs and long-term vision.
This Engineer role is focused heavily on backend application development with a focus on preparation for our data models. API implementation, modeling, and running Machine Learning models in production. In addition to the above, this individual will be expected to instantiate, observe and maintain infrastructure, both AWS managed and open source solutions.
You will work with the Product Management team to ensure requirements are defined correctly. You will be an educator via pull-requests who can help peers understand better or different software patterns. Your greatest work will be through delivering high-quality software and products that make the SpotHero IQ pricing engine magical.
Who we are:
SpotHero is one of transportation's hottest tech companies! We’re rapidly growing with the mission of bringing the parking industry into the future through technology. Drivers across the nation use the SpotHero mobile app or website to reserve convenient, affordable parking on-the-go or in advance, and parking companies rely on us to help them reach new customers while optimizing their business. We connect the dots with cutting-edge technology, delivering value to both sides of this exciting, evolving marketplace.
SpotHero IQ is built on top of the industry’s largest and fastest-growing parking demand dataset by world-class data science and product development teams, SpotHero IQ is demand and occupancy-based dynamic pricing designed to bring parking into the 21st century.
What will you do:
- Be a key hands-on contributor to the design and implementation of our data platform solutions from the infrastructure layer up to the API.
- Model and architect our data in a way that will scale with the increasingly complex ways we’re analyzing it.
- Build robust data pipelines (both streaming and batch) for ingesting and transforming datasets to make sure data is where it needs to be, when it needs to be there.
- Productionalize machine learning pipelines
- Build frameworks and tools to help our software engineers, data analysts, and data scientists design and build their own data pipelines in a self-service manner.
- Performance testing and engineering to ensure that our systems always scale to meet our needs.
- Be a key member of the team focused on pure hands-on contribution to the implementation and operation of our data platform.
Your experience:
- You have at least 10 years of hands-on experience as an Engineer across multiple environments on complex distributed polyglot systems using Kotlin, Python and/or GoLang
- Experience working in distributed software architecture and designing microservices.
- Experience working with event driven systems using Kafka
- Strong SQL skills and data modeling experience.
- You can go up and down the stack from deep in the infrastructure layer all the way up to the client libraries.
- Deep understanding of object-oriented and/or functional programming patterns and paradigms.
- Passion for ensuring timeliness, availability and quality of our highest value data-sets that meets established SLOs.
- Ability to provide support for pieces of codebase owned and also understand the codebase with normal direction from peers and data engineers.
- Demonstrated experience with small teams that move fast
- Demonstrated experience measuring the impact of technical products across multiple domains through experimentation and statistical analysis.
- Strong ability to communicate on both business and technical subjects.
Nice to Haves:
- Kubernetes and/or Docker experience.
- Postgres, MySql, or other RDBMS experience.
- AWS, GCP and/or Azure experience.
- Redshift, Presto, or other MPP database experience.
- Cassandra, Elastic, Redis and/or Couchbase experience.
- Airflow, Luigi, or other ETL scheduling tool experience.
- Open source contributions to a few major projects.
Technology we use:
- Our Android Stack is: Kotlin and XML (standard for Android apps) using MVI architecture (still working on refactoring old views), our database layer is built in Realm. Bitrise for CI/CD. We also make heavy use of Dagger, RxJava, Espresso (testing). Network stack uses Retrofit.
- 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 build scripts, Bitrise for CI/CD, and Sentry for crash reporting.
- 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 to Services currently using Java, Kotlin and Go. We also use Docker, deploy our apps via Kubernetes. We use Kafka for asynchronous-, and gRPC for synchronous service-to-service communication. Our Integrations are on a .Net CORE, moving to Kotlin.
- Our Front End Stack is: Our Front End stack is 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 Data Stack is: Our Monolith Database is Postgres and Redis for caching. We also use Redshift as our data warehouse and S3 as our data lake. The data lake is queried using Presto. We use Airflow and Spark for ETL, as well as do some stream processing (Kafka Streams and Spark at the moment). Our Model pipeline uses scikit-learn, pandas. Our analysts utilize Looker as our Business Intelligence tool. And we use Quicksight for Dashboard on our external Data Products.
- Our Dev Tools Stack is: AWS+Kubernetes for hosting. Terraform + Helm Charts for IaaS/Deployment. ConcourseCI for CI/CD. Prometheus/Alertmanager/VictorOps for team alerting. We’re starting to work on multi-region available services.
What we are offering:
- Career game changer – A truly unique experience to work for a fast-growing startup in a role with unlimited potential for growth.
- Excellent benefits –
- Flexible PTO policy and great work/life balance – We value and support each individual team member.
- Annual parking stipend – we help people park!
- The opportunity to collaborate with fun, innovative, and passionate people in a casual, yet highly productive atmosphere.
A workplace recognized as the Best Consumer Web Company by Built in Chicago, Top Company Culture by Entrepreneur, a Top Workplace by Chicago Tribune, and one of Chicago’s Best Places to Work for Women Under 35 by Crain’s Chicago Business.
What we are offering:
- Career game changer – A truly unique experience to work for a fast-growing startup in a role with unlimited potential for growth.
- Excellent benefits –
- In the US we cover up to 95% of Medical Premiums, 50% of Dental & Vision Premiums, company-sponsored Life Insurance, 401K, and generous parental leave.
- In Canada, we offer Medical (prescription drug and paramedical coverage), Dental, Vision, Life Insurance, STD, and LTD.
- Flexible PTO policy and great work/life balance – We value and support each individual team member.
- Annual parking stipend – we help people park!
- The opportunity to collaborate with fun, innovative, and passionate people in a casual, yet highly productive atmosphere.
- A workplace recognized as the Best Consumer Web Company by Built in Chicago, Top Company Culture by Entrepreneur, a Top Workplace by Chicago Tribune, and one of Chicago’s Best Places to Work for Women Under 35 by Crain’s Chicago Business.
Steps to apply: Please include any GitHub account, LinkedIn profile, and any project that you’re particularly proud of. We love seeing work that others loved working on.
SpotHero is an equal opportunity employer. We know that a diverse workforce is the strongest workforce, and are committed to building and supporting an inclusive environment for all.