Robotics Software Engineer @ Makai Ocean Engineering

Job Description
Makai’s Subsea Technology Group is looking for a Robotics and Software Engineer with strong analytical skills and domain knowledge in robotics, autonomous systems, physics, software, and engineering.

Candidates must possess experience in robotics and real-time software development, with particular expertise in implementing ROS2 frameworks for the monitoring and control of autonomous systems. Proficiency in software engineering practices, including the design and implementation of continuous integration pipelines to enable automated testing of algorithms and software products, is required. The selected candidate will serve as a key contributor within a multidisciplinary engineering team dedicated to developing innovative solutions for both commercial and Department of Defense (DoD) applications.

The successful candidate will work in a fast-paced, collaborative, multi-disciplinary engineering and test environment with real-time software and autonomous systems. Projects will include the development and testing of hardware drivers, control software, and data processing/visualization for autonomous subsea robotics systems, as well as defining and implementing continuous integration processes for testing software and algorithms using playback and/or synthetically generated data.

The ideal candidate should have a strong interest in robotic systems, hardware integration, and data analysis; demonstrated software, firmware, and algorithm experience; and be energized by working on challenging, cross-disciplinary problems, and learning new skills.

This is a permanent, full-time, in-person position in Waimanalo, Hawaii.

Responsibilities:

  • Work closely with multidisciplinary teams of systems, mechanical, electrical, software, and ocean engineers to design and deliver innovative and reliable ocean robotics and sensor systems.
  • Design, modify, debug, and test real-time control system software using C, C++, Python, FORTRAN and other programming languages targeting Linux and Windows operating systems, as well as embedded operating systems.
  • Interface hardware and software systems with in-house, 3rd party, and Government systems.
  • Develop and document software APIs and user interfaces;
  • Review technical datasheets and specifications for sensors, actuators, and microcontrollers to develop, implement, and validate software drivers that interface with these components. Utilize data processing software programs and write custom scripts to analyze software and algorithm performance against objectives, identify issues, generate insights, and produce plots and other graphical outputs to communicate findings to stakeholders both internal and external to Makai.
  • Maintain clear, well-documented code and contribute to version-controlled software repositories (e.g., Git/GitLab).
  • Adhere to software engineering best practices, including code reviews, static analysis, and compliance with coding standards.
  • Develop and utilize simulation environments to test and validate robotic and control system performance prior to deployment.
  • Support the specification of test plans and setup and maintain continuous integration processes to automate the building and testing of software products.
  • Periodically support offsite testing of robotic systems in both laboratory and off-shore settings.
  • Organize reports and give presentations to communicate results internally to team members and externally to customers.

Qualifications:

Minimum applicant requirements include:

  • Possession of a graduate degree (M.S. or higher) in a STEM related discipline (Physics, Computer Science, Electrical Engineering, Software Engineering, Computer Engineering, or similar) with 2+ years of relevant experienced, or possession of a Bachelor’s degree (B.S.) in the above and 5+ years of experience.
  • Strong proficiency using Python and data analysis libraries.
  • Strong proficiency using C/C++. Additional proficiency in FORTRAN and CI/CD tools such as Jenkins or GitLab is a big plus.
  • Experience with the Robot Operating System (ROS/ROS2) framework.
  • Proficiency working in Linux-based development environments.
  • Ability to work with existing and legacy codebases, including maintaining, debugging, and modifying code as needed to support evolving project requirements.
  • High degree of intellectual curiosity, willingness to learn new technical skills and flexibility to support innovative projects that may be initially “out of your comfort zone”.
  • Organized approach to developing and executing test processes for software programs.
  • Demonstrated ability to both work collaboratively within a multidisciplinary team as well as independently.
  • Strong written and verbal communication skills including writing reports and presenting to internal and external stakeholders.
  • Are willing and able to travel periodically (~4-6 weeks per year) to attend meetings or conduct tests and at facilities on the mainland USA or on vessels in port or at-sea.
  • Either already live on Oahu or be willing to relocate to Oahu to work in-person at Makai’s offices in Waimanalo, HI.
  • Possession of U.S. citizenship is required.
  • Either already possess or are able to obtain a Department of Defense security clearance. Applicants with clearances that are active or were previously held and currently in good standing are preferred.

Additional desirable qualifications include:

  • Most of Makai’s work is in the ocean or is marine related. Therefore, ocean experience or background (commercially and/or recreationally) is desirable.
  • Experience simulating robotic systems with Gazebo, Nvidia Isaac or similar is a plus.
  • Demonstrated experience with the Agile Software Development process.
  • Strong understanding of feedback control systems;
  • Experience with analog, digital, and serial electronic sensor selection and integration;
  • Proficiency in reading and creating electrical schematics and wiring diagrams, and performing testing and troubleshooting of electrical systems.
  • Familiarity with embedded systems, microcontrollers, and interface protocols (SPI, I2C, UART, CAN, etc.).
  • Experience selecting, integrating and testing electrical, pneumatic and/or hydraulic actuators.
  • Previous experience working in a dynamic, fast-paced environment.
  • You enjoy being in, on, or near the ocean.

Candidates with many of the above qualifications will be most highly considered.

Makai provides engineers and scientists with interesting and challenging projects, a competitive salary, full health and dental coverage, company matching retirement plans, excellent comp time and vacation policies, a dynamic and innovative company culture, and a beautiful and unique work atmosphere. Watch a video of Makai’s Oahu offices here: https://youtu.be/-pj_LkZEK-4

Makai participates in the Department of Homeland Security “E-Verify” Employment Eligibility Verification system for all new employees. All qualified applicants will receive consideration for employment without regard to race, color, religion, sex, sexual orientation, gender identity, or national origin.

To apply for this position, please email the following to [hiring@makai.com]:

    1. Please place the job title “Robotics Software Engineer” in the email subject line.
  1. Comprehensive Resume including your overall GPA in graduate and undergraduate studies, year(s) of graduation, current location, prior or current work experience and U.S. citizenship status.
  2. A cover letter highlighting how your education, experience and training relevant to this position and why you want to work for Makai Ocean Engineering.

I love working at Makai! And we have some fun upcoming projects using nav2 in the underwater space- feel free to reach out to me with questions about the job!