Staff Software Engineer

Full Time San Francisco CA Sunrun


Sunrun is the nation’s leading home solar, battery storage, and energy services company. Our mission is to confront our planet’s biggest challenge, climate change, by creating a planet run by the sun. This mission requires passion, determination and a diverse growing army of talented professionals.  Explore joining our mission by connecting with Sunrun's Talent Network or by submitting an application to this job today. 



Overview: Staff Software Engineer – Data Engineering We're looking for a top-tier Staff Software Engineer with a potential to be a technical lead to assist our team build massively scalable consumer systems for clean energy.   About Sunrun Sunrun is the #1 residential solar company in the country and our mission is to bring clean solar power service affordably to every house in America. We help people upgrade their home to solar energy without the big upfront costs.   About Sunrun Software Engineering We're hiring elite software engineering talent to help our infrastructure keep up with market growth rates. We are truly working to change the world by revolutionizing the way people use energy. We are committed to monthly training to continue learning and development throughout Technology.   Do you want to work on scalable consumer systems? Re-invent how consumers use energy? Have a measurable impact on one of humanity’s biggest challenges? Come join Sunrun! You'll work alongside hardworking engineers engaged in the design and development of a product that is changing the world. Responsibilities:

As a Staff Software Engineer, you’ll help lead technical direction for all data engineering solutions at Sunrun and will also own the way in redefining our systems to best in class experiences.


  • You will aid in the growth of the team by establishing the development and architectural standards in areas of technical excellence.
  • Work collaboratively with Product Management, DevOps, and other software developers to develop applications that can be easily tested and perform well under a variety of network conditions.
  • Champion consistency to best-practice development methodologies.
  • Design and code appropriate, scalable, and secure algorithms, data structures, and software components.
  • Lead design and code reviews.
  • Facilitate automated testing so all teams can innovate at a rapid pace.
  • Mentor and build skills across the team through effective standards setting, code reviews, and pairing.
  • Tune production applications to maximize efficiency.
  • Demonstrated technical leadership skills with ability to conduct code reviews and architect solutions.


Technical Skills Needed

  • 10+ years experience designing and coding enterprise level applications
  • Strong experience developing sophisticated enterprise applications with NodeJS (Javascript) and/or Java.
  • Experience with REST API architecture and development especially using Swagger or Apigee.
  • Solid understanding of Git including version control, branching, merging/rebasing, and pull requests.
  • Validated understanding of MVC and MVVM patterns, architectures, and frameworks.
  • Strong focus on automation including Continuous Integration / Deployment with writing unit and integration tests.
  • Experience with NodeJS development and build tooling (especially npm, yarn, mocha, chaijs, and eslint).
  • Experience with the Kotlin and/or Python languages.
  • Good security practices and experience writing code that handles customer data.
  • Impeccable communication and team skills with shared ownership of code and other work.
  • Willingness to work with and learn new technologies
  • Experience architecting solutions in GCP, specifically using: Cloud functions, Composer, Cloud pub/sub, Data flow and Stackdriver.
  • Familiarity with managed cloud services (e.g. GCP, AWS, Azure) and their associated offerings.
  • Familiarity with real-time data processing.

Bonus Technical Skills

  • Familiarity with distributed systems and federated authentication systems.
  • Familiarity with Docker and Serverless architectures like GCP Cloud Functions, AWS Lambda, GCP Datastore, DynamoDB, GCP Dataflow, ECS, S3, GCP Pubsub, SQS, CloudFormation, Terraform, and/or other similar cloud services.
  • Experience in machine learning (especially TensorFlow and XGBoost), deep learning, computer vision, and/or natural language processing.
  • Experience with Maven/Gradle build systems.
  • Experience with Groovy / Jenkins CICD pipelines.
  • Familiarity with team development tooling (especially with Jira and Github)
  • Understanding of BFF (Backend-for-Frontend) patterns.
  • Experience with development of self-healing, reliable and reactive systems.


  • BS/MS in Computer Science, Engineering or Math is preferred.






Solar Careers For All: Sunrun is proud to be an equal opportunity employer that does not tolerate discrimination or harassment of any kind. Our commitment to Diversity, Inclusion & Belonging drives our ability to build diverse teams and develop inclusive work environments. At Sunrun, we believe that empowering people and valuing their differences will help us create a planet run by the sun for everyone.   We are committed to equal employment opportunity without consideration of race, color, religion, ethnicity, citizenship, political activity or affiliation, marital status, age, national origin, ancestry, disability, veteran status, sexual orientation, gender identity, gender expression, sex or gender, or any other basis protected by law. We also consider qualified applicants with criminal histories, consistent with applicable federal, state and local law. If you have a disability or special need that requires accommodation, please let us know.

To apply for this job please visit