Sr Software Engineer, Platform
Welcome to the intersection of energy and home services. At NRG, we’re driven by our passion to create a smarter, cleaner and more connected future.
Vivint Smart Home, an NRG owned company, is a leading smart home company in the United States, dedicated to redefining the home experience with intelligent products and services. We find purpose in proactively protecting and keeping our customers connected to home, no matter where they are. Join the Smart Home team to create smarter, safer and more sustainable homes.
Primary Responsibilities
Work in a highly autonomous and collaborative environment
Work closely with the other teams like mobile apps and embedded devices that integrate with the platform/backend
Research and evaluate new technologies and tools
Participate in re-occurring "Innovation Days" and work on innovative projects of your choice
Work on cool stuff that you get to use in your own home
Create systems to handle high volume data from sensors, cameras, and user actions
API design and implementation
Preferred Skills, Experience & Education
Bachelor’s or Master’s degree in Computer Science or a related field. A solid understanding of core computer science principles—including algorithms, complexity, and data structures—is essential.
Demonstrated experience in designing, building, and maintaining reliable, large-scale backend systems and microServicess. Experience with high-reliability and large-scale applications, such as mobile backends or similar systems, is highly desirable.
Proficiency in at least one core programming language (preferably Golang or Python), with openness to learning new languages and technologies.
Practical experience with a range of tools and technologies, including:
Languages & Frameworks: Golang, Python
Databases & Queues: MongoDB, RabbitMQ, Redis, Kafka
Networking & Cloud: Networking, AWS, Docker, MicroServicess
Security & Protocols: OAuth2, data privacy, security best practices
Infrastructure: Datacenter monitoring, PaaS, SaaS environments
Familiarity with GRPC is a plus.
Experience Creating and maintaining backend Servicess and learning how to design for horizontal scaling
Experience Working with job queues, concurrency, caching, persistence, and writing performant code
High level of communication skills. Ability to exchange ideas about complex subjects efficiently
Ability to adapt, change, and learn as needed
A few years work experience in a similar work environment using the technologies and patterns listed above
We recognize not everyone will meet all these criteria but encourage you to apply anyway if you meet some of them and are interested in the role.The ability to learn on the job is more important than having every single item in the tech stack listed above.