Manager of Software Engineering

Crucial Learning
yesterday

Role details

Contract type
Permanent contract
Employment type
Full-time (> 32 hours)
Working hours
Regular working hours
Languages
English
Experience level
Intermediate
Compensation
$ 198K

Job location

Remote

Tech stack

Java
Agile Methodologies
Artificial Intelligence
Amazon Web Services (AWS)
Application Services
Automation of Tests
Cloud Computing
Code Coverage
Code Generation
Software Quality
Code Review
Information Systems
Continuous Integration
Database Queries
Software Debugging
DevOps
Github
Gradle
Java Persistence API
Spring
JUnit
Maven
Scrum
Software Maintenance
Secure Coding
Software Engineering
GitHub Copilot
React
Delivery Pipeline
Prompt Engineering
Spring-boot
Technical Debt
Information Technology
Production Code
Non-relational Database
REST
Docker
Programming Languages
Microservices

Job description

The Manager of Software Engineering leads a small team responsible for developing, improving, and supporting technology solutions for Crucial Learning product platforms and related systems.

This is a hands-on, player-coach management role with formal responsibility for a team of 4-6 engineers. This role is accountable for team performance, coaching, career development, workload planning, hiring, prioritization, delivery commitments, and effective engineering practices.

Approximately half of the role will focus on people leadership and team management. The remaining time will involve technical leadership and direct engineering contribution, including writing production code, reviewing designs and code, troubleshooting difficult problems, and helping the team make sound architectural and implementation decisions.

This position represents a new layer of engineering management. Its initial priorities are to strengthen team maturity, accelerate responsible adoption of agentic engineering, improve product quality and reliability, and increase sustainable engineering velocity.

The role partners closely with the Sr. Director of Platform Engineering, Architecture & DevOps team members, product owners & leaders, technology leaders, and business stakeholders. Success requires balancing people leadership, technical execution, product priorities, quality, reliability, and business outcomes.

What You'll Do:

  • Manage, coach, and develop assigned software engineers at varying experience levels conducting regular one-on-one meetings, provide timely feedback, establishing performance expectations, completing performance reviews, and creating development plans for assigned employees.
  • Support recruiting, candidate evaluation, selection, onboarding, and retention of software engineering talent.
  • Lead the practical and responsible adoption of approved AI-assisted development tools across the engineering team.
  • Establish expectations for how AI-generated code and technical output are reviewed, tested, secured, documented, and validated before use.
  • Coach engineers on effective AI-assisted development techniques, including problem decomposition, prompt design, code generation, debugging, testing, documentation, and technical review.
  • Measure and evaluate the impact of AI-assisted development practices rather than relying solely on tool adoption or usage volume.
  • Ensure engineers remain accountable for the quality, security, reliability, and maintainability of AI-assisted work.
  • Explore practical uses of AI within company products and engineering workflows in partnership with product and technology leadership.
  • Develop individual engineers through coaching, mentoring, stretch assignments, technical guidance, and clearly defined growth expectations.
  • Build a healthy, accountable, and collaborative engineering culture where team members communicate openly, learn from one another, and own commitments and outcomes.
  • Exercise formal performance-management authority, including addressing performance concerns, recognizing strong performance, documenting expectations, and partnering with Human Resources when corrective action is appropriate.
  • Evaluate team capacity, skills, workload, and staffing needs and provide recommendations to the Sr. Director of Platform Engineering while establishing clear roles, responsibilities, decision rights, and working agreements across the team
  • Strengthen the team's engineering operating model, including planning, estimation, prioritization, documentation, code review, testing, release practices, retrospectives, and continuous improvement.
  • Establish clear expectations for work quality, accountability, communication, technical decision-making, and delivery predictability.
  • Partner with product owners and stakeholders to clarify requirements, sequence work, identify dependencies, manage tradeoffs, and align engineering capacity with product and business priorities.
  • Track engineering commitments, risks, dependencies, and delivery concerns and communicate them clearly to technology and product leadership.
  • Help the team improve sustainable delivery velocity without sacrificing quality, reliability, maintainability, or employee well-being.
  • Identify engineering workflows where AI can improve productivity, code quality, troubleshooting, documentation, test coverage, or delivery speed.
  • Remain actively involved in software development by writing, reviewing, testing, and maintaining production code.
  • Work across multiple programming languages and frameworks and help the team select technologies that align with company architecture, engineering standards, and business needs.
  • Review technical designs and code, provide constructive feedback, and ensure important changes receive appropriate peer review and validation.
  • Help engineers resolve complex technical problems, production issues, integration challenges, and architectural concerns.
  • Design and develop robust, maintainable, scalable software within existing business and product architectures.
  • Apply and reinforce secure coding, automated testing, continuous integration, deployment, observability, and application-development best practices.
  • Identify and address technical debt, reliability risks, recurring defects, performance concerns, and maintainability issues.
  • Participate in production troubleshooting, root cause analysis, remediation planning, and continuous improvement following incidents or service disruptions.
  • Promote an excellent end-user experience by improving functionality, usability, simplicity, performance, and reliability.
  • Perform other duties as assigned., * A variety of benefits. Programs include health benefits, life insurance, income protection and retirement savings plan with employer contributions to assist with your health & financial security today and in the years ahead.
  • Access to health benefits and wellness programs for employees and families.
  • The ability to work in a flexible work environment.
  • Professional development support as we want YOU to be successful in your career. Our team will work with you to establish the goals you are trying to achieve in your profession.

The Process:

The first step is to apply to the role. If your experience matches our needs, you will be reached out to by a member of the HR team to set up a call to learn more about you. From there, you can expect to meet with the hiring manager and some other members of the team. We like to connect over the phone, via Zoom and sometimes, in person (when applicable)!

Requirements

  • 7-10 years of experience developing, launching, and maintaining software products, services, or platforms.
  • 3-5 years of experience formally managing software engineers, including responsibility for performance reviews, coaching, feedback, development planning, and performance management.
  • Demonstrated success leading a small engineering team containing employees at mixed experience levels; contract resource management experience a plus.
  • Strong hands-on software engineering experience and the ability and willingness to continue writing production code.
  • Experience balancing people-management responsibilities with technical leadership and direct engineering contribution.
  • Demonstrated ability to improve engineering-team maturity, operating practices, accountability, collaboration, and delivery predictability.
  • Experience recruiting, interviewing, selecting, onboarding, coaching, and developing software engineers.
  • Experience setting performance expectations, addressing performance concerns, documenting feedback, and managing difficult personnel situations professionally and fairly.
  • Experience driving technical projects, prioritizing work, identifying dependencies, facilitating technical decisions, and leading cross-functional discussions.
  • Strong production experience with Java and modern Java application-development practices.
  • Experience with React, Spring, Spring Boot or Spring Microservices, Spring JPA, JUnit, REST APIs, and related technologies.
  • Production experience in more than one programming language and the ability to learn and evaluate new languages, frameworks, and technologies.
  • Hands-on experience using AI coding tools such as Codex, Claude, Claude Code, GitHub Copilot, or similar tools as part of a professional software-development workflow.
  • Demonstrated ability to lead team-level adoption of AI-assisted development while maintaining appropriate standards for testing, review, security, documentation, and quality.
  • Experience with source-control repositories and collaborative development practices; GitHub experience is preferred.
  • Experience with continuous integration, automated build technologies, software-delivery pipelines, and release practices.
  • Experience with Gradle or Maven.
  • Experience with Docker and container-based development practices is preferred.
  • Experience with cloud infrastructure and application services; AWS experience is preferred.
  • Experience with relational and non-relational database systems and writing SQL queries.
  • Strong understanding of Agile development practices, iterative product delivery, estimation, backlog management, and sprint planning.
  • Strong understanding of software quality, application reliability, secure development, automated testing, observability, and production support.
  • Outstanding troubleshooting, problem-solving, and technical decision-making skills.
  • Strong written and verbal communication skills, including the ability to explain technical issues, delivery risks, tradeoffs, and recommendations to technical and non-technical audiences.
  • Ability to collaborate effectively with product owners, technology leaders, business stakeholders, employees, and contractors.
  • Sound judgment in balancing employee development, technical quality, delivery velocity, reliability, business priorities, and organizational risk.
  • Ability to operate effectively as a hands-on manager in a lean engineering environment.
  • Strong organizational skills, follow-through, attention to detail, and the ability to manage competing priorities.
  • Bachelor's degree in Computer Science, Software Engineering, Information Systems, or a related field is preferred. Equivalent practical experience may also be considered.
  • Must be legally authorized to work in the United States without the need for employer sponsorship, now or at any time in the future.

Benefits & conditions

Pulled from the full job description Health insurance Retirement plan Life insurance, The anticipated base salary range for this position is $145,000 - $170,000 annually, with a target total cash compensation opportunity of $186,000- $198,000 through participation in the Company's variable incentive plan. Actual base salary and total cash compensation will depend on factors such as experience, skills, qualifications, location, and achievement under the Company's variable incentive plan.

Apply for this position