Engineering Manager, IoT at SpotHero
SpotHero is seeking an Engineering Manager, IoT to lead and inspire an engineering squad expected to build cohesion between software and facility hardware. You will help the squad build products, not just code, own all technology solutions and ensure high-quality code is produced through ensuring adherence to software engineering best practices. You will ensure squad scales efficiently and effectively executes against the product roadmap. You provide technical and professional growth for each direct report, have the ability to be conversant in the squad’s code-bases and are able to help out in a pinch (fix bugs, help out during an outage, and be in the on-call rotation). We want you to drive innovation at process and project levels, defining new processes and consistently improving existing processes.
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 in advance, on-the-go or through their connected cars, 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.
What will you do:
- Own the people, process, and technology of one squad.
- Builds and maintains Psychological Safety within the team and beyond.
- Responsible for building and growing a top-performing squad, including the hiring/firing, training, and performance management of the humans on the squad.
- Mentor and grow the capabilities of the squad(s)
- Drive results by establishing motivational goals and providing constructive feedback to team members.
- Assist squad in navigating relationships with Stakeholders e.g. Product, Design, Supply, etc.
- Develop training plans for continuous development of the team's engineering skills and product knowledge.
- Ensuring team members grow in technical areas that are of interest to them and/or are less experienced in.
- Actively think about how to evolve the squad capabilities beyond the individuals.
- Put in place development best practices to ensure the squad produces high-quality, well-written, and tested code.
- Measure metrics like velocity and determine ways to shorten the SDLC by uncovering the squads’ blockers and helping to remove them.
- Lead reviews of architecture design.
- Know and document the strengths and weaknesses of Products and technical stack
- Create a healthy balance between features and reduction of technical debt.
- Understand, own, and maintain all technology solutions for this squad. This includes managing the rotating on-call incident escalation and response processes for the squad.
- Secure and safeguard data to preserve its integrity, reliability, and availability and ensure appropriate access levels are maintained.
- Provides observability into the Squad’s work. Both terms of technology, SDLC, and humans.
- Understand and manage the financial costs of the products and solutions the squad builds.
- Understand the performance of the tech stacks you are responsible for.
- Have a strong Quality Plan (how do we test, how do we write better code, what are our critical paths, runbooks, etc...) for the squad.
- Collaborate on roadmaps with Product Managers, other Engineering Managers, and Technical Leads (this is a responsibility not a role) to ensure the Squad has clear direction and priorities and is meeting product requirements.
- Present a balance of having a technical perspective along with the leadership responsibilities.
- Be conversant in the squad(s)’s code-bases with the ability to help out in a pinch (fix bugs, help out during an outage, and be in the on-call rotation).
- Ensures the administrative tasks are done (e.g. Cap Dev).
- Continue your own growth in usage of technology and working with Humans.
- Support the improvement of SDLC, Career Packages, Domain Driven Design, Onboarding, Quality Plans and other projects across Engineering.
- Be an industry thought leader, participating in public speaking events and meetups to showcase SpotHero as a leader in technology.
- Contribute to off the shelf IOT hardware selection.
The following experience is relevant to us:
- Bachelor’s degree in computer science with 7+ years experience as an engineer using Python, Java, C, or C++ on multiple projects on complex distributed polyglot systems.
- AWS IOT Core, Google Cloud IOT Core, or Particle experience.
- Proven ability to understand and vocalize opinions about architecture.
- Familiar with Object Oriented Design, Domain Driven Design, Event Driven services.
- 4+ years experience of engineering management experience leading a team of 4+ people working on a distributed system in Java, Kotlin, Python.
- Demonstrable experience mentoring and coaching reports to their desired career goals.
- Demonstrable experience with small teams that move fast - all members are expected to be able to achieve maximum results with minimal direction.
- Deeply familiar with MQTT, CoAP, XMPP, or other messaging protocols.
- Understand the definitions of and how to use events, states, and triggers.
- Understanding of IoT Edge Deployment/Maintenance Strategies.
- Know the difference between IC2, SPI, Hardware Serial, Software Serial etc.
- API security mindset.
- Hardware security mindset.
Nice to have
- Experience and/or familiarity with garage facilities to best recommend hardware that will integrate with current physical and environmental constraints.
- Experience with Swift and Java/Kotlin.
- Knowledge of IoT Linux and ESP32 platforms.
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. We also make heavy use of Dagger, RxJava, Espresso (testing). Network stack uses Retrofit.
- Our iOS Stack is: Swift using MVC architecture, CoreData for Data, XCUI for UI Testing, XCTest for Unit testing, SPM for Package Management, Fastlane for app automation and build scripts, Bitrise for CI, and Sentry and Firebase Crashlytics for crash reporting.
- Our Back End Stack is: Monolith using Django/Python. We are starting to 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, 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 – We cover 90% of Medical Premiums, 50% of Dental & Vision Premiums, and offer company sponsored Life Insurance.
- Flexible PTO policy, generous parental leave, and great work/life balance – We value and support each individual team member.
- Fun perks like snacks, catered lunches, happy hours, wellness programs, and SpotHero swag.
- Annual parking stipend (duh – 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.
PLEASE NOTE: This position is ineligible for visa sponsorship. To be considered for this role, you must be legally authorized to work in the US and not require sponsorship for employment now or in the future.