Lead Software Engineer

Crisis Prevention Institute — United States · Posted ~4 hours ago

Lead Full-time

Skills

software engineering team leadership software development

🔓 Log in to save this job, tailor your resume & track your apply process — 7 days free, no card needed.

Log in to add to target list

Summary ✨ AI‑Generated

A lead engineering role responsible for guiding software development, mentoring engineers, and delivering technology solutions that support important service-oriented operations.

Highlights

Leadership opportunity to build impactful software solutions while collaborating with teams focused on improving professional services.

Description

Our Story: Crisis Prevention Institute Inc. (CPI) is the worldwide leader in evidence-based de-escalation and crisis prevention training and dementia care services. Our programs teach professionals the skills to recognize, prevent, and respond to crises in the workplace. Since 1980, we’ve helped train more than 17 million people within service-oriented industries including education, health care, behavioral health, long-term care, human services, security, corporate, and retail. At CPI, we are dedicated to changing behaviors and reducing conflict for the Care, Welfare, Safety, and Security of everyone. We believe the power of empathy, meaningful connections, personal safety, and security are the antidotes to fear and anxiety. It’s a philosophy that is central to everything we do, and traces back to our beginning. As a member of the team, you can expect to: Make a difference through your work – You’ll be proud to tell your family and friends about what you doGain significant career experience only obtained within a fast-growing organization – Entry-level roles through executive leadershipFeel fulfilled and have fun – We work hard but make the time to build meaningful relationships and celebrate the wins The Role: The Lead Software Engineer is the technical lead of a Product Engineering squad on CPI's Integrated Training and Learning (ITL) platform, the cloud-native learning platform used by CPI's learners, Certified Instructors, and customer administrators worldwide. This is a hands-on, backend-focused role: the Lead spends the majority of their time designing and writing code in C#/.NET microservices built on CQRS and event-driven patterns in Azure, and is comfortable working across the full stack, including the React front end, when the squad's work requires it. As technical lead, the Lead Software Engineer owns the technical direction and delivery health of the squad: translating product outcomes into a sound technical approach, breaking work into small shippable increments, setting engineering standards, and ensuring the services the squad owns are reliable, observable, and easy to change. The Lead is a player-coach, not a manager: they raise the squad's technical bar through design reviews, code reviews, pairing, and mentorship, and they model the culture CPI is building in Product Engineering: curiosity, ownership, drive, experimentation, learning from failure, and relentless improvement. Technical Leadership & Delivery: Own the technical approach for the squad's roadmap: partner with the product owner to shape problems, evaluate options, and choose the simplest design that achieves the customer and business outcomeLead technical design for new features and services in the ITL platform: C#/.NET microservices, CQRS command/query handlers, event contracts on Azure Service Bus, Azure SQL data models, and React front-end integrationBreak epics into small, independently deployable increments; drive the squad toward frequent, low-risk production deployments using feature flags, trunk-based development, and automated testingRemain hands-on: write production code daily, take on the hardest or most ambiguous technical problems, and unblock the squad when it gets stuckProvide task breakdowns, identify dependencies and critical path, and give realistic effort estimates and risk assessments to the product owner and engineering managerDemonstrate the squad's work to business stakeholders and clearly connect technical work to customer and business impact Service Ownership & Operational Excellence: Own the health of the services the squad is responsible for: define SLOs, ensure meaningful alerting and dashboards exist, participate in and help run the on-call rotation, and lead the response to production incidentsLead blameless incident reviews for the squad; ensure follow-up actions are prioritized and completed so the same failure does not recurDrive the incremental decoupling of ITL domain data from upstream enterprise systems: for each feature, identify the data ITL should own, design the migration, and ensure it flows to the data warehouse for reportingChampion continuous improvement of the codebase: identify and pay down technical debt deliberately, improve build/test/deploy times, and reduce operational toil through automationEnsure secure coding practices, accessibility standards (WCAG 2.1 AA), and performance considerations are built into the squad's definition of done AI-First Engineering: Lead the squad's adoption of AI-assisted development tools (e.g., GitHub Copilot, Claude, Cursor): establish norms for using them well, including review and testing expectations for AI-generated code, and measure their impact on delivery speed and qualityUse AI tools daily in your own work for design exploration, code generation, test writing, refactoring, and debugging, and model responsible use for the squadPartner with the Principal Software Engineer on the Product Engineering AI strategy; pilot new tools and techniques on the squad and share results across teamsIdentify and champion opportunities to apply AI within the ITL product or internal tooling where it creates measurable value for learners, instructors, and customers Team Growth & Culture: Set and uphold engineering standards for the squad: code review expectations, testing strategy, documentation, and architectural consistency with the broader ITL platformMentor and coach engineers on the squad through pairing, design reviews, and regular feedback; help each engineer grow their technical skills and sense of ownershipCreate space for experimentation: sponsor time-boxed spikes and proofs of concept, insist on evidence in technical debates, and make it safe to try things that might not workModel learning from failure: own mistakes openly, turn them into lessons, guardrails, and runbooks, and lead retrospectives that produce real changeCollaborate with other squad leads, the Platform team, and the Principal Software Engineer to align on cross-cutting technical decisions and shared standards. Perform other position-related duties as assigned You Need to Have: Bachelor's degree in computer engineering, computer science, or a related field, or equivalent practical experienceSeven years or more of professional software engineering experience building and operating production web applications and distributed servicesTwo years or more of experience as a technical lead, tech lead, or senior engineer responsible for the technical direction and delivery of a teamFive years or more of hands-on experience with C# and .NET (ASP.NET Core, .NET 6+) designing and building backend services and APIsDeep experience with distributed, event-driven architectures: message brokers (Azure Service Bus or equivalent), idempotency, retries, sagas, and eventual consistencyExperience designing systems using CQRS, event sourcing, and/or domain-driven design, including defining bounded contexts and event contractsWorking experience with React and modern JavaScript/TypeScript sufficient to design, review, and contribute to front-end featuresExperience designing relational data models and tuning SQL performance (SQL Server / Azure SQL)Experience building and operating services in Azure (App Service, Functions, Service Bus, Azure SQL, Azure Monitor / Application Insights, Key Vault) or an equivalent cloud platformExperience establishing and improving CI/CD pipelines (Azure DevOps or GitHub Actions), automated test strategies, and continuous delivery practicesExperience leading incident response and blameless post-incident reviews for production systemsExperience mentoring engineers and leading technical design and code reviewsKnowledge of observability practices (structured logging, metrics, distributed tracing, SLOs) and security-based design patternsExperience using AI-assisted development tools daily and guiding others in their effective, responsible useYearly personal development demonstrated by successfully completing an accredited software engineering course, acquiring a software engineering-related certification, or presenting a completed learning project to the teamCuriosity: asks why before how, digs into unfamiliar code and systems, and seeks to understand the learner, instructor, and customer problem behind every requestOwnership: treats the services and features they touch as theirs to keep healthy, from design through production support, and does not wait to be assigned a problem before solving itDrive: a bias toward shipping working software in small, frequent increments and following through until the outcome is achieved, not just the ticket closedExperimentation: comfortable proposing and running small, time-boxed experiments (spikes, proofs of concept, A/B tests) and letting evidence, not opinion, settle technical debatesLearning from failure: participates openly in blameless retrospectives and incident reviews, shares mistakes as lessons, and turns them into guardrails, tests, or runbooksContinuous improvement: leaves every codebase, process, and document a little better than they found itAbility to lead a team technically without formal authority: earn trust, build consensus, and make timely decisions when consensus is not possibleAbility to balance short-term delivery with long-term platform health and to explain those trade-offs to product and business stakeholdersAbility to facilitate evaluation of technologies and achieve consensus on technical standards and solutions among a diverse group of engineersExcellent verbal and written communication; able to write clear design documents and give direct, constructive feedbackDemonstrated ability to attract, develop, and retain strong engineers\ We'd Love to See: Experience on a learning management system, EdTech, or other B2B SaaS product used by end users at scaleExperience decoupling a product platform from an ERP/CRM system of record such as Microsoft Dynamics 365Experience with infrastructure as code (Bicep, Terraform) and containerized workloadsExperience with web accessibility (WCAG 2.1 AA)Azure certifications (e.g., Azure Developer Associate, Azure Solutions Architect) Crisis Prevention Institute is an Equal Opportunity Employer that does not discriminate against any applicant or employee on the basis of age, race, color, ethnicity, national origin, citizenship, religion, creed, sex, sexual orientation, gender, gender identity, or expression (including against any individual that is transitioning, has transitioned, or is perceived to be transitioning), marital status or civil partnership/union status, physical or mental disability, medical condition, pregnancy, childbirth, genetic information, military and veteran status, or any other basis prohibited by applicable federal, state, or local law. The Company will consider for employment qualified applicants with criminal histories in a manner consistent with local and federal requirements. Our management team is dedicated to this policy with respect to recruitment, hiring, placement, promotion, transfer, training, compensation, benefits, employee activities, and general treatment during employment.