Engineering Manager (IoT)
Engineering Manager (IoT)
Toronto, Ontario, Canada †-†Permanent
We are seeking an Engineering Manager to lead and inspire an engineering team expected to build cohesion between software and facility hardware. You will help the team 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 the team 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 teamí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.
- Own the people, process, and technology of one team.
- Builds and maintains Psychological Safety within the team and beyond.
- Responsible for building and growing a top-performing team, including the hiring/firing, training, and performance management of the humans on the team.
- Mentor and grow the capabilities of the team(s).
- Drive results by establishing motivational goals and providing constructive feedback to team members.
- Assist team 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 team capabilities beyond the individuals.
- Put in place development best practices to ensure the team produces high-quality, well-written, and tested code.
- Measure metrics like velocity and determine ways to shorten the SDLC by uncovering the teamís 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 team. This includes managing the rotating on-call incident escalation and response processes for the team.
- Secure and safeguard data to preserve its integrity, reliability, and availability and ensure appropriate access levels are maintained.
- Provides observability into the team's work. Both terms of technology, SDLC, and humans.
- Understand and manage the financial costs of the products and solutions the team 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 team.
- Collaborate on roadmaps with Product Managers, other Engineering Managers, and Technical Leads (this is a responsibility not a role) to ensure the team 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 team(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.
Must Have Skills:
- 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 Skills:
- 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.