National Grid
Principle Software Engineer
National Grid, Waltham, MA
About usEvery day, we deliver safe and secure energy to homes, communities, and businesses, connecting people to the energy they need for their lives. Our expertise and track record position us uniquely to shape the sustainable future of our industry as the pace of change accelerates. To succeed, we must anticipate customer needs, reduce energy delivery costs, and pioneer flexible energy systems. This requires delivering on our promises and seeking opportunities for growth.In IT and Digital, we collaborate closely with the diverse energy businesses within the National Grid group, revolutionizing operations through technology. Embracing Agile methodologies and Digital mindsets, we drive efficiency and bring new capabilities to internal and external customers as we lead the charge towards a carbon-free future.Our work is critical, as National Grid powers millions of homes and businesses in the UK and US, and the technology we employ is vital to this task. The successful applicant for this position will play a crucial role in our mission, supported by our multicultural, customer-centric global team, with opportunities for professional development.National Grid is hiring a Principal Software Engineer. This position offers remote flexibility, with the requirement that candidates reside in one of the following states: New York (NY), New Jersey (NJ), Massachusetts (MA), Connecticut (CT), Vermont (VT), Rhode Island (RI), Maine (ME), or New Hampshire (NH).Job PurposeThe purpose of the Principal Software Engineer is to provide leadership in the development and execution of comprehensive software development strategies, ensuring the delivery of high-quality products and services within data engineering, business analytics and data strategies. This role involves collaborating with architects to ensure designs align with end user requirements, implementing and maintaining software development frameworks, and mentoring junior team members in software development best practices. The engineer will closely collaborate with cross-functional teams to proactively identify and resolve issues early in the development cycle, prior to deploying releases to the live environment. Additionally, they will drive continuous improvement initiatives to optimize software development efficiency and effectiveness.Key Accountabilities• Architecting and Designing Robust Software Solutions: Collaborating with cross-functional teams to design and develop software solutions that meet business requirements and adhere to best practices and architectural principles. This will result in scalable, maintainable, and high-performing software systems.• Data Engineering: Collaborating with central data engineering teams to design and develop robust data pipelines, ensuring efficient and reliable data processing and integration.• Data Analytics: Working with data analysts and data scientists to understand data requirements and develop software solutions that enable effective data analysis and insights generation.• Contributing to the development and implementation of data strategies, including data governance, data quality, and data management practices, to ensure the availability, integrity, and security of data assets.• These additional responsibilities in data engineering, data analytics, and data strategies will further enhance the role of a Principal Software Engineer, enabling them to contribute to the end-to-end data lifecycle and drive data-driven decision-making within the organization.• Leading Technical Initiatives: Taking ownership of technical initiatives, driving their implementation, and ensuring successful delivery. This includes providing technical guidance, making critical design decisions, and coordinating with team members to achieve project goals.• Conducting Code Reviews and Ensuring Code Quality: Reviewing code written by team members to ensure adherence to coding standards, best practices, and quality guidelines. This will help maintain a high level of code quality, readability, and maintainability.• Performance Optimization and Scalability: Identifying performance bottlenecks, optimizing code, and implementing scalable solutions to enhance the performance and scalability of software applications. • Researching and Evaluating Emerging Technologies: Staying up-to-date with the latest industry trends and technologies, conducting research, and evaluating their potential application in software development. This will drive innovation and ensure the use of cutting-edge tools and techniques.• Providing Technical Leadership and Mentorship: Acting as a technical leader and mentor for the development team, providing guidance, sharing knowledge, and fostering a culture of continuous learning and improvement.• Collaborating with Product Management: Working closely with product management teams to understand product vision, define technical requirements, and ensure alignment between technical implementation and product goals.• Ensuring Security and Compliance: Incorporating security best practices throughout the software development lifecycle, conducting security reviews, and ensuring compliance with relevant regulations and standards. • Continuous Integration and Delivery: Implementing and maintaining continuous integration and delivery pipelines to enable frequent and automated software releases, ensuring a rapid and reliable deployment process.• Mentoring and Training Team Members: Providing guidance and support to junior testing engineers, promoting best practices in testing and quality assurance. This will result in increased team proficiency and overall improvement in testing standards.• Participating in Agile Ceremonies: Actively participating in agile ceremonies such as sprint planning, stand-up meetings, and retrospectives.Requirements • Bachelor's Degree: A solid educational foundation in software development principles and practices.• Minimum 7-10 years of experience in software development: Proven track record in developing and executing software solutions, with a strong focus on quality and reliability.• Proficiency in software development tools and frameworks• Expertise in tools such as Power Bi,Snowflake, Matilion Javascript, Service Now or similar, with a deep understanding of software development scripting.• Strong analytical and problem-solving skills: Ability to identify, analyze, and resolve complex software development issues, ensuring high-quality deliverables.• Excellent communication and teamwork abilities: Demonstrated experience in collaborating with cross-functional teams, mentoring junior staff, and effectively conveying technical information to non-technical stakeholders.Your Rewards Rewarding work and a collaborative, team-oriented culture are just the beginning. Review our digital benefit guide at ngbenefitslivebrighter.com for full details and descriptions. Our organization follows a hybrid work structure in our service territory (NY & MA and adjacent states) where employees can work remotely or from the office, as needed. Working from the office is encouraged when working on tasks that require a high degree of collaboration. We work with our employees to foster a flexible work schedule.More Information#LI-RK1SalaryNew England: $156k - $184k a yearDownstate NY: $167k - $197k a yearUpstate NY: $139k - $164k a yearThis position has a career path which provides for advancement opportunities within and across bands as you develop and evolve in the position; gaining experience, expertise and acquiring and applying technical skills. Candidates will be assessed and provided offers against the minimum qualifications of this role and their individual experience.National Grid is an equal opportunity employer that values a broad diversity of talent, knowledge, experience and expertise. We foster a culture of inclusion that drives employee engagement to deliver superior performance to the communities we serve. National Grid is proud to be an affirmative action employer. We encourage minorities, women, individuals with disabilities and protected veterans to join the National Grid team.