Logo
SG2 Recruiting

Embedded Software Developer

SG2 Recruiting, Washington, District of Columbia, us, 20022

Save Job

SG2 Recruiting seeks a cleared Embedded Software Developer who will be responsible for supporting the Naval Center for Space Technology (NCST) contract. The NCST is located at the U.S. Naval Research Laboratory (NRL) in Washington, DC, and is the leading laboratory for Navy space programs. NCST's mission is to "preserve and enhance a strong space technology base and provide expert capabilities in the development and acquisition of space systems which support Naval missions."

For the last 25 years, the NCST has developed, enhanced, and maintained a collection of software used for design, development, test, launch, and mission operations of DoD space assets. This software is constantly being enhanced to provide state-of-the-art solutions to space applications. The core suite of software components is used in all aspects of the spacecraft or component life-cycle.

What You Will Be Doing:

Developing, maintaining, and enhancing complex and diverse software systems based upon documented requirements. Providing specific input to the software components of a system design to include hardware/software trade-offs, software reuse, use of COTS/GOTS in place of new development, and requirements analysis and synthesis from system level to individual software components. Designing, implementing, and integrating software applications or performing software engineering tasks. Utilizing software engineering and design methodologies appropriate to the development, integration, and production environment. Ensuring efficient delivery of software engineering capabilities using industry standards and repeatable processes. Mitigating risks, controlling costs and schedule variance, and effectively managing large-scale, integrated software projects. Reviewing and testing software components for adherence to the design requirements and documenting test results. Performing comprehensive testing on computer hardware and software components to evaluate operational and performance compliance of the overall systems. Developing under the real-time constraints of deadlines, task schedules, rates, task priorities, watchdog timers, interrupts, latency, and jitter of soft and hard real-time operating systems. Managing and mitigating interprocess communications leveraging message queues, mutexes, semaphores, blocking and non-blocking operations in multi-threaded software implementations. Designing and developing distributed software systems leveraging multiple software, hardware, and communication technologies. Utilizing standard communications ports and interfaces to facilitate communication between processes, processors, computers, and peripheral systems. Developing hardware and application-specific boot code for establishing baseline services and loading OS and application code into execution memory. Assessing and making recommendations on processor, memory, and single board computer configurations which meet the compatibility, performance, memory, and interface requirements of the system. Applying expertise required to utilize the existing tools adequately sets that include MySQL, NoSQL databases, Lint, Wind River tools, Clang Analyze, Klocwork code analysis tools, JAMA and Atlassian tracking tools, Windows and Linux Operating systems, GNU GCC, LLVM/Clang, C, C++03 and earlier, C++11 and greater (modern C++), Java, Python, CMake, Makefile, shell scripting, GDB, LLDB, PPC/Arm/x86 Assembly compilers and programming languages and Matlab/Simulink, Unreal Engine modeling and simulation tools What You Will Need (Requirements):

Active Top Secret/ SCI Eligible Minimum B.Sc., Aerospace, Mechanical or Electrical Engineering, Physics, Computer Science or Mathematics Experience with embedded software integration, test, and operations. Experience serving as a lead embedded software designer or architect and overseeing all technical aspects of development. Experience as an embedded software builder and product manager. Experience serving as an embedded software technical expert with Field Programmable Gate Array (FPGA) Interfacing Ability to commute daily to the Naval Research Lab location in Washington, DC