Software Engineer II
Omnidian • CRAbout Omnidian
Omnidian, Inc. is a fast-growing Series C tech-enabled service company revolutionizing performance assurance for the distributed solar and energy storage industries. Omnidian is building a more sustainable future for the planet through our passionate teams, our innovative technology, and by creating an amazing customer experience.
We formed in the US in 2016 and added our Australia team in 2022. In 2025, Omnidian acquired Solar Service Guys, Australia’s largest dedicated solar service network.
Our vision is to become a global IoT leader, and we are hiring talented and passionate individuals around the world, including a possible talent hub in Costa Rica. If you're interested in delivering cutting-edge support and unmatched customer experience to solar investors across the globe, come apply to chat with us.
The Job
At the heart of Omnidian is a residential or commercial asset with a solar installation. You'll work on a distributed team responsible for the full lifecycle of that asset from initial onboarding through daily monitoring and management.
As a Software Engineer II, you are a trusted resource for the team, capable of designing and implementing medium-to-large features that drive our platform forward. Reporting to the Senior Manager of Software Engineering, you will have a specific focus on the Asset Management Lifecycle domain. You will work across the stack to ensure our systems for tracking and managing solar assets are reliable, scalable, and intuitive, while proactively supporting your teammates and enforcing high engineering standards.
What You'll Do
At Omnidian we believe in trust and autonomy. Here is an outline of some of the things you’ll be doing:
Technical Design & Execution (60%)
Design & Implement: Independently design and implement medium-to-large features within the Asset Management Lifecycle domain, ensuring they are built for scale and performance.
Reduce Tech Debt: Actively look for opportunities to refactor and improve existing codebases, reducing technical debt as you deliver new functionality.
Full-Stack Delivery: Build, test, and deploy scalable solutions using Java/Kotlin (Backend) and React/TypeScript (Frontend).
System Enhancement: Successfully push features and bug fixes that extend the capabilities of our IoT and asset management services.
Process & Quality Enforcement (30%)
Process Champion: Enforce team processes (sprint ceremonies, documentation, CI/CD), ensuring the team understands the benefits and trade-offs of our workflow.
Code Excellence: Lead by example in code reviews, unit testing, and instrumentation to ensure the reliability and security of our systems.
Collaboration: Partner with Product and UX to refine requirements for the Asset Management domain, ensuring our software directly solves user needs.
Team Support & Growth (10%)
Proactive Support: Proactively support other team members to help them be successful, acting as a "go-to" resource for services and tools you own.
Continuous Learning: Quickly adopt new technologies and tools defined by the team and share that knowledge to elevate the collective technical bar.