Director of Software Engineering
HagertyAbout the role
Say hello to Hagerty
Hagerty is a company built by drivers for drivers. We put our members at the center of everything we do and are dedicated to making it easier and more enjoyable for enthusiasts to drive and celebrate the machines they love. We’re proud to be the world’s largest insurer of collectible and enthusiast vehicles and are home to the Hagerty Drivers Club, the world’s largest car club. Our Marketplace business presents live and digital sales across the U.S. and Europe, we host a number of driving events and concours, and our award-winning automotive journalists produce the most popular car magazine globally, alongside internationally awarded videos. We’re committed to Never Stop Driving. Ready to get in the driver’s seat? Join us! ��
As the Director of Software Engineering in our Foundations Engineering group, you will lead teams that are responsible for services that sit at the foundation of nearly everything we do. They include the creation, use, and management of digital identities, generation, storage and management of documents, acquisition and processing of payments.
As a director of engineering, you will have a small set of managers reporting directly to you. It will be your job to grow them and their teams in both technical and interpersonal skills as well as helping them deliver their work. You will also be responsible for effectively communicating, to technical and non-technical individuals, what your team is working on and any needs the engineering team may have. You must be deeply technical (e.g., still comfortable writing and reviewing complicated code), have strong communication skills, and the ability to develop and execute a strategy.
What you’ll do
- Guide staff in delivering on the company’s long-term goals by:
- Working with your manager to develop a nuanced understanding of the company’s goals and use that to develop a long-term strategy and quarter-by-quarter roadmap for your group.
- Developing narratives that you, your managers, and engineers use to effectively communicate, understand, and keep salient the vision and strategy for your systems.
- Participating in discussions on the feasibility of new capabilities, the cost to implement them, and the possible implementation timelines given current priorities and staffing.
- Reviewing the design of capabilities, in conjunction with the architecture team, to ensure it is ready for your teams to work on and support your managers in explaining, breaking down, estimating, and delivering the work.
- Influence and support the maturation of engineers and engineering practices by:
- Participating in the creation and education of standards, practices, and idioms as well as reviewing the implementations of these things within your teams. This will require the ability to both write example code and review others’ code.
- Helping to define and educate on what “quality” means for services throughout their lifecycle. This includes things like auditability, business continuity, deployment practices, documentation, maintainability, performance monitoring, testing regimes, security, and risk mitigation.
- Developing, with the help of our legal and security offices, an understanding of the various auditing, compliance, regulatory, and security regimes (e.g., SOC, SOX, ISO27001/2) we must deal with and educating staff on their roles in those processes.
- Educating engineering managers on the art of identifying and discussing the tradeoffs between various business interests, technical concerns, financial requirements, and more.
- Develop a healthy and dynamic team that values and participates in the growth of individuals, the team, and the company by:
- Developing practices for recruiting and hiring staff that bring in diverse thoughts and support their development of skills through deliberate practice, self-directed learning, and mentorship. This includes providing timely, candid, and respectful feedback on accomplishments and misses.
- Coaching engineering managers on the differences between, and techniques for, managing individual contributors, peers, and superiors.
- Coaching staff on core software development concepts, and appropriate application thereof, such as critical thinking, encapsulation, design patterns, and breaking/non-breaking API changes.
- Developing qualitative and quantitative measures of team health and capacity used by managers to track, report on, and respond to their teams. Coach managers on how to use these measures to effectively manage team workloads, develop team members, and identify staffing needs.
- Facilitate the collaboration within your teams and betwe
Apply for this role
Generate a tailored application kit with a matched cover letter, interview prep, and CV highlights — in under 60 seconds.
Apply Now →Generate Application KitFree account required — sign up in 30s