Software Engineer - 26-035
About the role
AUSGAR Technologies has an exciting NEW opportunity for a Software Engineer to join our team of smart and innovative technical team members in the Point Loma area of San Diego. Candidate will join a fast-paced engineering group rapid-prototyping a variety of ocean systems. Collaborate across our medium-sized team holding complete technical responsibility for custom development and prototyping across many technical disciplines. Team prototyping efforts span from real-world problem-solving, all the way through concept development, followed by iterative design and testing and conclude with product demonstrations. Ideal candidates will bring deep experience in firmware and software design and design processes.
Key Responsibilities
- Collaborate with team to identify embedded firmware and software requirements and evaluate candidate design approaches for solving wide-ranging technical problems.
- Architect and design maintainable, robust and performant embedded firmware and software platforms and related build and test processes.
- Implement, test, integrate and verify firmware and software implementations satisfy project requirements for functionality, reliability and usability and meet team standards and expectations.
- Develop and maintain documentation including engineering documentation, interface control documents (ICD) and software requirements specifications (SRS).
- Communicate regularly across the engineering group to coordinate development efforts, anticipate design changes, prioritize feature implementations, bug fixes, and solicit team feedback.
Required Qualifications
- Possess active Secret security clearance (preferred) or the ability to obtain one.
- Bachelor's (or higher) degree from an accredited college/university in Computer Science, Computer Engineering, Electronics Engineering or another STEM field.
- 5+ years of experience in development and integration for one or more of the listed platforms:
- Linux application software.
- Linux kernel and OS (Yocto, Buildroot) embedded microprocessor firmware and software.
- NVIDIA Jetson embedded firmware and software.
- RTOS (Real-Time Operating System) or Bare-Metal embedded microcontroller firmware and software.
- Robot Operating System 2 (ROS 2) software (or DDS (Data Distribution Services)).
- Proficiency in the C programming language.
- Proficiency in software version control processes (Subversion, Git, etc.).
- Proficiency in Linux command line tools (grep, etc.) and with Linux shell scripting (Bash, etc.).
- Working knowledge of common embedded communications protocols (SPI (Service Provider Interface), RS-232, Ethernet, etc.).
- Working knowledge of software development processes (static analysis, build automation, etc.).
- Experience testing firmware/software and debugging complex purpose-built embedded electro-mechanical systems.
- Familiarity with embedded electronics test equipment (power supplies, oscilloscopes, debuggers).
- Ability to understand complex technical documents and communicate ideas orally and visually.
Preferred Qualifications
- 5+ years of experience in development for one or more of the listed applications:
- OpenCV (or similar) computer vision algorithms.
- Digital Signal Processing (DSP), digital filtering or other mathematical algorithms.
- Robotics control system modeling and simulation.
- Proficiency in embedded development IDEs (Integrated Development Environment) and tools (Microchip MPLAB, GCC (GNU Compiler Collection), GNU (GNUs Not Unix) Make, etc.).
- Proficiency in data processing with (MATLAB, Python, etc.).
- Experience in test automation.
- Experience with Graphical User Interfaces (GUIs).
Pay
Salary Range: $150K-$165K. Based on your qualifications, you will be placed in Level I-V. AUSGAR's salary range is dependent upon a variety of factors, which include experience, skills, education, certifications and geographical location. Our salary range includes a base salary and excellent benefits package as part of our total compensation.