EnerNOC, a leading provider of demand response (DR) and energy management software (EMS), has an immediate need for a Software Engineering Manager to join our world-class Engineering organization. The Software Engineering Manager reports to the Sr. Software Engineering Manager – Platform in a hands-on role leading a highly skilled technical team in the development and delivery of a scalable, secure platform.
The Software Engineering Manager will lead a team leveraging best-in-class, cutting-edge technologies to deliver critical capabilities management and querying of our Customer Models as well as Identity and Access Management, and application and API security. These components provide services to all applications globally and represent the core of our architecture.
Work with a Product Owner/Business Analyst to ensure that requirements are compiled from all customers and defined in a timely manner.
Lead and drive execution of the components
Development execution, assignments and work breakdown/tracking
Establish work estimates, delivery schedule and timelines and communicate to the proper stakeholders
Identify and appropriately address issues
Actively participate in architecture and design activities
Lead non-functional requirements assessment, definition, prioritization and adherence to best practices/SLAs
Drive proactive performance engineering work
Drive the efficiency of the team through tools, process and communication refinements
Contribute to technical discussion, be a subject matter expert, and have strategic influence
Communicate clearly with Product Management, technical leads and business management
Performance reviews for a team of 3-5 engineers
Salary adjustments (bonus, raises, etc)
Assess the needs of the team over time
Coordinate job postings, screen resumes, interview candidates.
Engage with contracting/consulting firm for staff augmentation and outsourcing opportunities
Experience and familiarity with Identity and Access Management concepts, tools and best practices
Experience with various data storage tools and approaches, including SQL, no-SQL and graph databases
Experience with AWS, Google Cloud, or Azure Cloud computing frameworks, infrastructure, and application environments
Exceptional analytic and problem-solving skills
Demonstrated ability to work across a broad range of technologies to deliver complex solutions
Knowledge, Skills and Abilities
Excellent problem solving skills and analytical skills
Ability to effectively communicate (oral & written) with technical and non-technical stakeholders across all levels of the organization
Ability to adapt quickly to a fast-paced development environment.
Ability to lead more junior engineers
BA/BS in Computer Science or equivalent work experience
5+ years of software engineering work experience, including hands-on technical management
5+ years coding experience in object oriented programming languages (Java, Scala, C#, etc)
2+ years’ experience with a SaaS platform
Demonstrated ability to recruit and manage technical teams
Strong oral and written communication skills
Experience with Agile and Scrum methodologies
Experience with contracting and outsourcing
A demonstrated desire to adopt and learn new technologies and processes
Proactive management approach