Robotics Embedded Software Engineer
Company: Woods Hole Oceanographic Institution
Location: Woods Hole
Posted on: March 13, 2023
Job Description:
Job SummaryWoods Hole Oceanographic Institution (WHOI) is
searching for a highly motivated and enthusiastic -Embedded
Software Engineer -to join the -Scibotics Lab -within the Applied
Ocean Physics & Engineering Department (AOPE). This is a regular
full-time, exempt position, and is eligible for full benefits. -The
Scibotics Lab at WHOI develops autonomous underwater vehicles
(AUVs) and new capabilities with innovations in hardware and
software that help scientists and society better understand the
ocean. We invented the SharkCam, an AUV that locates, tracks, and
films marine animals like the North Atlantic white shark. -Our team
strives to develop non-proprietary software that is accessible to
the wider scientific community. Although our focus is on AUVs and
their applications, our team works with ROVs, UAVs, biologger tags
and novel sensor development such as the -midwater oil sampler. -
-In the spring of 2023, we are opening a brand new, cutting edge
robotics lab in WHOI's newest building: The David Center for Ocean
Innovation. -Our team has access to cutting-edge maker space
equipment, large test tanks, advanced machining, and collaborative
collision spaces just to name a few. - -We are seeking a -highly
motivated -software engineer to join our team and help us develop
embedded software for a series of ambitious projects: protecting
the arctic from environmental damage with an AUV capable of
detecting and mapping out oil spills under ice; marine megafauna
following algorithms in the deep sea; benthic habitat surveys in
rough terrain; obstacle avoidance in and around wind turbines; and
much more. -The ideal candidate will both contribute to existing
ideas and technologies as well as bring their own creative ideas to
our lab. - -You will help the team by: -
- Developing ROS nodes to interface with various instruments such
as sonars, navigation systems, and depth sensors attached to an
embedded Linux computer
- Designing autonomous navigation, perception, and mapping
behaviors to allow the vehicle to respond to environmental stimuli
like the presence of oil droplets or obstacles
- Developing ROS-based interfaces for AUV data and control
management
- Writing and utilizing software tests, including unit tests and
functional tests using tools such as Gazebo
- Building visualization and user interface software that allows
users to interact with the data being passed through the ROS
interfaces
- Integrating the vehicle's computers with other hardware
components such as GPS sensors, power management units, custom
digital circuit boards, etc.
- Participating in at-sea expeditions as well as local field
operations and testing on large and small boats
- Operating the vehicle during field deployments and testing -We
value candidates who excel in multidisciplinary contexts; our ideal
candidate will bring both software and electrical engineering
experience, but will be prepared to step out of their comfort zone
to contribute wherever challenges arise. -A successful candidate,
with little supervision, works creatively and independently to
establish objectives, meet deadlines, and complete difficult
engineering assignments by demonstrating full competency in one or
more engineering areas; assists substantively in planning technical
aspects of new developments, as well as design, testing, and use of
major system components. The candidate must have excellent verbal
and written communication skills. -We are looking for a team player
who values open and frequent communication.The ideal candidate
would fit many (but not necessarily all) of the following
qualifications.. -
- 3+ years of software development experience in Python and/or
C++
- Experience developing software using ROS, LCM, or a comparable
robotics middleware
- Experience working with embedded Linux systems (Raspberry Pi,
etc.)
- Working knowledge of robotics system design (navigation and
planning methods, sensing technologies, perception algorithms,
etc.)
- Familiarity with electronics: RS-232 communication,
microcontrollers, DC power distribution, acoustic transducers,
sonar, oscilloscopes, CPU BIOS configuration
- Familiarity with oceanographic sensing technology such as
sonar, ADCPs and IMU's
- Experience creating graphical user interfaces (GUIs) or data
visualization tools
- Experience with version control within a team software
development environment. -The internal working title for this
position could be either -Engineer II -or -Research Engineer. -The
final level of the position will be determined commensurate with
the selected candidate's level of education and experience.
-Essential FunctionsEngineer II:
- Conceptualizes solutions to engineering problems;
- Develops, calibrates, and tests new designs and
techniques;
- Develops computer code, microprocessor code, and uses CAD, CAE
tools;
- Troubleshoots electronic/mechanical systems;
- Participates in report writing to document developments and
tests. May single-author reports and articles;
- May supervise other personnel.
- With some supervision to achieve assigned objectives,
identifies and participates in engineering projects in support of
scientific and research activities through the demonstration of one
or more specialized skills.
- Will be expected to work on tasks requiring creativity and
independent thinking, along with a proven understanding of
fundamental research and engineering principles.Research Engineer:
- Develops major portions of electronic or mechanical systems
with supervision consisting primarily of milestone progress
reviews; frequently acts as Project Engineer on major projects
- Conducts hardware developments such as new sensor techniques,
autonomous battery-powered instrumentation, control systems for
robotic submersibles, etc.;
- Writes complex computer code for use in instrumentation, system
modeling, and electronic design
- Develops new sampling methods involving complex mechanical,
electrical, or electronic instrumentation
- Plays a significant role in report writing and proposal
preparation and may single-author results
- Interacts with scientific and technical staff colleagues to
foster research ideas, develop and hone research/experimental
skills
- May supervise one or more Engineering Assistants and/or
Engineers.
- With little supervision, works creatively and independently to
establish objectives, meet deadlines, and complete difficult
engineering assignments by demonstrating full competency in one or
more engineering areas; assists substantively in planning technical
aspects of experiments, as well as design, testing, and use of
major system components. -NON-ESSENTIAL FUNCTIONS:
- As deemed necessary by supervisorEducation &
ExperienceEngineering degree or other appropriate discipline with
minimal work experience, or evidence of an established, specialized
engineering skill gained through experience in the absence of a
formal degree. -Engineer II:
- Bachelor's or Master's degree in engineering or appropriate
field with 3-5 years of relevant experience.Research Engineer:
- Bachelor's degree in electrical engineering or computer
science/engineering with at least five to seven years of related
experience, or Ph.D. or Master's degree in electrical engineering
or computer science with several years of related
experience.Required skills for both position levels include:
- Excellent working knowledge of C and/or C++, and several other
programming languages, including one or more of: Python, Perl,
Linux/Unix shell, or Matlab/Octave.
- Experience with programming and debugging embedded
systems.Other skills that are desirable include:
- Experience working with oceanographic systems, including
autonomous underwater vehicles.
- Experience with version control within a team software
development environment.
- Experience with Linux operating system programming and
administration.
- Experience with Orcad design tools.
- Experience with data analysis, particularly related to system
troubleshooting and performance evaluation.
- Experience with field experiment planning and
participation..
- Electronic design skills, both analog and digital, including
schematic-level design, basic circuit board layout, and
troubleshooting.
- Experience working at sea.
- Capable of getting a US Security Clearance
- Exceptional written and verbal communication skillsSpecial
RequirementsAll candidates that apply MUST:
- Have a US driver's license
- Qualify to get a TWIC
- Participate in field work at sea. Field operations durations
are variable but often not in excess of 2 weeks per deployment.
Travel requirements are 2-8 weeks per year.WHOI has a mandatory
COVID-19 vaccination policy in effect, where you must register your
full vaccination status (vaccination plus booster) in order to
begin employment. The registration process is confidential and
entails submitting your official vaccination records or requesting
to engage in the interactive exemption process for either a medical
or religious reason.Sea Dutyplease see posting for details -
WHOI is an Affirmative Action/Equal Opportunity
Employer/Disabled/Veterans/M/F. We encourage Veterans and those
with Disabilities to apply. Applications are reviewed
confidentially. Applicants that require accommodation in the job
application process are encouraged to contact us at (508) 289-2253
or email -eeo@whoi.edu -for assistance. -To apply, please submit a
cover letter, r--sum-- or CV, and a brief project portfolio
showcasing at least one project relevant to robotics to:
-scibotics@whoi.eduApply for this job onlineEmail this job to a
friend
Keywords: Woods Hole Oceanographic Institution, New Bedford , Robotics Embedded Software Engineer, IT / Software / Systems , Woods Hole, Massachusetts
Didn't find what you're looking for? Search again!
Loading more jobs...