Particle is the only end-to-end IoT platform that combines software, hardware, and connectivity as an integrated solution that ensures their customers’ IoT products are reliable, scalable, and secure. Particle works with thousands of companies ranging from traditional manufacturers to fast-growing startups including Jacuzzi, Continental Tires, Watsco, Shifted Energy, Anderson EV, and Opti. As a venture-backed company, Particle is supported by world-class investors and boasts the largest developer community in the IoT industry, with nearly 200,000 developers and engineers in more than 170 countries. We value diversity in our developer community, business, and organization, and commit to a continued effort in making an inclusive and equitable environment for all.
Investment in our people is critical to who we are as a company. We support and empower each other through curiosity, trust, and joy. From extensive onboarding to 360 feedback, and a professional development stipend, you’ll have the tools to navigate your own success from the start. From there, you’ll work with your manager to create your own growth path and get the coaching needed to achieve it. We are headquartered in San Francisco and have offices in Shenzhen, Dongguan, Minneapolis, Boston, and remote hubs across the globe. In order to provide a safe environment, US employees will work from home through July 2021. We provide:
Competitive medical, dental, vision, disability, and life insurance
Flexible and open vacation policy
Work from home stipend
Generous parental leave policy
A robust wellness program with individual, personalized coaching
Particle is expanding the Device Connectivity team and hiring a Senior Embedded Systems Engineer! You will help build software and firmware for the next generation of Particle devices as well as maintain and enhance firmware we provide for our existing devices.
Develop next-generation embedded systems software.
Develop new features in our embedded Device OS software, as well as refactor the existing code base to assist with customer issues.
Continually develop news ways to test our embedded code to ensure it’s robust before being shipped to customers.
Migrate our code base to new MCU families and supplement our HAL portability layer
Help with troubleshooting and root cause analysis of issues that may appear anywhere in the stack between our embedded systems code, our cloud services, or customer applications.
Ensure the performance, reliability and security of our embedded platform.
Help improve our platform development tools from the particle CLI to Workbench
Foster trust with our customers and peers by planning our work, working to the plan, providing visibility on progress, and delivering on promises
Always incorporate risk-based security analysis into design and implementation
Design the future of the Particle devices.
Develop new device drivers, HAL updates, and communication libraries for supporting new multiprocessor embedded devices.
Collaborate with the Product team and lead engineers to provide users with a great experience at all stages of their journey building cellular IoT applications on existing and forthcoming devices.
Work daily with a global team.
Work with a global team of cloud engineers, embedded engineers and product managers.
Extensive experience developing embedded software for microcontroller architectures such as ARM Cortex-M4, Cortex-M3, Cortex-M7, Cortex-A7 devices
Extensive experience developing embedded systems with C99/C11/C17, C++14 or similar
Experience writing device drivers in an embedded environment
Experience building embedded applications both in an RTOS context or in a bare metal context with no scheduler
Experience writing or maintaining bootloaders
Familiarity with power management of battery-powered devices
Extensive experience debugging and troubleshooting using JTAG, SWD, openocd, jlink or similar
Outstanding written and verbal communication skills
Experience in test-driven development & knowledge of continuous integration and continuous deployment
Experience with other systems programming languages such as Rust and operating systems such as Linux
Chain-of-trust experience with secure-boot and application security