Share this job
Software Development Team Leader
Cornelius, North Carolina, United States
Apply for this job

Software Development Team Lead

Cornelius, North Carolina  |  On-site

About the Role

VectorVest is hiring a hands-on Software Development Team Lead for a small development team based in Cornelius, just north of Charlotte.

This is a player-coach role, not a pure management seat. You will lead the team day to day — planning, code review, mentoring, unblocking — and stay in the code roughly 30–50% of the week. Alongside that you will own how the team builds: delivery flow, test automation, CI/CD, and specifically how far we can push AI tooling into the development process itself. That last piece is a core expectation of the job rather than a bonus, and it is the reason we are being selective about who fills it.

This role is in-office in Cornelius, North Carolina. It is not remote and not hybrid-heavy.

The Team and the Environment

The team builds and maintains the backend services behind VectorVest's market data, portfolio and trading-system products, plus the desktop and web surfaces in front of them.

Stack. C# and .NET (including .NET 10), REST APIs with Swagger/OpenAPI contracts, SQL Server, Azure and Azure DevOps.

Scope. The estate is wide rather than deep — market data APIs, index calculation, alerting, portfolio and transaction services, user and subscription services, and third-party data integrations. Each service has its own repo, pipeline and version, and they deploy independently.

Cadence. Two-week sprints, tracked on a shared team board in Azure DevOps. Deploys on demand, roughly twice a week. Work is merged, deployed to a shared QA environment, and verified there before it goes to production.

Responsibilities

Lead the Team

  • Run the agile sprint process. Own grooming, sprint planning, daily standup, sprint close-out and retrospective, and hold the team to the cadence. Set the commitment, track what lands against it, and be straight about what did not.
  • Own the development board. Azure DevOps is our system of record and it only works if someone maintains it. Keep the board an accurate picture of reality: work items written well enough to build and test from, cards decomposed into real tasks, estimates on everything, states and columns moved as work actually progresses, and iterations kept clean.
  • Assign and balance work across the team, and make the call on sequencing when priorities collide.
  • Mentor the developers on the team and grow the bench — several are capable of more than they are currently asked for.
  • Conduct code reviews and set the standard for what gets merged. Because everything merges into a shared QA environment, review is the last cheap place to catch a problem.
  • Partner with product, the business and QA on scope, feasibility and trade-offs, and push back when a card is not ready to be worked. QA does not report into this role, so the dev-to-QA relationship is one you influence rather than direct.
  • Own hiring input, onboarding and performance feedback for the team.

Stay Hands-On

  • Write and ship production code roughly 30–50% of the week — enough to hold real credibility with the team and real knowledge of the codebase.
  • Take the hardest or riskiest work personally when that is the right call.
  • Own architecture and design decisions across the services the team maintains: API contracts, backward compatibility, data and schema changes, migration and rollback paths.
  • Be the escalation point for production issues in the team's services.

Own Delivery and Quality

  • Define the metrics that tell us whether this team is effective and efficient. Working out what to measure is the hard part, and it belongs to this role. We need a defined set of signals covering both halves — effectiveness, meaning we are delivering the right things and they hold up once shipped, and efficiency, meaning we are delivering them without waste or delay. Candidates include throughput and velocity, cycle and lead time, where work sits and for how long, the dev-to-QA handoff, carry-over between sprints, estimate accuracy, defect and rework rates, escaped defects, and the measured impact of the AI tooling you introduce. That set is yours to propose, defend and revise — not a list to inherit.
  • Instrument them in Azure Boards and report them. Build the queries and dashboards that produce these numbers reliably, bring them to the VP of Product Development on a regular cadence, and be straight about them when they are unflattering.
  • Act on what they show. Metrics nobody acts on are overhead. The point is to find where work is actually getting stuck and fix it, then prove the fix worked.
  • Raise the floor on testing: automated unit, integration and regression coverage, with test plans and coverage that are actually linked to the work they verify.
  • Improve CI/CD across the services — build, deploy, configuration management, environment parity and release safety.
  • Reduce key-person risk across the services the team owns.
  • Make sure what ships is verified in production, not just merged.

Drive AI-Enabled Development

  • Set the team's standard for how AI coding tools are used — which tools, for what work, and with what review expectations. Move this from individual preference to a team practice.
  • Build and maintain the repo-level context and instruction files that make AI output match our standards, conventions and architecture instead of generic boilerplate.
  • Wire AI into the pipeline where it earns its place: automated code review, test generation, PR analysis and summarization, documentation.
  • Connect AI tooling to our internal systems — Azure DevOps in particular — so routine work-item, planning and reporting tasks stop consuming engineer time.
  • Set the guardrails: what AI may and may not touch, how generated code gets reviewed, and how we handle security, customer data and licensing.
  • Coach the team through adoption, including the engineers who are skeptical and the ones who over-trust the output.
  • Measure it. Report on whether AI adoption actually moved throughput, defect rates or cycle time — and be willing to say when something did not work.

Requirements

Required

  • 10+ years of professional software engineering experience.
  • 3+ years leading a development team as a hands-on lead, tech lead or engineering manager — including assigning work, reviewing code and developing people.
  • Deep C#/.NET backend experience, including REST API design, versioning and backward compatibility.
  • Strong SQL Server: schema design, query performance, migrations and rollback.
  • Production experience on Azure, and hands-on ownership of Azure DevOps or a directly comparable toolchain — Git, boards, pipelines and test plans. You will be the one administering the board, not filing tickets on it.
  • Demonstrated ownership of CI/CD and automated testing — built or substantially rebuilt it, not just worked inside someone else's.
  • Proven experience running an agile process day to day — grooming, planning, standup, close-out and retrospective — including enforcing estimation and work-item quality standards when the team would rather skip them.
  • Demonstrated ability to define the right engineering metrics, not merely report ones handed to you. You have decided what to measure for a team, defended the choice, built the reporting yourself, and changed how the team worked based on what it showed.
  • Real, recent, team-level experience leading the adoption of AI development tools (Claude Code, GitHub Copilot, Cursor, Codex or equivalent) in a production codebase. We want to hear about specific workflows you built for a team, what they replaced, what went wrong, and what changed as a result. Personal use of these tools is table stakes and does not meet this bar.
  • Able to work on-site in our Cornelius office daily. Candidates should be comfortable with the commute from wherever they live in the Charlotte metro.

Strongly Preferred

  • Experience with agentic and automated development workflows beyond code completion — AI in code review, automated test generation, AI-assisted refactoring, custom agents or tooling integrations (MCP or similar).
  • Experience in a continuous-deployment environment where services deploy independently and consumers are on their own schedule.
  • Experience maturing a team's process from informal to disciplined without killing morale — definition of ready, estimation, defect handling, release quality.
  • Financial services, market data, trading or fintech domain background.

Nice to Have

  • Familiarity with market data providers and financial data feeds.
  • Desktop application experience alongside web and service work.
  • Observability and production monitoring practice (Datadog or similar).
  • Experience retiring or migrating legacy integrations.

What We Are Not Requiring

  • Machine learning or AI/ML model development. This is not an AI engineering role. We want someone who uses AI to build software faster and better, not someone who builds AI systems.
  • A specific degree. Track record is what we are assessing.

Logistics

Location. Cornelius, North Carolina — Lake Norman area, roughly 20 miles north of uptown Charlotte. On-site. Please do not submit candidates who need remote or heavily hybrid arrangements — it is a firm requirement, not a preference we will negotiate late in the process.

Team. A small group of developers. QA is a separate reporting line.

Reports to. VP of Product Development.



Apply for this job
Powered by