On behalf of Agrology, we are looking for a Senior Firmware Engineer that will assume ownership of embedded firmware development and lifecycle management for Agrology’s suite of environmental monitoring and sensing devices.
Agrology leverages a suite of sensors, artificial intelligence, and machine learning capabilities to optimize high-value crop management and minimize climate risk. Their software and hardware-as-a-service model collects data and provides predictive insights that empower growers to be proactive in resisting and adapting to climate-related threats such as fire, extreme weather, pests, disease, and drought.
About the Role
This role is ideal for a mid-career to senior level Firmware Engineer who has comprehensive experience developing MCU firmware. Your role will encompass the following key areas:
Full ownership and life cycle management of embedded MCU code from development to test and release
Close collaboration with the engineering team to implement new features and integrate new sensor technologies
Writing comprehensive, secure, and efficient MCU code for multiple IoT devices
Updating existing code base for FUOTA and porting development environment
Testing and evaluating MEMS sensor solutions via development kits and evaluation boards
Assisting Hardware Engineering with PCBA bring-up, system debugging and troubleshooting
Obtaining expert knowledge of LPWAN protocols and keeping abreast of updates and regional parameter changes
Developing software/firmware workflows, development processes, and best practices
Knowledge, Skills, & Experience
Required competencies:
BS/MS in Computer Science, Computer Engineering, Electrical Engineering, or related STEM field
5+ years demonstrated embedded firmware development for 32-64bit ARM Cortex MCUs
Extensive experience with C/C++ for bare metal or RTOS implementations
Previous experience developing and implementing board level communication drivers such as I2C, UART, SPI, and SDI-12
Experience with GCC, in-circuit debuggers/emulators, and embedded IDEs (IAR, Kiel, etc.)
Familiarity with common hardware development platforms (RPi, Arduino, Particle, Espressif)
Experience with GitHub automation, version control, and bug tracking tools
Technical writing skills and experience authoring formal engineering documentation