Principal Software Engineer
Listed on 2026-10-03
-
Software Development
Software Architect, Software Project Mgr/ Lead, Software Engineer, DevOps
The Software Engineering Manager is responsible for the people, capabilities, processes, and technical health of the software engineering organization. This role leads software engineers and software team leads, manages staffing and resources, strengthens software engineering practices, and helps ensure teams successfully deliver complex software products.
This is a deeply technical management position requiring a strong software engineering background. The Software Engineering Manager is expected to develop a thorough understanding of the architecture, design, and operation of the software systems under their organization. While not the primary technical lead on every project, this person must be able to engage deeply enough to understand how systems work, recognize technical risks and questionable design directions, challenge assumptions, and help software leads and engineers make sound engineering decisions.
This role requires a leader who combines technical depth with humility—someone who seeks to understand before directing, values the expertise of others, and views their role as enabling engineers and technical leads to do their best work.
Essential Duties and Responsibilities People and Organization- Lead, coach, and develop software team leads and software engineers.
- Manage hiring, performance, career development, promotions, and other personnel responsibilities.
- Build a culture of technical excellence, accountability, collaboration, and continuous improvement.
- Lead with humility, curiosity, and respect for the expertise of others; seek to understand problems and perspectives before drawing conclusions.
- Enable software leads and engineers to succeed by providing clarity, removing obstacles, securing needed resources, coaching through challenges, and giving teams appropriate ownership of their work.
- Allocate software resources across development efforts and maintain staffing and capacity plans.
- Estimate labor and skill requirements for upcoming projects and proposals.
- Manage contractors and supplemental engineering resources as needed.
- Develop and maintain a strong working knowledge of the architecture, design, interfaces, operation, and technical challenges of the organization’s major software systems.
- Engage deeply in technical discussions with curiosity and respect, asking questions and challenging assumptions while recognizing the expertise of the engineers closest to the problem.
- Develop a deep understanding of the organization’s software systems while preserving clear technical ownership within the teams.
- Promote effective software architectures, engineering practices, standards, tooling, automation, and reuse.
- Recognize architectural weaknesses, technical risks, unnecessary complexity, and other issues that may affect system reliability, maintainability, or future development.
- Challenge technical assumptions and decisions when appropriate while maintaining clear ownership and accountability within software teams.
- Lead a software engineering community of practice to share knowledge, align standards, and address cross-team technical challenges.
- Create an environment where engineers can openly raise concerns, acknowledge uncertainty, challenge decisions, and learn from mistakes without defensiveness or blame.
- Help teams make appropriate technical tradeoffs between schedule, cost, performance, risk, and maintainability.
- Ensure software teams have clear plans, realistic estimates, appropriate resources, and measurable outcomes.
- Maintain sufficient technical and execution visibility to identify problems early and understand whether development efforts are progressing in a sound direction.
- Hold software leads accountable for understanding the…
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).