Software Engineering Manager
Terabase Energy · Davis, California, United States · Posted Jun 26, 2026
Apply on company site Track it in JobSkout
About Terabase
At Terabase Energy, we believe that digitalization and automation will drive the next wave of innovation and cost reduction in large scale solar. To fully unlock the potential of this opportunity, Terabase is developing an interconnected software and construction automation platform. We work alongside project developers, owners, and engineering & construction firms to support the design, optimization, and construction of huge solar projects around the world. Our team is a blend of solar-industry veterans and newbies, thought-leaders, dreamers, software, electrical and mechanical engineers, coders, product managers, project managers, and sales and marketing professionals. We are based in Northern California, with several other offices in the United States and around the world.
Position Overview
Software Engineering Manager is a senior-level, “player-coach” engineering role that combines direct technical contribution with team leadership responsibilities within the Terafab product area. This role is responsible for guiding the day-to-day execution, coordination, and technical direction of a team of software engineers while remaining a strong individual contributor. The manager serves as the primary interface between the Terafab software engineering team and adjacent hardware-focused teams including Autonomy, IoT, and Controls, defining and maintaining clear cross-team technical interfaces. This role reports to the Sr. Director of Software Data IoT and Autonomy.
Key Responsibilities
Strategic Technical Leadership
Define and drive technical strategy and architecture for the Terafab’s manufacturing execution system (Fab)
Lead design and implementation of significant features, services, or architectural components within Fab
Drive technical decisions and architectural direction for construction automation orchestration workflows
Design and implement complex data models, APIs, and system integrations that balance current needs with future scalability
Define, establish, and maintain technical interfaces between Fab software and adjacent systems including Autonomy, IoT, and Controls/SCADA
Identify and lead efforts to address technical debt, refactoring, and system modernization within Fab
Establish and evolve coding patterns, best practices, and technical standards within the team
Evaluate and introduce new technologies, tools, or approaches that improve team productivity or product capabilities
Conduct thorough code reviews with a focus on architecture, maintainability, and knowledge transfer
Represent engineering in planning discussions with product and cross-functional stakeholders
Complex Problem Solving and Execution
Resolve complex technical challenges that span multiple systems or have ambiguous requirements, particularly at the boundaries between Fab and hardware-adjacent systems
Proactively identify systemic issues, performance bottlenecks, or architectural limitations and drive resolution
Lead investigations into production issues, root cause analysis, and implementation of long-term fixes
Balance technical perfection with business pragmatism, making strategic trade-offs that serve team and product goals
Contribute to technical planning, estimation, and risk assessment for major Fab initiatives
Serve as technical escalation point for production incidents requiring expert-level intervention
People Management and Team Coordination
Manage a small team of software engineers, including performance oversight, career development, and regular 1:1s
Own and facilitate the team's scrum process: sprint planning, backlog grooming, daily standups, retrospectives, and sprint reviews, with support from senior management
Coordinate task prioritization and delivery across the team, resolving blockers and managing dependencies
Serve as the primary point of coordination between the Fab engineering team and cross-functional partners including Autonomy, IoT, and Controls teams, with support from senior management on more strategic coordination and decisions
Translate product requirements and stakeholder needs into actionable technical work for the team
Mentor team members through code reviews, pairing sessions, and technical guidance
Raise the technical bar for the team through knowledge sharing and establishing engineering best practices
Assist the Sr. Director in engineering planning, resource estimation, and risk assessment for Fab initiatives
Contribute to engineering hiring, technical candidate assessment, and onboarding of new team members
Contribute positively to engineering culture, team process improvements, and cross-functional relationships