Home Assistant Python Developer for HardwareVerified as a real position
- Posted
- Employment type
- Full-time
Who we’re looking for
- Strong Python development experience, including async/await, testing frameworks, type annotations, and scalable software architecture patterns.
- Required: meaningful experience contributing to large open-source projects, including public pull requests, code review, and asynchronous collaboration workflows. This experience is important because the role requires collaborating within large shared codebases and public contribution workflows.
- Experience building integrations, APIs, automation systems, device communication layers, or software for connected devices.
- Comfortable working across software and hardware boundaries, including understanding device protocols and hardware interaction concepts (deep hardware expertise is not required — that is handled by other team members).
- Familiarity with local device and communication protocols such as Bluetooth, Zigbee, USB, UART, mDNS, SPI, I2C, MQTT, or similar technologies.
- Ability to quickly understand unfamiliar systems and navigate large, complex codebases — plus a knack for discovery: working out how complex systems fit together and creating new solutions for greenfield problems.
- Strong debugging and troubleshooting mindset across integrations and distributed systems.
- Familiarity with Home Assistant, ESPHome, integrations, config flows, entity models, or related Open Home ecosystem projects is a strong plus.
- High autonomy and ownership mindset — able to independently drive integrations from concept through long-term maintenance.
- Comfortable collaborating across distributed teams, cultures, and time zones in a highly asynchronous environment.
- Open to feedback — able to take on review comments and adapt, rather than holding rigidly to an approach.
- Community-oriented mindset — comfortable contributing publicly and collaborating with external contributors in open-source environments.
- Strong written communication skills and ability to explain technical concepts clearly.
- Quality-focused while remaining pragmatic and delivery-oriented.
What you’ll do
- Own integrations and software support for Nabu Casa products across Home Assistant, ESPHome, and related Open Home Foundation ecosystems throughout the full product lifecycle
- Build and maintain Python integrations, proxy libraries, and software components that connect Nabu Casa products to the Home Assistant and ESPHome ecosystems — expanding these components is a primary focus initially
- Write and maintain Python software that interfaces with device protocols and hardware peripherals, translating low-level behaviour into clean Home Assistant entities and user experiences
- Collaborate closely with the Embedded Linux OS Engineer and Hardware team to understand hardware capabilities and translate them into well-structured software integrations
- Contribute to Home Assistant core, ESPHome, and related projects where needed to support integrations, config flows, entity models, and platform functionality
- Own code quality within your areas by writing well-tested, maintainable, and well-documented Python code
- Review community pull requests and issues related to owned integrations, providing clear and constructive feedback that helps move contributions forward
- Investigate and resolve software and integration issues including protocol edge cases, compatibility problems, regression bugs, and device communication failures
- Maintain healthy unit, integration, and hardware-in-the-loop test coverage where applicable
About the position
About Nabu Casa Nabu Casa is the organisation behind Home Assistant , the world's largest free and open-source smart home platform used by over two million households. We were founded to ensure the project's sustainability, and in 2024, we partnered with the Open Home Foundation to protect and promote a wide range of open-source initiatives. Our guiding principles—privacy, choice, and sustainability—are embedded in everything we do, from our architecture to our community. We are a profitable company with no external investors. Our funding comes directly from users who subscribe to Home Assistant Cloud and purchase Home Assistant hardware, ensuring our only stakeholders are our employees and our users. We also support other open-source projects, including those focused on hardware, standards, and voice technology.
Benefits
- Nabu Casa is a fully remote organization that uses Remote to employ people from all over the world. You will be a normal salaried employee in your country.
- This is a full-time position for 40 hours per week. Because we are a fully remote company, there is no fixed schedule. For the purpose of team communication, we do try to ensure at least 3 hours of overlap in the workday. You will report to our Engineering Manager.
- Five weeks (twenty-five days) of paid time off.
- Fourteen days of paid sick leave if your country/laws treat them as unpaid.
- Six weeks of paid and six weeks of unpaid parental leave to be used in the first year after birth.
- A budget for your work hardware once you start. After three years, you may keep this equipment for personal use.
- An annual smart home budget to ensure you keep up-to-date with the latest smart homes offer.
- An annual education budget to help you grow and stay on top of your game.
- A yearly performance bonus based on company performance.
- A 50% contribution to your internet connection fee at your home workspace.
- One day every two weeks to work on your personal projects.
- If you are currently working on Home Assistant-related side projects, you can spend work time maintaining them.
- When first offering a position to a new member, Nabu Casa aims to provide a total compensation package that matches the 75th percentile for the new hire's role, seniority, and local market rates.