Software Engineer, Python, C++ Developer
Job in
Seattle, King County, Washington, 98191, USA
Listed on 2026-10-12
Listing for:
University of Washington
Part Time
position Listed on 2026-10-12
Job specializations:
-
Software Development
Software Engineer, Python, C++ Developer, Embedded Software Engineer
Job Description & How to Apply Below
Reporting to the Ocean Engineering Department Head, the Software Engineer will be an integral member of the Ocean Engineering Department that supports Principal Investigators (PIs) with the design, build, and deployment of embedded software systems supporting oceanographic, acoustic, marine renewable energy, autonomous vehicle, and marine robotics research. The OED is a diverse team of software, electrical, and mechanical engineers that specializes in developing novel systems to meet the rigorous demands of the globe’s harshest environments in which our equipment is deployed.
The incumbent will work on all phases of software application development from requirements gathering through final release and life cycle maintenance for major software components and small projects. The incumbent will simultaneously work on multiple projects with different timelines, often providing novel solutions to complex problems. This position will work closely with the PI, but must also operate independently and with other software, electrical, and mechanical engineers.
The person hired must anticipate and identify potential technical issues and produce innovative solutions, and be able to work with the PI to develop requirements, schedule work, and address emergent needs.
Key Responsibilities:
The incumbent must have experience developing embedded applications using C, C++, Python, or related programming languages. The candidate will be responsible for updating the existing code base as well as designing, coding, testing, and deploying new applications. They will participate in design reviews, code reviews, and testing to ensure the quality of code, and will be responsible for identifying gaps in requirements and clarifying them with the PI.
The candidate must anticipate and identify potential technical issues and produce innovative solutions, be able to work both independently and tightly coupled with the team, and must have good problem-solving techniques.
The incumbent must be able to work both independently and tightly coupled with the team and must have good problem-solving techniques and a deep understanding of C, C++, Python, or a related programming language. The candidate should be well-versed in software development and testing tools (e.g., Subversion, Github) for version control, bug tracking tools, performance and system monitoring tools, debugging tools, and strategies.
The person hired will be expected to be disciplined in using the project-defined coding conventions and interface documentation techniques.
The incumbent will work closely with the PI to help design, plan, and track the progress of the applications developed to make sure it meets the desired goals. The candidate will be responsible for fully testing their own code and the team’s code before checking it into the repository, as well as coordinating full system regression testing with the test lead to ensure their code is functioning properly.
The candidate should be well-versed in software development and testing tools (e.g., Subversion, Gitlab) for version control, bug tracking tools, performance and system monitoring tools, debugging tools, and strategies. The candidate will work with the PI to ensure acceptance of the application.
Software Architecture Design & Development (60% FTE):
-Works as an integral member of the engineering team to design, code, and implement software for new instruments and new functionality within the existing code base for existing instruments.
- Creates new embedded systems as needed. Serves as a technical expert in the testing and evaluation of the software architecture, capabilities, and requirements of existing and emerging systems.
- Helps establish technical direction, standards, and maintain appropriate mechanisms to monitor/control all aspects of the software and systems development lifecycle.
- Provides systems architecture, development, programming, and consultation for embedded systems and real-time systems.
-Collaborates with other department engineers to advance the department’s shared software engineering infrastructure.
Reporting and Documentation (10% FTE):
- Participates in and presents system design information at program design reviews.
- Reports development progress to the PI on a weekly basis.
- Creates formal interface documentation and…
To View & Apply for jobs on this site that accept applications from your location or country, tap the button below to make a Search.
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
(If this job is in fact in your jurisdiction, then you may be using a Proxy or VPN to access this site, and to progress further, you should change your connectivity to another mobile device or PC).
Search for further Jobs Here:
×