About this role:
Pickle is on the hunt for a dynamic and driven Software Engineer for our Firmware team to help us revolutionize the future of warehouse automation. This role will focus on being the bridge between the physical I/O of the system and the high level application. You will need to be comfortable with configuring and programming devices such as PLC's and motor controllers, as well as making changes to a large object oriented application written in Python.
Your contributions will directly impact the efficiency and reliability of Pickle’s revolutionary material-handling robots. A strong understanding of both complex low-level software design principles and SOLID object oriented principles will be critical to success in this role.
What You'll Accomplish:
- Characterize the performance of peripheral interfaces and design and implement improvements.
- Discover how to use new peripherals and extend the functions of existing peripherals in our robotic system.
- This often requires designing complex configuration files or implementing programs in the vendor's peculiar language.
- Collaborate with hardware and software teams to design beautiful APIs between peripherals and Pickle's object oriented, distributed platform using Python.
- Develop Python scripts for automation, testing, and data collection.
- Contribute to the improvement of development processes and participate in thorough design and code reviews.
Who You Are :
- 5+ years of professional experience in software development with demonstrated excellence in processing the physical inputs and outputs of systems.
- Proficient in Python, object-oriented programming, and github.
- Experience using an oscilloscope to debug input and output problems.
- Ability to read the manual of a complex peripheral (a rangefinder, a motor controller, a robotic arm, ...) then collaborate effectively with the vendor's support engineer to push it to the very edge of its capabilities.
- Excellent verbal and written communication skills, with the ability to collaborate effectively across teams.
- Detail-oriented, problem-solver, and a passion for robotics and innovation.
- You'll need to be on-site enough to make efficient use of the hardware. Expect at least 3 days per week at our offices in Cambridge and Charlestown Massachusetts.
- A Bachelor or Master degree in Computer Science or Electrical Engineering, or equivalent practical experience.