We are seeking a talented and motivated software engineer who has a passion for robotics, software and designing solutions to customer problems. This role will contribute directly to customer projects and product goals at various levels of the software stack including participating in the design and implementation of application code, embedded software, middleware, and user interfaces. You will be involved in every step of the development life cycle, with shared responsibility for continuous improvement.
As a member of the Milo team, you will have ownership of design and implementation of software components for our novel microlocation product, but additionally, you will work directly with customers to build functional solutions to robotics problems around Humatics microlocation technology. This position is based at Humatics headquarters in Waltham, MA, and requires occasional travel (15%-30%).
Responsibilities
- You will design, develop, document, test, debug, and maintain software in C/C++ and Python
- You will interact directly with customers and be responsible for deliverables in customer projects
- You will participate in peer design reviews of your work and participate in product and software design reviews
- You will collaborate with software colleagues to derive requirements and then work as part of a team to design and implement the associated software to meet them
Qualifications
- In-depth knowledge of C/C++ coding principles and best practices, including a minimum 1.5 yr working with C++ in a business environment
- Experience in robotics, or navigation
- Familiarity with robotics theory & principles such as linear algebra, matrix math, euler angles, quaternions, transformations, etc.
- Intermediate knowledge of Python and Bash
- Experience working in all parts of the software stack
- Experience developing code on a team using source control and following CI/CD principles & practices
- Ability to distill technical requirements from product level goals
- Knowledge of serial comms protocols (USB/UART, SPI, I2C)
- A working understanding of LIDAR, cameras, and other sensors used for position estimation
- Excellent written and verbal communication skills
- Minimum of 5 years of experience
- BS in Electrical Engineering, Computer Engineering, Computer Science, or related field
Nice to have
- Ability to read and understand schematics, datasheets, and timing diagrams
- Experience implementing software for short range wireless communication systems
- Knowledge of Jenkins, SonarCloud, and/or Artifactory
- Experience with industrial automation communication protocols such as Ethernet/IP, Profinet, or EtherCAT
- Familiarity with Python web frameworks
- A working understanding RESTful APIs
- Basic experience with web page backend and UI design (HTTP, HTML, CSS, AngularJS, WebSockets, nginx)
Compensation
- Competitive salary
- Meaningful equity ownership in a startup company
- Medical, dental and vision benefits
- 401(k) plan
- Paid holidays and generous vacation
If you do not meet all of these qualifications, but are excited about the opportunity, please apply!
Humatics is an equal employment opportunity employer. All qualified applicants will receive consideration for employment and will not be discriminated against on the basis of race, color, sex, sexual orientation, gender identity, religion, disability, age, genetic information, veteran status, ancestry, or national or ethnic origin.