Development Team Lead
About the role
The Development Team Lead leads a team of software engineers building and maintaining Xactimate Desktop, a large, mature C#/.NET and WPF application. Reporting to the Software Development Manager, the Team Lead spends most of their time setting direction, developing people, removing obstacles, and ensuring the team delivers high-quality software predictably. They remain hands-on for roughly a third of their time, which keeps their technical judgment sharp and lets them model the practices they expect of the team. A central part of this role is leading the team’s adoption of AI-assisted development. The Team Lead champions practical, everyday use of AI coding tools, builds the habits and guardrails that make those tools effective on a large legacy codebase, and measures their impact on productivity and quality. Success requires strong technical depth, clear communication, and the ability to bring a team along through change.
Responsibilities
- Lead, coach, and develop a team of software engineers through regular one-on-ones, clear expectations, and timely, actionable feedback.
- Set individual and team goals, track progress with meaningful measures, and address performance concerns early and directly.
- Hire engineers who raise the team’s capability by screening, interviewing, and making selection recommendations.
- Build a team culture of ownership, trust, and continuous learning.
- Lead the team’s adoption of AI-assisted development tools (e.g., GitHub Copilot, Claude Code, or similar), moving the team from occasional use to consistent, effective daily practice.
- Establish and refine AI-assisted workflows across the development lifecycle, including specification, design, implementation, code review, testing, and documentation.
- Apply AI tooling to the specific challenges of a large legacy codebase: understanding unfamiliar code, expanding test coverage, refactoring safely, and accelerating modernization.
- Define guardrails for responsible use, including review expectations for AI-generated changes, security and data-handling practices, and quality standards.
- Measure the impact of AI tooling on throughput, cycle time, and quality, and share results and lessons learned with other teams and leadership.
- Coach engineers individually on effective AI use and spread techniques that work across the team.
- Own code quality and adherence to department engineering standards for the team; review pull requests and ensure changes meet team standards.
- Partner with principal engineers on architecture and technical direction so the team’s designs align with the broader product architecture.
- Oversee technical planning so work is well understood, feasible, and appropriately sized before it begins.
- Contribute hands-on (roughly 30% of time) through coding, code review, prototyping, and pairing, modeling best practices in testing and documentation.
- Ensure the team meets its commitments and delivers high-quality software against agreed timelines and objectives.
- Plan and prioritize work collaboratively with Product Management, negotiating trade-offs among scope, quality, and schedule.
- Facilitate or participate in agile ceremonies (planning, stand-ups, reviews, retrospectives) and take part in the on-call rotation as required.
- Surface delivery risks early and communicate them clearly, along with options for addressing them.
- Partner with the Software Development Manager and cross-functional leaders in Product, QA, and UX to improve processes and outcomes.
- Coordinate cross-team engineering efforts, including shared architectural decisions, dependencies, and releases.
- Engage with customers and internal stakeholders to gather feedback, communicate progress, and apply root-cause analysis to improve products and processes.
- Present information clearly and credibly to both technical and non-technical audiences.
- Identify and implement improvements to engineering workflows and agile practices.
- Maintain accurate, current documentation of the team