Software Engineer - Robotics
About the Company
Plant level knowledge is vital to satisfying the food production needs from projected a forty percent increase in world population over the next thirty years. We support that goal by continuously and automatically assessing the health and performance of the world’s +$1T specialty crops, one plant at a time, with deep learning and imaging. Currently, Bloomfield is focused on wine, table, and juice grapes as well as, more recently, blueberries. Our portable Flash cameras and supporting platform capture, geo-locate and share the condition of each vine, tree and bush, along with the various features of that plant. This information, in turn, informs a variety of decisions and actions that growers take every day to increase the size, quality and consistency of yields and doing so without increasing the resources used to produce those yields.
About the Role
We seek a Software Engineer to help further the performance and capabilities of Bloomfield’s FLASH camera and other edge-deployed products. You will help build robust cyber-physical systems that enable data collection in the field, which is the foundation of all Bloomfield's systems. As a critical member of the software team, you will have an essential role in defining the quality of our software while accelerating its development
Responsibilities:
- Build, deploy, and maintain new features on the Flash camera system.
- Collaborate with the Flash hardware team to integrate new Flash functionality.
- Debug and troubleshoot Flash failures in complex scenarios.
- Build, deploy, and maintain the Bloomfield products, which provide the foundation for other downstream data products within Bloomfield.
- Enhance the performance of existing software components, including image processing, stereo vision, and GNSS systems.
- Support quality through test automation and developing simulation and test tooling.
- Willingness to be hands-on with hardware debugging and perform field testing.
Qualifications:
- BS, MS, or higher degree in Computer Science, Robotics, Engineering or a related experience.
- Proficiency in Python and experience in a low-level systems language like C, C++, Rust, or Zig.
- Experience with ROS/ROS2 or other robotics middleware platforms.
- Experience with Linux and/or embedded Linux systems.
- Experience building and working within cyber-physical systems like robotics, IoT, autonomous vehicles, sensor networks, or aviation systems.
- Deep understanding and practical experience with software engineering principles, including algorithms, data structures, and system design.
- Familiarity with machine learning integration and deployment.
Nice to Have Experience:
- Experience with AWS or other cloud environments.
- Familiarity with embedded systems and standard communication protocols like SPI, I2C, CSI-2, or CANbus.
- Familiarity with common test and measurement tools like an oscilloscope or logic analyzer.
What We Offer
In addition to the opportunity to apply and develop your skills toward key business objectives, we offer an excellent compensation package including:
- Competitive base salary
- Medical, dental and vision insurance
- 401(k) retirement plan with company match
- Unlimited PTO
- Parental Leave
- Training & Development Stipend
Bloomfield is an equal opportunity employer. We consider qualified applicants without regard to race, color, religion, sex, national origin, sexual orientation, disability, gender identity, protected veteran status, or other protected classes.